今日は、C#を使用して、PDF、Word文書、スプレッドシート、プレゼンテーションをプログラムでマージする方法を学びます。以前の投稿で、Javaを使用したドキュメントのマージと分割を見てきました。

csharp dotnetを使用して、倍数のpdf、word、excel、pptファイルをマージします

この記事では、以下に関するコード例も示します。

以下のすべての例では、GroupDocs.Merger for.NETを使用します。先に進む前に、次のいずれかのオプションからAPIを取得できます。

  • NuGetパッケージギャラリーからパッケージをインストールします。
  • ダウンロードGroupDocsのダウンロードセクションからのMSIまたはDLL。

PDFファイルをC#でマージする

次の単純な3行のコードは、2つのPDFファイルを1つのPDFドキュメントに結合します。

  • Mergerクラスを使用して最初のドキュメントから開始します。
  • MergerクラスのJoinメソッドを呼び出し、2番目のドキュメントを渡してマージします。
  • 保存メソッドを呼び出して、結合されたドキュメントを保存します。
// Merge 2 PDF files in C#
using (Merger merger = new Merger(@"document1.pdf"))
{
    merger.Join(@"document2.pdf");
    merger.Save(@"merged.pdf");
}

Joinメソッドには、ストリームまたはリモートURLを使用して、ファイルパスを介してドキュメントまたは異なるドキュメントの選択ページをマージできるようにするいくつかのオーバーロードされたメソッドがあります。

C#で複数のWord文書をマージする

上記の同様のコードにより、フォーマットを失うことなく、MSWordおよびOpenDocumentフォーマットの2つ以上のファイルを組み合わせることができます。アイデアを与えるために、.doc、.docx、.docm、.dot、.dotx、.dotm、.rtf、.odt、.ottなどをマージできます。以下は、2つのMSWordDOCXファイルをマージする3つのライナーコードです。 。

// 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によるマージでサポートされているかどうかを確認することをお勧めします。次のコードは、MergerAPIでサポートされているすべてのファイルタイプを取得します。

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)

.NETMergerAPIについて詳しく知る

GroupDocsの.NETMergerAPIについて詳しく知りたい場合は、ドキュメントにアクセスするか、フォーラムでお問い合わせください。

ありがとう。