Excel から PDF へ C#

Excel ファイルは、表形式のデータを保持および共有するために広く使用されています。一方、PDF 形式は支配的なデジタル ドキュメント形式の 1 つです。場合によっては、Excel ファイルをプログラムで PDF 形式に変換する必要があります。これを実現するために、この記事では C# で Excel XLS XLSX を PDF に変換する方法を示します。

Excel から PDF への変換用の C# API

Aspose.Cells for .NET API により、Excel スプレッドシートを PDF に簡単に変換できます。 API の DLL を ダウンロード するか、NuGet を使用してインストールすることができます。

PM> Install-Package Aspose.Cells

C# で Excel ファイルを PDF に変換する方法

Aspose.Cells for .NET を使用すると、Excel ファイルを簡単に PDF に変換できます。これは、API を使用して Excel ファイルを保存する方法です。

  • ディスクから Excel ファイルを読み込みます。
  • PDF として任意の場所に保存します。

以上です。それでは、C# コードを使用して Excel から PDF への変換を実行する方法を見てみましょう。

C# で Excel XLS または XLSX を PDF に変換する

Aspose.Cells for .NET は、簡単な手順で Excel ファイルを PDF に変換できる使いやすい API を提供します。

  1. 変換する Excel ドキュメントで Workbook クラスをインスタンス化します。
  2. SaveFormat Enumeration を使用して保存形式を PDF として指定し、ドキュメントを PDF 形式で保存します。

次のコード スニペットは、C# で Excel XLS を PDF に変換する方法を示しています。

// Instantiate the Workbook object with the Excel file
Workbook workbook = new Workbook("SampleExcel.xls");

// Save the document in PDF format
workbook.Save("outputPDF.pdf", SaveFormat.Pdf);

C# Excel から PDF/A 準拠の PDF への変換

PDF/A は、長期アーカイブに適さない機能を禁止する PDF の ISO 標準化バージョンです。このように PDF を保存すると、長期的には何も壊れることがありません。

次のコード スニペットは、C# で Excel ワークブックを PDF/A 準拠の PDF 形式に変換する方法を示しています。

// Instantiate new workbook
Workbook workbook = new Workbook();

// Insert a value into the cell A1
workbook.Worksheets[0].Cells[0, 0].PutValue("Testing PDF/A");

// Define PdfSaveOptions
PdfSaveOptions pdfSaveOptions = new PdfSaveOptions();

// Set the compliance type
pdfSaveOptions.Compliance = PdfCompliance.PdfA1b;

// Save the file
workbook.Save(dataDir + "output.pdf", pdfSaveOptions);

C# Excel XLS XLSX から PDF - 変換の追跡

Aspose.Cells for .NET は、IPageSavingCallback インターフェイスを提供することで、変換の進行状況を追跡する機能を提供します。このインターフェイスを実装するカスタム クラスを作成し、そのインスタンスを PdfSaveOptions.PageSavingCallback プロパティに割り当てることができます。

次のコード スニペットは、C# を使用して Excel から PDF への変換の進行状況を追跡する方法を示しています。

//load the workbook
Workbook workbook = new Workbook("PagesBook1.xlsx");

PdfSaveOptions pdfSaveOptions = new PdfSaveOptions();

//assign the custom class that implements IPageSavingCallback interface
pdfSaveOptions.PageSavingCallback = new TestPageSavingCallback();

workbook.Save("DocumentConversionProgress.pdf", pdfSaveOptions);

以下は、変換プロセスを追跡するための IPageSavingCallback インターフェイスを実装するカスタム クラスです。

public class TestPageSavingCallback : IPageSavingCallback
{
    public void PageStartSaving(PageStartSavingArgs args)
    {
        Console.WriteLine("Start saving page index {0} of pages {1}", args.PageIndex, args.PageCount);

        //pages before page index 2 are not rendered.
        if (args.PageIndex < 2)
        {
            args.IsToOutput = false;
        }
    }

    public void PageEndSaving(PageEndSavingArgs args)
    {
        Console.WriteLine("End saving page index {0} of pages {1}", args.PageIndex, args.PageCount);

        //pages after page index 8 are not rendered.
        if (args.PageIndex >= 8)
        {
            args.HasMorePages = false;
        }
    }
}

C# Excel to PDF Converter - 無料ライセンスを取得

一時ライセンスを使用すると、評価制限なしで Aspose.Cells for .NET を使用できます。

結論

この記事では、C# で Excel XLSX または XLS ファイルを PDF に変換する方法を学習しました。 Excel ファイルを PDF に変換する方法の詳細については、ドキュメント Excel ワークブックを PDF に変換 を参照してください。ご不明な点がございましたら、フォーラム からお気軽にお問い合わせください。

関連項目