# Unire presentazioni in modo efficiente in Java

> Unisci senza sforzo le presentazioni PowerPoint (PPT, PPTX) e OpenDocument (ODP) con Aspose.Slides per Java, semplificando il tuo flusso di lavoro.

Source: https://docs.aspose.com/slides/it/java/merge-presentation/
Updated: 2026-06-12

## **Panoramica**

Unire presentazioni PowerPoint e OpenDocument è un'operazione comune in molte applicazioni Java, specialmente durante la generazione di report, la compilazione di diapositive da fonti diverse o l'automazione dei flussi di lavoro delle presentazioni. Aspose.Slides per Java fornisce un'API potente e facile da usare per combinare più file PPT, PPTX o ODP in un'unica presentazione senza installare Microsoft PowerPoint, LibreOffice o OpenOffice.

In questa guida imparerai come unire presentazioni PowerPoint e OpenDocument usando solo poche righe di codice Java. Forniremo esempi pronti all'uso e mostreremo come preservare la formattazione delle diapositive, i layout e gli altri elementi della presentazione durante il processo di unione.

Che tu stia costruendo un'applicazione di livello enterprise o un semplice strumento di automazione, Aspose.Slides rende l'unione di presentazioni in Java veloce, affidabile e scalabile. Aspose.Slides per Java consente di unire presentazioni in modi diversi. Puoi combinare presentazioni con tutte le loro forme, stili, testi, formattazioni, commenti, animazioni e molto altro—senza preoccuparti della perdita di qualità o dati.

