ASP.NETでのASPXページをPDFに変換

This article was translated from English: Does it need improvement?
Translated
View the article in English

このASPXからPDFへのチュートリアルでは、ASPXをPDFに変換する方法についてステップバイステップで説明します。 ASPXページをASP.NETウェブアプリケーションでPDFとして保存する。

ユーザーは、.aspxファイル拡張子を持つASPXファイルをGoogle Chromeで開かないようにするべきです。 私たちのエンジニアリングチームに、.NETコードを使用してASPXを自動的にPDFに変換するよう依頼しています。! 私たちはCTRL Pを押す必要がありません。! ASPXインターネットメディアをPDFとして保存するサーバーベースの方法があります。

設定を適用し、ファイルの動作や名前の設定、ヘッダーとフッターの追加、印刷オプションの変更、改ページの追加、非同期処理とマルチスレッドの組み合わせなどを行います。

ASPXファイルをPDFに変換する方法

ASP.NET向けのMicrosoft Webフォームアプリケーションは、洗練されたウェブサイト、オンラインバンキング、イントラネット、および会計システムの開発によく使用されます。 こちらの日本語訳です:

ASP.NETの一般的な機能の一つ (ASPX) ウェブサイトでは、ユーザーがPDF形式でダウンロードできるような請求書、チケット、管理レポートなどの動的なPDFファイルを生成することが目的です。

このチュートリアルでは、IronPDF for .NETソフトウェアコンポーネントを使用して、任意のASP.NETウェブフォームをPDFに変換する方法を紹介します。 (ASP.NET から PDF へ). HTMLは通常ウェブページとしてレンダリングされますが、PDFとしてレンダリングしてダウンロードやウェブブラウザでの表示に使用されます。 添付されたソースプロジェクトは、C#を使用してASP.NETでウェブページをPDFに変換する方法を示しています。

このHTMLからPDFへの変換を実現します (ASPXをPDFに変換) ウェブページをIronPDFを使用してレンダリングする際に AspxToPdf tools クラス。

ASPXファイルコンバーターの無料版をIronPDFからインストールする

PDF 用 C# NuGet ライブラリ

でインストール NuGet

Install-Package IronPdf
または
Java PDF JAR(ジャバPDF JAR)

ダウンロード DLL (ディーエルエル)

DLLをダウンロード

プロジェクトに手動でインストールする

PDF 用 C# NuGet ライブラリ

でインストール NuGet

Install-Package IronPdf
または
Java PDF JAR(ジャバPDF JAR)

ダウンロード DLL (ディーエルエル)

DLLをダウンロード

プロジェクトに手動でインストールする

今日からプロジェクトでIronPDFを使い始めましょう。無料のトライアルをお試しください。

最初のステップ:
green arrow pointer

チェックアウト IronPDF オン Nuget 迅速なインストールと展開のために。8百万以上のダウンロード数により、PDFをC#で変革しています。

PDF 用 C# NuGet ライブラリ nuget.org/packages/IronPdf/
Install-Package IronPdf

インストールを検討してください IronPDF DLL 直接。ダウンロードして、プロジェクトまたはGACの形式で手動でインストールしてください。 IronPdf.zip

プロジェクトに手動でインストールする

DLLをダウンロード

NuGetでインストール

Visual Studioで、プロジェクトソリューションエクスプローラーを右クリックし、「NuGetパッケージの管理...」を選択します。 そこからIronPDFを検索して、最新バージョンをインストールするだけです... 表示されるダイアログボックスで「OK」をクリックしてください。

これは、フレームワーク 4.6.2 以上、または .NET Core 2 以上のいずれの C# .NET フレームワークプロジェクトでも動作します。 VB.NETプロジェクトでも同様に機能します。

Install-Package IronPdf

https://www.nuget.org/packages/IronPdf

DLL経由でインストール

また、IronPDF DLLは以下からダウンロードしてプロジェクトやGACに手動でインストールすることも可能です https://ironpdf.com/packages/IronPdf.zip

以下の文を任意のcsクラスファイルの先頭に追加することを忘れないでください: もちろんです!翻訳したいコンテンツを提供してください。それに従って正確な日本語訳を提供いたします。

using IronPdf; もちろんです!翻訳したいコンテンツを提供してください。それに従って正確な日本語訳を提供いたします。

