業界ニュース

Milan Jovanović 氏が ASP .NET Core で PDF ドキュメントを作成 - 彼が選んだライブラリは IronPDF

ミラン・ヨバノヴィッチ

ソフトウェア アーキテクトであり、Microsoft MVP であり、 .NETエコシステムで最も尊敬されている人物の 1 人である Milan が、 .NET Coreでの PDF 生成に関する詳細なレポートを公開しました。 動的なドキュメント作成、PDF の結合、API エンドポイントからのファイルの提供など、実際のパターンを複数紹介しました。

これらすべてを収める彼の選んだ図書館は? IronPDF 。 彼自身の言葉によれば、 "IronPDFは私が商用プロジェクトで最も頻繁に使用したライブラリです。"

彼がそれをどのように使用しているかを詳しく見ていきましょう。

アプローチ: Razorビューを使用した HTML テンプレート

PDF ファイルを生成するためのより一般的な方法は、HTML テンプレートを使用することです。

これは、 ASP.NET Core MVC RazorビューとIronPDFのレンダリングエンジンを組み合わせたものです。厳密に型指定されたビューを使用することで、実行時にC#オブジェクトをテンプレートに直接渡し、動的なデータ駆動型ドキュメントを生成できます。

実際のパターンは次のようになります。 まず、 Razorビューはドキュメントのレイアウトを定義します。


@model ViewModels.InoviceViewModel

<div>Invoice number: @Model.InvoiceNumber</div>
<div>Invoice date: @Model.InvoiceDate</div>
<br/>
<span>Line items:</span>
<ul>
    @foreach(var lineItem in Model.LineItems)
    {
        <li>@lineItem.Name | @lineItem.Price</li>
    }
</ul>

@model ViewModels.InoviceViewModel

<div>Invoice number: @Model.InvoiceNumber</div>
<div>Invoice date: @Model.InvoiceDate</div>
<br/>
<span>Line items:</span>
<ul>
    @foreach(var lineItem in Model.LineItems)
    {
        <li>@lineItem.Name | @lineItem.Price</li>
    }
</ul>
$vbLabelText   $csharpLabel

次に、IronPDF のChromePdfRendererがレンダリングされた HTML を洗練された PDF に変換します。

var html = ConvertRazorViewToHtml(invoice);

var renderer = new ChromePdfRenderer();

var pdf = renderer.RenderHtmlAsPdf(html);

pdf.SaveAs($"invoice-{invoice.InvoiceNumber}.pdf");
var html = ConvertRazorViewToHtml(invoice);

var renderer = new ChromePdfRenderer();

var pdf = renderer.RenderHtmlAsPdf(html);

pdf.SaveAs($"invoice-{invoice.InvoiceNumber}.pdf");
$vbLabelText   $csharpLabel

3 行の C# コード。 Razorビューはすべてのレイアウト ロジックを処理し、CSS はスタイルを処理し、 IronPDF は変換を処理します。 ミラン氏は"本当にそれだけ単純なことだ"と指摘する。

ミラノが他の選択肢よりもこれを選ぶ理由

Milan 氏は複数の商用プロジェクトで PDF ライブラリに携わってきましたが、 IronPDFを好む理由は、同氏が記事で強調しているいくつかの重要な要素にあります。

Chromiumレンダリングエンジンは、一貫した結果を提供します。IronPDFはChromeと同じエンジンを使用してHTMLをレンダリングするため、PDF出力はブラウザで表示されるものと完全に一致します。

CSSを使えば、フォーマットを完全に制御できます。独自のレイアウトAPIを学ぶ代わりに、あらゆるWebページに記述するのと同じCSSを使用できます。 Flexbox、グリッド、カスタム フォント、レスポンシブ スペースなど、すべてが PDF 出力に直接変換されます。

実世界のパターン: 複数のPDFを結合する

Milan は、複数の PDF ファイルを 1 つのドキュメントに結合するという一般的なビジネス要件について説明します。 会計のためにまとめる必要のある月々の領収書や、最終的な成果物にまとめる必要のあるレポートのセクションなどを考えてみましょう。

実際のパターン: API から PDF を提供する

Milan は、 IronPDF がASP.NET Core の最小 API パターンにどのように自然に適合するかについても示しています。 エンドポイントから動的に生成された PDF を返します。

ミラノの記事全文を読む

Milan の完全な内訳には、 .NETプロジェクトの PDF 生成アプローチを評価する場合に検討する価値のある追加の実装の詳細とコード サンプルが含まれています。

全文はこちらで読む

自分で試してみてください

IronPDF は開発用途では無料なので、何の負担もなく、自分のプロジェクトで Milan のパターンをテストできます。 NuGet経由でインストールしてください:

30日間無料トライアルを開始