{{% alert color="primary" %}}
Vedi anche: [Clone Slides](https://docs.aspose.com/slides/it/java/clone-slides/)
{{% /alert %}}

### **Cosa può essere unito?**

Con Aspose.Slides, puoi unire:

**Presentazioni intere** – tutte le diapositive di più presentazioni vengono combinate in una sola.

**Diapositive specifiche** – solo le diapositive selezionate vengono unite in un'unica presentazione.

**Presentazioni nello stesso formato** (ad esempio PPT in PPT, PPTX in PPTX) e **in formati diversi** (ad esempio PPT in PPTX, PPTX in ODP).

### **Opzioni di unione**

Puoi applicare opzioni che determinano se:

- Ogni diapositiva nella presentazione di output mantiene lo stile originale
- Uno stile specifico è applicato a tutte le diapositive nella presentazione di output

Per unire presentazioni, Aspose.Slides fornisce i metodi `AddClone` dell'interfaccia [ISlideCollection](https://reference.aspose.com/slides/it/java/com.aspose.slides/islidecollection/). Esistono diverse overload del metodo `AddClone` che definiscono il comportamento del processo di unione. Ogni oggetto [Presentation](https://reference.aspose.com/slides/it/java/com.aspose.slides/presentation/) ha una collezione Slides. Quindi, puoi chiamare un metodo `AddClone` sulla presentazione di destinazione in cui desideri unire le diapositive.

Il metodo `AddClone` restituisce un oggetto [ISlide](https://reference.aspose.com/slides/it/java/com.aspose.slides/islide/), che è un clone della diapositiva di origine. Le diapositive risultanti nella presentazione di output sono semplicemente copie delle diapositive originali. Ciò significa che puoi modificare in sicurezza le diapositive clonate—ad esempio applicare stili, opzioni di formattazione o layout—senza influire sulla presentazione di origine.

## **Unire presentazioni**

Aspose.Slides fornisce il metodo [AddClone(ISlide)](https://reference.aspose.com/slides/it/java/com.aspose.slides/islidecollection/#addClone-com.aspose.slides.ISlide-) che consente di combinare diapositive preservando i loro layout e stili originali (comportamento predefinito).

Il codice Java seguente mostra come unire presentazioni:

```java
Presentation presentation1 = new Presentation("presentation1.pptx");
Presentation presentation2 = new Presentation("presentation2.pptx");
try {
    for (ISlide slide : presentation2.getSlides()) {
        presentation1.getSlides().addClone(slide);
    }
    presentation1.save("combined.pptx", SaveFormat.Pptx);
} finally {
    presentation2.dispose();
    presentation1.dispose();
}
```

## **Unire presentazioni con uno Slide Master**

Aspose.Slides fornisce il metodo [AddClone(ISlide, IMasterSlide, boolean)](https://reference.aspose.com/slides/it/java/com.aspose.slides/islidecollection/#addClone-com.aspose.slides.ISlide-com.aspose.slides.IMasterSlide-boolean-) che consente di combinare diapositive applicando uno slide master da un modello di presentazione. In questo modo, se necessario, puoi modificare lo stile delle diapositive nella presentazione di output.

Il codice Java seguente dimostra questa operazione:

```java
Presentation presentation1 = new Presentation("presentation1.pptx");
Presentation presentation2 = new Presentation("presentation2.pptx");
try {
    for (ISlide slide : presentation2.getSlides()) {
        IMasterSlide masterSlide = presentation2.getMasters().get_Item(0);
        presentation1.getSlides().addClone(slide, masterSlide, true);
    }
    presentation1.save("combined.pptx", SaveFormat.Pptx);
} finally {
    presentation2.dispose();
    presentation1.dispose();
}
```

{{% alert title="Nota" color="warning" %}}
Il layout della diapositiva viene determinato automaticamente. Quando non è possibile trovare un layout appropriato e il parametro booleano `allowCloneMissingLayout` del metodo `AddClone` è impostato su `true`, viene utilizzato il layout della diapositiva di origine. Altrimenti, viene sollevata un'[PptxEditException](https://reference.aspose.com/slides/it/java/com.aspose.slides/pptxeditexception/).
{{% /alert %}}

## **Unire diapositive specifiche da presentazioni**

Unire diapositive specifiche da più presentazioni è utile per creare deck personalizzati. Aspose.Slides per Java consente di selezionare e importare solo le diapositive necessarie. L'API preserva la formattazione, il layout e il design delle diapositive originali.

Il codice Java seguente crea una nuova presentazione, aggiunge diapositive titolo da due altre presentazioni e salva il risultato in un file:

```java
Presentation presentation = new Presentation();
Presentation presentation1 = new Presentation("presentation1.pptx");
Presentation presentation2 = new Presentation("presentation2.pptx");
try {
    presentation.getSlides().removeAt(0);
    
    ISlide slide1 = getTitleSlide(presentation1);

    if (slide1 != null)
        presentation.getSlides().addClone(slide1);

    ISlide slide2 = getTitleSlide(presentation2);

    if (slide2 != null)
        presentation.getSlides().addClone(slide2);

    presentation.save("combined.pptx", SaveFormat.Pptx);
} finally {
    presentation2.dispose();
    presentation1.dispose();
    presentation.dispose();
}
```
```java
static ISlide getTitleSlide(IPresentation presentation) {
    for (ISlide slide : presentation.getSlides()) {
        if (slide.getLayoutSlide().getLayoutType() == SlideLayoutType.Title) {
            return slide;
        }
    }
    return null;
}
```

## **Unire presentazioni con un Layout di diapositiva**

Per applicare un layout di diapositiva diverso alle diapositive di output durante l'unione, utilizza il metodo [AddClone(ISlide, ILayoutSlide)](https://reference.aspose.com/slides/it/java/com.aspose.slides/islidecollection/#addClone-com.aspose.slides.ISlide-com.aspose.slides.ILayoutSlide-) al suo posto.

Il codice Java seguente mostra come combinare diapositive da più presentazioni applicando il layout di diapositiva preferito, ottenendo una singola presentazione di output:

```java
int layoutIndex = 0;

Presentation presentation1 = new Presentation("presentation1.pptx");
Presentation presentation2 = new Presentation("presentation2.pptx");
try {
    for (ISlide slide : presentation2.getSlides()) {
        ILayoutSlide layoutSlide = presentation2.getLayoutSlides().get_Item(layoutIndex);
        presentation1.getSlides().addClone(slide, layoutSlide);
    }
    presentation1.save("combined.pptx", SaveFormat.Pptx);
} finally {
    presentation2.dispose();
    presentation1.dispose();
}
```

## **Unire presentazioni con dimensioni di diapositiva diverse**

Per unire due presentazioni con dimensioni di diapositiva diverse, è necessario ridimensionare una delle due in modo che corrisponda alle dimensioni della diapositiva dell'altra presentazione.

Il codice Java seguente dimostra questa operazione:

```java
Presentation presentation1 = new Presentation("presentation1.pptx");
Presentation presentation2 = new Presentation("presentation2.pptx");
try {
    Dimension2D slideSize = presentation1.getSlideSize().getSize();
    float slideWidth = (float) slideSize.getWidth();
    float slideHeight = (float) slideSize.getHeight();
    
    presentation2.getSlideSize().setSize(slideWidth, slideHeight, SlideSizeScaleType.EnsureFit);

    for (ISlide slide : presentation2.getSlides()) {
        presentation1.getSlides().addClone(slide);
    }
    presentation1.save("combined.pptx", SaveFormat.Pptx);
} finally {
    presentation2.dispose();
    presentation1.dispose();
}
```

## **Unire diapositive in una sezione della presentazione**

Unire diapositive in una sezione specifica della presentazione aiuta a organizzare i contenuti e a migliorare la navigazione. Aspose.Slides consente di unire diapositive in sezioni esistenti. Questo garantisce una struttura chiara preservando la formattazione originale di ogni diapositiva.

Il codice Java seguente mostra come unire una diapositiva specifica in una sezione di una presentazione:

```java
int sectionIndex = 0;

Presentation presentation1 = new Presentation("presentation1.pptx");
Presentation presentation2 = new Presentation("presentation2.pptx");
try {
    for (ISlide slide : presentation2.getSlides()) {
        ISection section = presentation1.getSections().get_Item(sectionIndex);
        presentation1.getSlides().addClone(slide, section);
    }
    presentation1.save("combined.pptx", SaveFormat.Pptx);
} finally {
    presentation2.dispose();
    presentation1.dispose();
}
```

La diapositiva viene aggiunta alla fine della sezione.

## **Vedi anche**

Aspose offre un [FREE Online Collage Maker](https://products.aspose.app/slides/it/collage). Utilizzando questo servizio online, puoi unire [JPG in JPG](https://products.aspose.app/slides/it/collage/jpg) o PNG in PNG, creare [griglie fotografiche](https://products.aspose.app/slides/it/collage/photo-grid) e molto altro.

Prova il [Aspose FREE Online Merger](https://products.aspose.app/slides/it/merger). Consente di unire presentazioni PowerPoint nello stesso formato (ad esempio PPT in PPT, PPTX in PPTX) o tra formati diversi (ad esempio PPT in PPTX, PPTX in ODP).

[![Aspose FREE Online Merger](slides-merger.png)](https://products.aspose.app/slides/it/merger)

Oltre alle presentazioni, Aspose.Slides consente di unire altri tipi di file:

- [**Immagini**](https://products.aspose.com/slides/it/java/merger/image-to-image/), come [JPG in JPG](https://products.aspose.com/slides/it/java/merger/jpg-to-jpg/) o [PNG in PNG](https://products.aspose.com/slides/it/java/merger/png-to-png/)
- **Documenti**, come [PDF in PDF](https://products.aspose.com/slides/it/java/merger/pdf-to-pdf/) o [HTML in HTML](https://products.aspose.com/slides/it/java/merger/html-to-html/)
- **Tipi di file misti**, come [immagine in PDF](https://products.aspose.com/slides/it/java/merger/image-to-pdf/), [JPG in PDF](https://products.aspose.com/slides/it/java/merger/jpg-to-pdf/) o [TIFF in PDF](https://products.aspose.com/slides/it/java/merger/tiff-to-pdf/)

## **FAQ**

**Esistono limitazioni sul numero di diapositive quando si uniscono presentazioni?**

Nessuna limitazione rigorosa. Aspose.Slides può gestire file di grandi dimensioni, ma le prestazioni dipendono dalla dimensione del file e dalle risorse di sistema. Per presentazioni molto grandi, è consigliato utilizzare una JVM a 64 bit e allocare sufficiente memoria heap.

**Posso unire presentazioni con video o audio incorporati?**

Sì, Aspose.Slides preserva i contenuti multimediali incorporati nelle diapositive, ma la presentazione finale potrebbe diventare notevolmente più grande.

**I caratteri saranno preservati durante l'unione delle presentazioni?**

Sì. I font utilizzati nelle presentazioni di origine sono preservati nel file di output, a condizione che siano installati sul sistema o [incorporati](/slides/it/java/embedded-font/).