ASP.NETウェブページをPDFに変換

通常のASPX「Webフォーム」から始め、HTMLとしてレンダリングします。 後でASPXページをPDFファイル形式に変換します。

添付されたサンプルソースコードでは、ビジネス請求書「Invoice.aspx」をレンダリングしました。これは、ASP.NETページとしてレンダリングされたシンプルなHTMLビジネス請求書です。

HTMLページにはCSS3スタイルシートが含まれ、画像やJavaScriptも含まれる場合があります。

このASP.NETウェブページをHTMLではなくPDFにレンダリングするためには、C#のコードを開く必要があります。 (またはVB.NET) 次のコードをPage_Loadイベントに追加します:

:path=/static-assets/pdf/content-code-examples/how-to/aspx-to-pdf-1.cs
IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser);
IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser)
VB   C#

以下が必要なすべてです: HTML は現在 PDF としてレンダリングされます。 ハイパーリンク、スタイルシート、画像、そしてHTMLフォームも保持されます。 これは、ユーザーが自分のブラウザでHTMLをPDFに印刷した場合の出力に非常に似ています。 IronPDFは、Google Chromeを支えるChromiumウェブブラウザ技術を基盤に構築されています。

全体のC#コードは次のようになります:ASPXページをActive Server PagesでPDFに変換します。

:path=/static-assets/pdf/content-code-examples/how-to/aspx-to-pdf-2.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using IronPdf;

namespace AspxToPdfTutorial
{
    public partial class Invoice : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser);
        }
    }
}
Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports IronPdf

Namespace AspxToPdfTutorial
	Partial Public Class Invoice
		Inherits System.Web.UI.Page

		Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
			IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser)
		End Sub
	End Class
End Namespace
VB   C#

ASPXファイルをPDFに変換する設定を適用する

ASPXファイルを.NET Web Formsを使用して生成されたPDFに変換する際に、調整や最適化のための多くのオプションがあります。

これらのオプションの詳細は、オンラインで完全に記録されています。 APIリファレンスページ.

PDFファイルの動作設定

InBrowser」ファイル動作は、PDFをユーザーのブラウザで直接表示しようとします。 これはすべてのウェブブラウザーで常に可能であるわけではありませんが、通常、最新の標準準拠のブラウザーの一般的な機能です。 もちろんです!翻訳したいコンテンツを提供してください。それに従って正確な日本語訳を提供いたします。

IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser); もちろんです!翻訳したいコンテンツを提供してください。それに従って正確な日本語訳を提供いたします。

添付」ファイルの動作により、PDFがダウンロードされます。 もちろんです!翻訳したいコンテンツを提供してください。それに従って正確な日本語訳を提供いたします。

IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment(添付)); もちろんです!翻訳したいコンテンツを提供してください。それに従って正確な日本語訳を提供いたします。

PDFファイル名の設定

追加のパラメーターを追加することで、PDFドキュメントのファイル名を設定することもできます。 これにより、ユーザーがダウンロードまたは保持する際に、ファイルの名前を制御することができます。 ASPXページをPDFとして保存すると、その名前がPDFドキュメントに付けられます。 もちろんです!翻訳したいコンテンツを提供してください。それに従って正確な日本語訳を提供いたします。

IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPDF.AspxToPdf.FileBehavior.Attachment、「Invoice.pdf」); もちろんです!翻訳したいコンテンツを提供してください。それに従って正確な日本語訳を提供いたします。

3.3. PDF印刷オプションを変更

PDFの出力は、IronPdf.ChromePdfRendererクラスのインスタンスを追加することで制御できます。 ChromePdfRenderer API参照

:path=/static-assets/pdf/content-code-examples/how-to/aspx-to-pdf-3.cs
var AspxToPdfOptions = new IronPdf.ChromePdfRenderOptions()
{
    EnableJavaScript = false,
    //.. many more options available
};
IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment, "Invoice.pdf", AspxToPdfOptions);
Dim AspxToPdfOptions = New IronPdf.ChromePdfRenderOptions() With {.EnableJavaScript = False}
IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment, "Invoice.pdf", AspxToPdfOptions)
VB   C#

