Oggi impareremo a unire in modo programmatico PDF, documenti Word, fogli di calcolo, presentazioni usando C#. In un post precedente, abbiamo visto l’unione e la divisione di documenti usando Java.

unisci più file pdf, word, excel, ppt usando csharp dotnet

Questo articolo ti mostrerà anche gli esempi di codice relativi a:

Userò GroupDocs.Merger per .NET in tutti gli esempi seguenti. Prima di procedere, puoi ottenere l’API da una delle seguenti opzioni:

  • Installa il pacchetto da NuGet Packages Gallery.
  • Scarica l’MSI o le DLL dalla sezione download di GroupDocs.

Unisci file PDF in C#

Seguendo semplici 3 righe di codice combina 2 file PDF in 1 documento PDF.

  • Inizia con il primo documento usando la classe Merger.
  • Chiama il metodo Join della classe Merger e passa il secondo documento da unire.
  • Chiama il metodo Salva per salvare il documento combinato.
// Merge 2 PDF files in C#
using (Merger merger = new Merger(@"document1.pdf"))
{
    merger.Join(@"document2.pdf");
    merger.Save(@"merged.pdf");
}

Il metodo Unisciti ha diversi metodi sovraccaricati che consentono di unire documenti o pagine selettive di documenti diversi tramite il percorso del file, utilizzando un flusso o un URL remoto.

Unisci più documenti di Word in C#

Il codice precedente simile consente di combinare due o più file di formati MS Word e OpenDocument senza perdere il formato. Solo per dare un’idea, puoi unire .doc, .docx, .docm, .dot, .dotx, .dotm, .rtf, .odt, .ott ecc. Di seguito è riportato il codice 3 liner che unisce due file MS Word DOCX .

// Merge Word files in C#
using (Merger merger = new Merger(@"c:\\document1.docx"))
{
    merger.Join(@"c:\\document2.docx");
    merger.Save(@"c:\\merged.docx");
}

Unisci pagine di più file - C#

Non solo l’intero documento, ma possiamo anche unire pagine selettive di più documenti per ottenere un unico documento combinato.

// Merge selective pages
string filePath = @"c:\\sample.docx";
string filePath2 = @"c:\\sample2.docx";
string filePathOut = @"c:\\output\\result.docx";

JoinOptions joinOptions = new JoinOptions(1, 4, RangeMode.OddPages);

using (Merger merger = new Merger(filePath, loadOptions))
{
    merger.Join(filePath2, joinOptions);
    merger.Save(filePathOut);
}

Unisci fogli di calcolo, presentazioni e altri documenti in C#

Insieme a documenti come PDF e Word, possiamo unire le presentazioni, i fogli di calcolo e molti altri formati in nessun modo diverso. Basta cambiare il nome del file e digitare di conseguenza il codice sopra, otterrai il documento unito.

using (Merger merger = new Merger(@"filepath1.xxx"))
{
    merger.Join(@"filepath2.xxx");
    merger.Save(@"xyz.xxx");
}

Controlla prima il supporto del formato file

Il tuo requisito potrebbe essere di un tipo di file leggermente diverso, quindi è meglio sapere prima che il documento richiesto è supportato per l’unione dall’API o meno. Il codice seguente ottiene tutti i tipi di file supportati dall’API Merger.

foreach (FileType fileType in FileType
        .GetSupportedFileTypes()
        .OrderBy(fileType => fileType.Extension))
{
    Console.WriteLine(fileType);
}

Ecco l’output del codice sopra che mostra i formati di file.

Bitmap Image File (.bmp)
Comma Separated Values File (.csv)
Excel Binary Spreadsheet (.xlsb)
Excel Macro-Enabled Add-In (.xlam)
Excel Open XML Macro-Enabled Spreadsheet (.xlsm)
Excel Open XML Macro-Enabled Spreadsheet Template (.xltm)
Excel Open XML Spreadsheet (.xlsx)
Excel Open XML Spreadsheet Template (.xltx)
Excel Spreadsheet (.xls)
Excel Template File (.xlt)
Hypertext Markup Language File (.html)
JPEG Image (.jpeg)
LaTeX Source Document (.tex)
MHTML Web Archive (.mht)
MIME HTML File (.mhtml)
OneNote Document (.one)
Open eBook File (.epub)
OpenDocument Document Template (.ott)
OpenDocument Presentation (.odp)
OpenDocument Presentation Template (.otp)
OpenDocument Spreadsheet (.ods)
OpenDocument Text Document (.odt)
Plain Text File (.txt)
Portable Document Format File (.pdf)
Portable Network Graphic (.png)
PostScript File (.ps)
PowerPoint Open XML Presentation (.pptx)
PowerPoint Open XML Slide Show (.ppsx)
PowerPoint Presentation (.ppt)
PowerPoint Slide Show (.pps)
Rich Text Format File (.rtf)
Tab Separated Values File (.tsv)
Visio Drawing (.vsdx)
Visio Drawing Template (.vstx)
Visio Drawing XML File (.vdx)
Visio Macro-Enabled Drawing (.vsdm)
Visio Macro-Enabled Drawing Template (.vstm)
Visio Macro-Enabled Stencil File (.vssm)
Visio Stencil File (.vssx)
Visio Stencil XML File (.vsx)
Visio Template XML File (.vtx)
Word Document (.doc)
Word Document Template (.dot)
Word Open XML Document (.docx)
Word Open XML Document Template (.dotx)
Word Open XML Macro-Enabled Document (.docm)
Word Open XML Macro-Enabled Document Template (.dotm)
XML Paper Specification File (.xps)

Scopri di più sull’API .NET Merger

Nel caso in cui desideri saperne di più sull’API .NET Merger di GroupDocs, visita la documentazione o contattaci sul forum per qualsiasi domanda.

Grazie.