Сегодня мы научимся программно объединять документы PDF, Word, электронные таблицы, презентации с помощью C#. В предыдущем посте мы видели объединение и разделение документов с помощью Java.

объединить несколько файлов pdf, word, excel, ppt с помощью csharp dotnet

В этой статье также будут показаны примеры кода, касающиеся:

Я буду использовать GroupDocs.Merge for .NET во всех приведенных ниже примерах. Прежде чем продолжить, вы можете получить API одним из следующих способов:

  • Установите пакет из галереи пакетов NuGet.
  • Загрузить MSI или DLL из раздела загрузок в GroupDocs.

Объединение PDF-файлов в C#

Следующие 3 строки кода объединяют 2 PDF-файла в 1 PDF-документ.

  • Начните с первого документа, используя класс Merge.
  • Вызовите метод Join класса Merger и передайте второй документ для слияния.
  • Вызовите метод Save для сохранения объединенного документа.
// Merge 2 PDF files in C#
using (Merger merger = new Merger(@"document1.pdf"))
{
    merger.Join(@"document2.pdf");
    merger.Save(@"merged.pdf");
}

Метод Join имеет несколько перегруженных методов, которые позволяют объединять документы или отдельные страницы разных документов по пути к файлу, с помощью потока или удаленного URL-адреса.

Объединение нескольких документов Word в C#

Аналогичный приведенный выше код позволяет объединить два и более файла форматов MS Word и OpenDocument без потери формата. Просто чтобы дать представление, вы можете объединить .doc, .docx, .docm, .dot, .dotx, .dotm, .rtf, .odt, .ott и т. Д. Ниже приведен 3-строчный код, который объединяет два файла 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");
}

Объединить страницы нескольких файлов — C#

Не только весь документ, но мы также можем объединить выбранные страницы из нескольких документов, чтобы получить объединенный единый документ.

// 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);
}

Объединение электронных таблиц, презентаций и других документов в C#

Наряду с такими документами, как PDF и Word, мы можем объединять презентации, электронные таблицы и многие другие форматы одним и тем же способом. Просто измените имя файла и введите соответствующий приведенный выше код, и вы получите объединенный документ.

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

Сначала проверьте поддержку формата файла

Ваше требование может быть немного другого типа файла, поэтому лучше сначала узнать, поддерживается ли требуемый документ для слияния API или нет. Следующий код получает все типы файлов, поддерживаемые API слияния.

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

Вот вывод приведенного выше кода, который отображает форматы файлов.

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)

Узнайте больше об API слияния .NET

Если вы хотите узнать больше о .NET Merger API для GroupDocs, посетите документацию или свяжитесь с нами на форуме по любому вопросу.

Спасибо.