利用可能なPDFレンダリングオプションには以下が含まれます:

  • CreatePdfFormsFromHtml は、ASPX フォーム要素を編集可能な PDF フォームに変換します。
  • CssMediaType Screen または Print CSSスタイルおよびスタイルシート。 私たちのをご覧ください 詳細なチュートリアルと比較画像付き.
  • CustomCssUrl カスタムCSSスタイルシートをレンダリング前のHTMLに適用できるようにします。 ローカルファイルのパス、またはリモートURLである可能性があります。
  • EnableMathematicalLaTex 数学的なLaTeX要素のレンダリングを有効または無効にします。
  • EnableJavaScript ページがレンダリングされる前にJavaScriptおよびJSONを実行することを可能にします。 Ajax / Angular アプリケーションからの印刷に最適です。 また、以下もご覧ください WaitFot.
  • Javascript は、すべてのHTMLが読み込まれた後、PDFのレンダリング前に実行されるカスタムJavaScript文字列を指定します。
  • JavascriptMessageListener ブラウザのJavaScriptコンソールメッセージが利用可能になったときに呼び出されるメソッドコールバックです。
  • FirstPageNumber 最初のページ番号をヘッダーおよびフッターに指定します。 デフォルトは1です。
  • TableOfContents は、HTML ドキュメント内で id "ironpdf-toc" を持つ要素が見つかった位置に目次を生成します。
  • TextHeaderは、各PDFページのフッターコンテンツをテキストとして設定します。 「メールマージ」に対応し、URLを自動的にハイパーリンクに変換します。
  • TextFooterは、すべてのPDFページのフッターコンテンツをテキストとして設定します。 「メールマージ」に対応し、URLを自動的にハイパーリンクに変換します。
  • HtmlHeader は、コンテンツ文字列やHTMLを使用して、すべてのPDFページのヘッダー内容を設定します。
  • HtmlFooter は、コンテンツ文字列やHTMLを使用して各PDFページのフッターコンテンツを設定します。
  • MarginBottom 下部PDF用紙のマージン(ミリメートル単位)。 枠なしのPDFにする場合はゼロに設定してください。
  • MarginLeft PDF用紙の左側余白(ミリメートル単位)。 枠なしのPDFにする場合はゼロに設定してください。
  • MarginRight 右PDF用紙の余白(ミリメートル)。 枠なしのPDFにする場合はゼロに設定してください。
  • MarginTop 上部PDFペーパーの余白(ミリメートル)。 枠なしのPDFにする場合はゼロに設定してください。
  • UseMarginsOnHeaderAndFooter ヘッダーおよびフッターをレンダリングする際に、メインドキュメントからの余白値を使用するかどうかを指定します。
  • PaperFit:PDFの「紙」ページにコンテンツをレイアウトする方法を制御し、仮想用紙レイアウトを設定するためのマネージャー。 デフォルトのChrome動作、ズーム、レスポンシブCSS3レイアウト、ページに合わせたスケール、および連続フィードスタイルのPDFページ設定のオプションを含みます。
  • PaperOrientation PDFの用紙の向き。 ランドスケープ または ポートレート
  • PageRotation 既存のドキュメントからのページ回転。 詳細な説明および添付のコード例.
  • PaperSize PDFページの出力用紙サイズをSystem.Drawing.Printing.PaperKindを使用して設定します。
  • SetCustomPaperSizeinCentimeters: 紙のサイズをセンチメートルで設定します。
  • SetCustomPaperSizeInInches 紙のサイズをインチで設定します。
  • SetCustomPaperSizeinMilimeters ミリメートル単位で用紙サイズを設定します。
  • SetCustomPaperSizeinPixelsOrPoints 画面ピクセルまたはプリンターポイントで用紙サイズを設定します。
  • ForcePaperSize は、HTMLからPDFを生成した後に、ページのサイズをPaperSizeで指定された内容に正確に合わせてリサイズするかどうかを指定します。
  • PrintHtmlBackgrounds はHTML画像の背景を印刷します。

  • GrayScale は、フルカラーの代わりにグレースケールの段階でPDFを出力します。

    • WaitFor
      待機メカニズムの設定を保持するラッパーオブジェクト。 これは、JavaScript、Ajax、またはアニメーションのレンダリングを考慮する際に役立ちます。

    • PageLoad: 待たずにデフォルトのレンダー。

    • RenderDelay:任意の待機時間を設定する設定。

    • フォント: すべてのフォントが読み込まれるまで待機します。

    • JavaScript:JavaScript 関数でレンダリングをトリガーする。

    • HTML要素: 要素ID、名前、タグ名、クエリセレクタなどの特定のHTML要素を待機してターゲット要素にします。
  • ネットワークアイドル**: ネットワークアイドル待機中 (0、2、またはカスタム金額).
  • タイトル PDFドキュメントの 'Title' メタデータ。
  • InputEncoding 文字列としての入力文字エンコーディング。 UTF-8 は ASP.NET のデフォルトです。.
  • RequestContext は、レンダーのリクエストコンテキストを指定します。

  • タイムアウト。 秒単位でのレンダータイムアウト。

