Clonar Slides de Apresentação em C++

Introdução

Clonar é o processo de fazer uma cópia exata ou réplica de algo. Aspose.Slides for C++ também permite fazer uma cópia ou clone de qualquer slide e então inserir esse slide clonado na apresentação atual ou em qualquer outra aberta. O processo de clonagem de slides cria um novo slide que pode ser modificado pelos desenvolvedores sem alterar o slide original. Existem várias maneiras possíveis de clonar um slide:

  • Clonar no final dentro de uma apresentação.
  • Clonar em outra posição dentro da apresentação.
  • Clonar no final em outra apresentação.
  • Clonar em outra posição em outra apresentação.
  • Clonar em posição específica em outra apresentação.

Em Aspose.Slides for C++, (uma coleção de ISlide objects) exposta pelo objeto Presentation fornece os métodos AddClone e InsertClone para executar os tipos de clonagem de slides acima.

Clonar um Slide no Final de uma Apresentação

Se você deseja clonar um slide e então usá‑lo dentro do mesmo arquivo de apresentação no final dos slides existentes, use o método AddClone conforme os passos listados abaixo:

  1. Crie uma instância da classe Presentation .
  2. Instancie a classe ISlideCollection referenciando a coleção Slides exposta pelo objeto Presentation .
  3. Chame o método AddClone exposto pelo objeto ISlideCollection e passe o slide a ser clonado como parâmetro para o método AddClone .
  4. Grave o arquivo de apresentação modificado.

No exemplo abaixo, clonamos um slide (situado na primeira posição – índice zero – da apresentação) para o final da apresentação.

Clonar um Slide para Outra Posição dentro de uma Apresentação

Se você deseja clonar um slide e então usá‑lo dentro do mesmo arquivo de apresentação, mas em uma posição diferente, use o método InsertClone :

  1. Crie uma instância da classe Presentation .
  2. Instancie a classe referenciando a coleção Slides exposta pelo objeto Presentation .
  3. Chame o método InsertClone exposto pelo objeto ISlideCollection e passe o slide a ser clonado junto com o índice para a nova posição como parâmetro para o método InsertClone .
  4. Grave a apresentação modificada como um arquivo PPTX.

No exemplo abaixo, clonamos um slide (situado no índice zero – posição 1 – da apresentação) para o índice 1 – Posição 2 – da apresentação.

Clonar um Slide no Final de Outra Apresentação

Se você precisar clonar um slide de uma apresentação e usá‑lo em outra apresentação, no final dos slides existentes:

  1. Crie uma instância da classe Presentation contendo a apresentação da qual o slide será clonado.
  2. Crie uma instância da classe Presentation contendo a apresentação de destino à qual o slide será adicionado.
  3. Instancie a classe ISlideCollection referenciando a coleção Slides exposta pelo objeto Presentation da apresentação de destino.
  4. Chame o método AddClone exposto pelo objeto ISlideCollection e passe o slide da apresentação de origem como parâmetro para o método AddClone .
  5. Grave o arquivo da apresentação de destino modificada.

No exemplo abaixo, clonamos um slide (do primeiro índice da apresentação de origem) para o final da apresentação de destino.

Clonar um Slide para Outra Posição em Outra Apresentação

Se você precisar clonar um slide de uma apresentação e usá‑lo em outra apresentação, em uma posição específica:

  1. Crie uma instância da classe Presentation contendo a apresentação de origem da qual o slide será clonado.
  2. Crie uma instância da classe Presentation contendo a apresentação à qual o slide será adicionado.
  3. Instancie a classe ISlideCollection referenciando a coleção Slides exposta pelo objeto Presentation da apresentação de destino.
  4. Chame o método InsertClone exposto pelo objeto ISlideCollection e passe o slide da apresentação de origem junto com a posição desejada como parâmetro para o método InsertClone .
  5. Grave o arquivo da apresentação de destino modificada.

No exemplo abaixo, clonamos um slide (do índice zero da apresentação de origem) para o índice 1 (posição 2) da apresentação de destino.

Clonar um Slide em Posição Específica em Outra Apresentação

Se você precisar clonar um slide com slide mestre de uma apresentação e usá‑lo em outra apresentação, primeiro deve clonar o slide mestre desejado da apresentação de origem para a apresentação de destino. Em seguida, use esse slide mestre para clonar o slide com mestre. O método AddClone(ISlide, IMasterSlide) espera o slide mestre da apresentação de destino, e não da apresentação de origem. Para clonar o slide com mestre, siga os passos abaixo:

  1. Crie uma instância da classe Presentation contendo a apresentação de origem da qual o slide será clonado.
  2. Crie uma instância da classe Presentation contendo a apresentação de destino para a qual o slide será clonado.
  3. Acesse o slide a ser clonado junto com o slide mestre.
  4. Instancie a classe IMasterSlideCollection referenciando a coleção Masters exposta pelo objeto Presentation da apresentação de destino.
  5. Chame o método AddClone exposto pelo objeto IMasterSlideCollection e passe o mestre do PPTX de origem a ser clonado como parâmetro para o método AddClone .
  6. Instancie a classe ISlideCollection definindo a referência para a coleção Slides exposta pelo objeto Presentation da apresentação de destino.
  7. Chame o método AddClone exposto pelo objeto ISlideCollection e passe o slide da apresentação de origem a ser clonado e o slide mestre como parâmetros para o método AddClone .
  8. Grave o arquivo da apresentação de destino modificada.

No exemplo abaixo, clonamos um slide com mestre (situado no índice zero da apresentação de origem) para o final da apresentação de destino usando o mestre do slide de origem.

Clonar um Slide no Final de uma Seção Especificada

Se você deseja clonar um slide e então usá‑lo dentro do mesmo arquivo de apresentação, mas em uma seção diferente, use o método AddClone() exposto pela interface ISlideCollection. Aspose.Slides for C++ permite clonar um slide da primeira seção e então inserir esse slide clonado na segunda seção da mesma apresentação.

O trecho de código a seguir mostra como clonar um slide e inserir o slide clonado em uma seção especificada.

FAQ

As notas do orador e os comentários do revisor são clonados?

Sim. A página de notas e os comentários de revisão são incluídos no clone. Se você não quiser eles, remova‑os após a inserção.

Como os gráficos e suas fontes de dados são tratados?

O objeto do gráfico, a formatação e os dados incorporados são copiados. Se o gráfico estava vinculado a uma fonte externa (por exemplo, uma pasta de trabalho OLE incorporada), esse vínculo é mantido como um objeto OLE. Após mover entre arquivos, verifique a disponibilidade dos dados e o comportamento de atualização.

Posso controlar a posição de inserção e as seções do clone?

Sim. Você pode inserir o clone em um índice de slide específico e posicioná‑lo em uma seção escolhida. Se a seção de destino não existir, crie‑a primeiro e então mova o slide para ela.