4. ASPX PDFにヘッダーとフッターを追加

IronPDFを使用すると、PDF出力にヘッダーとフッターを追加できます。

これを行う最も簡単な方法は、現在の時刻やページ番号のような動的データを簡単に追加できる基本的なレイアウトをサポートする TextHeaderFooter クラスを使用することです。

4.1. ASPXからPDFへのヘッダーとフッターの例

:path=/static-assets/pdf/content-code-examples/how-to/aspx-to-pdf-4.cs
using IronSoftware.Drawing;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace AspxToPdfTutorial
{
    public partial class Invoice : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            var AspxToPdfOptions = new IronPdf.ChromePdfRenderOptions()
            {
                TextHeader = new IronPdf.TextHeaderFooter()
                {
                    CenterText = "Invoice",
                    DrawDividerLine = false,
                    Font = FontTypes.Arial,
                    FontSize = 12
                },
                TextFooter = new IronPdf.TextHeaderFooter()
                {
                    LeftText = "{date} - {time}",
                    RightText = "Page {page} of {total-pages}",
                    Font = IronSoftware.Drawing.FontTypes.Arial,
                    FontSize = 12,
                },
            };
            IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment, "Invoice.pdf", AspxToPdfOptions);
        }
    }
}
Imports IronSoftware.Drawing
Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls

Namespace AspxToPdfTutorial
	Partial Public Class Invoice
		Inherits System.Web.UI.Page

		Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
			Dim AspxToPdfOptions = New IronPdf.ChromePdfRenderOptions() With {
				.TextHeader = New IronPdf.TextHeaderFooter() With {
					.CenterText = "Invoice",
					.DrawDividerLine = False,
					.Font = FontTypes.Arial,
					.FontSize = 12
				},
				.TextFooter = New IronPdf.TextHeaderFooter() With {
					.LeftText = "{date} - {time}",
					.RightText = "Page {page} of {total-pages}",
					.Font = IronSoftware.Drawing.FontTypes.Arial,
					.FontSize = 12
				}
			}
			IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment, "Invoice.pdf", AspxToPdfOptions)
		End Sub
	End Class
End Namespace
VB   C#

代わりに、HTML ヘッダーとフッターは、CSS、画像、およびハイパーリンクもサポートする.HtmlHeaderFooterクラスを使用して生成できます。

:path=/static-assets/pdf/content-code-examples/how-to/aspx-to-pdf-5.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace AspxToPdfTutorial
{
    public partial class Invoice : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            var AspxToPdfOptions = new IronPdf.ChromePdfRenderOptions()
            {
                MarginTop = 50, // make sufficiant space for an HTML header
                HtmlHeader = new IronPdf.HtmlHeaderFooter()
                {
                    HtmlFragment = "<div style='text-align:right'><em style='color:pink'>page {page} of {total-pages}</em></div>"
                }
            };
            IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment, "MyDocument.pdf", AspxToPdfOptions);
        }
    }
}
Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls

Namespace AspxToPdfTutorial
	Partial Public Class Invoice
		Inherits System.Web.UI.Page

		Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
			Dim AspxToPdfOptions = New IronPdf.ChromePdfRenderOptions() With {
				.MarginTop = 50,
				.HtmlHeader = New IronPdf.HtmlHeaderFooter() With {.HtmlFragment = "<div style='text-align:right'><em style='color:pink'>page {page} of {total-pages}</em></div>"}
			}
			IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment, "MyDocument.pdf", AspxToPdfOptions)
		End Sub
	End Class
End Namespace
VB   C#

以下の例に見られるように、動的テキストまたはHTMLをプレースホルダーを使用してヘッダー/フッターに「マージ」することができます:

  • {ページ}: PDFの現在のページ番号用。
  • {総ページ数}: PDF内の総ページ数として。
  • {URL}PDFドキュメントがレンダリングされたWeb URL。
  • {日付}: 今日の日付をサーバーのシステム環境に適した形式で。

  • {時間}24時間制を使用して、時間:分を表します。

    • {html-タイトル}以下を日本語に翻訳します:

: ASPX ウェブフォームのヘッドタグからタイトルを挿入します。

  • {pdfタイトル}文書ファイル名のために。

5. ASPXファイルをPDFに適用するテクニック:ページ分割

HTMLは一般的に長いページに「フロー」するのに対し、PDFはデジタルペーパーをシミュレートしており、一貫したページに分割されます。 以下のコードをASPXページに追加すると、.NETで生成されたPDFにページ区切りが自動的に作成されます。

:path=/static-assets/pdf/content-code-examples/how-to/aspx-to-pdf-6.cs
<div style='page-break-after: always;'>&nbsp;</div>
HTML

6. パフォーマンスのために非同期処理とマルチスレッドを組み合わせる

IronPDFは、.NET Framework 4.6.2、または.NET Core 2以上で構築されました。 Framework 4.6.2以上のプロジェクトでは、 非同期 複数のドキュメントを扱う際のパフォーマンスを向上させるために利用できます。

非同期処理をマルチスレッドCPUおよびParallel.ForEachコマンドと組み合わせることで、大量PDF形式処理が大幅に向上します。

ASP.NETソースコードとしてダウンロード

このチュートリアルのための ASPXファイルをPDFに変換するソースコード 全体は、圧縮されたVisual Studio Webアプリケーションプロジェクトとしてダウンロード可能です。

このチュートリアルを ASP.NET Visual Studio プロジェクトとしてダウンロードする

無料ダウンロードには、設定が適用された状態でPDFとしてレンダリングされたWebページを示すC# ASP.NET Web Formsプロジェクトの動作するコード例が含まれています。 このチュートリアルが、ASPXファイルをPDFとして保存する方法の学習に役立ったことを願っています。

今後

一般的に、あらゆるプログラミング技術を学ぶ最良の方法は、独自のASP.NETプロジェクトで実験を行うことです。 これはIronPDFのASPX to PDFコンバーターを試すことを含みます。

開発者はまた、以下にも興味を持つかもしれません: IronPdf.AspxToPdf クラス 参照:

8. ASPXをPDFに変換するチュートリアル動画を視聴する


チュートリアル クイック アクセス

このチュートリアルをソースコードとしてダウンロード

このチュートリアルのための完全なASPXファイルからPDFへのコンバーターのソースコードは、圧縮されたVisual Studio Webアプリケーションプロジェクトとして利用可能です。 The free download contains working code examples for a C# ASP.NET Web Forms project, showing a web page rendered as a PDF with settings applied.

ダウンロード

このチュートリアルをGitHubで探索する

このC# ASPX-To-PDFプロジェクトのコードは、GitHubでC#およびVB.NETのASP.NETウェブサイトプロジェクトとして利用可能です。IronPDFの使用に関してさらなるサポートが必要な場合は、ぜひGitHubでフォークしてください。ASPXをPDFに変換する方法について質問している人がいれば、自由に共有してください。

C# ASPXからPDFへのウェブサイトプロジェクト 次世代のASP.NETページからPDF作成サンプル(C#を使用) ASP.NET PDFのサンプル (VB.NET) でPDFを作成する方法

ダウンロード C# PDF Quickstart guide

.NETアプリケーションでPDFの開発を簡単にするために、PDF文書としてクイックスタートガイドをまとめました。この「チートシート」は、C#およびVB.NETでPDFを生成および編集するための一般的な機能と例への迅速なアクセスを提供し、.NETプロジェクトでIronPDFを使用する際の時間を節約するのに役立ちます。

ダウンロード

APIリファレンスを表示

IronPDFのAPIリファレンスを探索して、IronPDFのすべての機能、名前空間、クラス、メソッド、フィールド、およびenumの詳細を確認してください。

APIリファレンスを表示