C# で PDF を作成する方法 — IronPDF 完全チュートリアル
プログラムで PDF を作成する際には、ヘッダーやフッターの追加、互換性の問題など、さまざまな課題に直面することがあります。Iron Software は PDF 作成機能を直感的でわかりやすいメソッドに統合し、開発者がすぐにプロジェクトを始められるよう簡素化しています。
IronPDFを使用すると、シームレスに図形、テキスト、画像、ヘッダー、フッターを追加できます。 また、ドキュメントの向き、サイズ、メタデータを設定し、PDF/UAやPDF/Aなどのさまざまな標準にエクスポートすることができます。 さらに、既存のアプリケーションにIronPDFを統合してPDFを表示したり、プログラムで文書を印刷したりすることも簡単です。
このチュートリアルでは、各機能を探求し、IronPDFが開発体験をどのように向上させるかを紹介します。 これにより、任意のサポート環境およびプラットフォームで展開できる、読みやすく再利用可能なコードコンポーネントを作成することができます。
この記事の終わりには、IronPDFを使用して、ニーズに合ったスタイリッシュでユニークなPDFを作成するための確固たる理解を持つことができるでしょう。
IronPDFのインストール開始とこの記事に記載されたチュートリアルの例に従うために、このクイックインストールガイドをご覧ください。セットアップをスムーズに進めるのを手助けしてくれます。
クイックスタート:IronPDF で C# から PDF を作成する
IronPDFを使用して、C#でわずか数行のコードで最初のPDFを簡単に作成します。 このクイックガイドでは、新しいPDFドキュメントを初期化し、コンテンツを追加して保存する方法を示し、ライブラリを初めて使用する開発者にスムーズなスタートを保証します。 数秒でPDF作成に飛び込み、簡単にC#アプリケーションの機能を拡張しましょう。
目次
- 完璧なPDFをデザイン
- 空のPDFを作成
- ヘッダーとフッターを追加
- ページ番号を追加
- DataURIで画像を埋め込む
- Azure Blob Storageから画像を埋め込む
- PDFのためのOpenAI
- フルPDFカスタマイズが簡単
- 向きと回転
- カスタム用紙サイズ
- 標準への準拠
- C#でPDF/A形式ドキュメントをエクスポート
- C#でPDF/UA形式ドキュメントをエクスポート
完璧なPDFをデザイン
空のPDFを作成
IronPDFを使用して空のPDFを作成することは、直感的で簡単です。ほんの数行のコードで済みます。 まず、新しい PdfDocument クラスを初期化し、寸法を指定して、 SaveAs メソッドを呼び出して保存します。
:path=/static-assets/pdf/content-code-examples/how-to/create-new-pdfs.cs
using IronPdf;
PdfDocument pdf = new PdfDocument(270, 270);
pdf.SaveAs("blankPage.pdf");
Imports IronPdf
Dim pdf As New PdfDocument(270, 270)
pdf.SaveAs("blankPage.pdf")
このコードスニペットの詳細な説明と追加機能を探索するには、包括的なハウツーガイドをご覧ください。
ヘッダーとフッターを追加
IronPDFを使用して、PDFの上部または下部にヘッダーとフッターを簡単に追加できます。 IronPDFでは、2種類のヘッダーとフッターを追加することができます。 TextHeaderFooter は、文字列補間を使用してページ番号を表示するなど、テキストのみが必要なシナリオに最適です (例: "{page} of {total-pages}")。 同時に、HtmlHeaderFooter は、開発者が配置する HTML コンテンツをカスタマイズできる、より高度なバリエーションです。
このコードスニペットの詳細な説明と追加機能を探索するには、包括的なハウツーガイドをご覧ください。
HTMLヘッダーとフッター
HtmlHeaderFooter オブジェクトを設定すると、ページ番号を <center> タグで囲み、イメージアセットを追加してドキュメントが一意であることを保証することで、テキストの表示場所をカスタマイズできます。
:path=/static-assets/pdf/content-code-examples/how-to/headers-and-footers-htmlheaderfooter.cs
using IronPdf;
string headerHtml = @"
<html>
<head>
<link rel='stylesheet' href='style.css'>
</head>
<body>
<h1>This is a header!</h1>
</body>
</html>";
string footerHtml = @"
<html>
<head>
<link rel='stylesheet' href='style.css'>
</head>
<body>
<h1>This is a footer!</h1>
</body>
</html>";
// Instantiate renderer and create PDF
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>");
// Create header and footer
HtmlHeaderFooter htmlHeader = new HtmlHeaderFooter
{
HtmlFragment = headerHtml,
LoadStylesAndCSSFromMainHtmlDocument = true,
};
HtmlHeaderFooter htmlFooter = new HtmlHeaderFooter
{
HtmlFragment = footerHtml,
LoadStylesAndCSSFromMainHtmlDocument = true,
};
// Add to PDF
pdf.AddHtmlHeaders(htmlHeader);
pdf.AddHtmlFooters(htmlFooter);
Imports IronPdf
Private headerHtml As String = "
<html>
<head>
<link rel='stylesheet' href='style.css'>
</head>
<body>
<h1>This is a header!</h1>
</body>
</html>"
Private footerHtml As String = "
<html>
<head>
<link rel='stylesheet' href='style.css'>
</head>
<body>
<h1>This is a footer!</h1>
</body>
</html>"
' Instantiate renderer and create PDF
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>")
' Create header and footer
Private htmlHeader As New HtmlHeaderFooter With {
.HtmlFragment = headerHtml,
.LoadStylesAndCSSFromMainHtmlDocument = True
}
Private htmlFooter As New HtmlHeaderFooter With {
.HtmlFragment = footerHtml,
.LoadStylesAndCSSFromMainHtmlDocument = True
}
' Add to PDF
pdf.AddHtmlHeaders(htmlHeader)
pdf.AddHtmlFooters(htmlFooter)
このコードスニペットの詳細な説明と追加機能を探索するには、包括的なハウツーガイドをご覧ください。
テキストヘッダーとフッター
以下の例では、プレースホルダー値とともに TextHeaderFooter を使用して、ページ番号、URL、日付を示しています。
:path=/static-assets/pdf/content-code-examples/how-to/headers-and-footers-add-textheaderfooter.cs
using IronPdf;
// Instantiate renderer and create PDF
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>");
// Create text header
TextHeaderFooter textHeader = new TextHeaderFooter
{
CenterText = "This is the header!",
};
// Create text footer
TextHeaderFooter textFooter = new TextHeaderFooter
{
CenterText = "This is the footer!",
};
// Add text header and footer to the PDF
pdf.AddTextHeaders(textHeader);
pdf.AddTextFooters(textFooter);
pdf.SaveAs("addTextHeaderFooter.pdf");
Imports IronPdf
' Instantiate renderer and create PDF
Dim renderer As New ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>")
' Create text header
Dim textHeader As New TextHeaderFooter With {
.CenterText = "This is the header!"
}
' Create text footer
Dim textFooter As New TextHeaderFooter With {
.CenterText = "This is the footer!"
}
' Add text header and footer to the PDF
pdf.AddTextHeaders(textHeader)
pdf.AddTextFooters(textFooter)
pdf.SaveAs("addTextHeaderFooter.pdf")
上記のフィールドに加えて、レンダリング時に置換される次のプレースホルダー値も使用できます: {pdf-title}。
このコードスニペットの詳細な説明と追加機能を探索するには、包括的なハウツーガイドをご覧ください。
ページ番号を追加
上記の例と同様に、TextHeaderFooter または HtmlHeaderFooter を使用して、ヘッダーまたはフッターにプレースホルダー値を配置することでページ番号を表示できます。これは、ドキュメントがレンダリングされるときに表示されます。
:path=/static-assets/pdf/content-code-examples/how-to/page-numbers-basic.cs
using IronPdf;
// Create text header
TextHeaderFooter textHeader = new TextHeaderFooter()
{
CenterText = "{page} of {total-pages}"
};
// Create html footer
HtmlHeaderFooter htmlFooter = new HtmlHeaderFooter()
{
HtmlFragment = "<center><i>{page} of {total-pages}<i></center>"
};
// Render a new PDF
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>");
// Add header and footer
pdf.AddTextHeaders(textHeader);
pdf.AddHtmlFooters(htmlFooter);
pdf.SaveAs("pdfWithPageNumber.pdf");
Imports IronPdf
' Create text header
Private textHeader As New TextHeaderFooter() With {.CenterText = "{page} of {total-pages}"}
' Create html footer
Private htmlFooter As New HtmlHeaderFooter() With {.HtmlFragment = "<center><i>{page} of {total-pages}<i></center>"}
' Render a new PDF
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>")
' Add header and footer
pdf.AddTextHeaders(textHeader)
pdf.AddHtmlFooters(htmlFooter)
pdf.SaveAs("pdfWithPageNumber.pdf")
このコードスニペットの詳細な説明と追加機能を探索するには、包括的なハウツーガイドをご覧ください。
DataURIで画像を埋め込む
アセットのディレクトリに依存すると遅くて非効率的な場合があります。そのため、Data URIを使用して画像を埋め込むことで回避策とします。 その方法についての簡単なコードスニペットを示します。
:path=/static-assets/pdf/content-code-examples/how-to/datauris-image.cs
using IronPdf;
using System;
// Read byte from image file
var pngBinaryData = System.IO.File.ReadAllBytes("My_image.png");
// Convert bytes to base64
var ImgDataURI = @"data:image/png;base64," + Convert.ToBase64String(pngBinaryData);
// Import base64 to img tag
var ImgHtml = $"<img src='{ImgDataURI}'>";
ChromePdfRenderer Renderer = new ChromePdfRenderer();
// Render the HTML string
var pdf = Renderer.RenderHtmlAsPdf(ImgHtml);
pdf.SaveAs("datauri_example.pdf");
Imports IronPdf
Imports System
' Read byte from image file
Private pngBinaryData = System.IO.File.ReadAllBytes("My_image.png")
' Convert bytes to base64
Private ImgDataURI = "data:image/png;base64," & Convert.ToBase64String(pngBinaryData)
' Import base64 to img tag
Private ImgHtml = $"<img src='{ImgDataURI}'>"
Private Renderer As New ChromePdfRenderer()
' Render the HTML string
Private pdf = Renderer.RenderHtmlAsPdf(ImgHtml)
pdf.SaveAs("datauri_example.pdf")
このコードスニペットの詳細な説明と追加機能を探索するには、包括的なハウツーガイドをご覧ください。
PDFのためのOpenAI
IronPDFは、Microsoft Semantic Kernelを利用して迅速な要約、クエリ、メモ化を行うためのOpenAIモデルをサポートし、効率性とスケーラビリティを向上させます。 PDFの内容をすばやく要約するためにOpenAIを使用する方法についての簡単なコードスニペットを示します。
:path=/static-assets/pdf/content-code-examples/how-to/openai-summarize.cs
using IronPdf;
using IronPdf.AI;
using Microsoft.SemanticKernel;
using Microsoft.SemanticKernel.Connectors.OpenAI;
using Microsoft.SemanticKernel.Memory;
using System;
using System.Threading.Tasks;
// Setup OpenAI
var azureEndpoint = "<<enter your azure endpoint here>>";
var apiKey = "<<enter your azure API key here>>";
var builder = Kernel.CreateBuilder()
.AddAzureOpenAITextEmbeddingGeneration("oaiembed", azureEndpoint, apiKey)
.AddAzureOpenAIChatCompletion("oaichat", azureEndpoint, apiKey);
var kernel = builder.Build();
// Setup Memory
var memory_builder = new MemoryBuilder()
// optionally use new ChromaMemoryStore("http://127.0.0.1:8000") (see https://github.com/microsoft/semantic-kernel/blob/main/dotnet/notebooks/09-memory-with-chroma.ipynb)
.WithMemoryStore(new VolatileMemoryStore())
.WithAzureOpenAITextEmbeddingGeneration("oaiembed", azureEndpoint, apiKey);
var memory = memory_builder.Build();
// Initialize IronAI
IronDocumentAI.Initialize(kernel, memory);
License.LicenseKey = "<<enter your IronPdf license key here";
// Import PDF document
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Summarize the document
Console.WriteLine("Please wait while I summarize the document...");
string summary = await pdf.Summarize(); // optionally pass AI instance or use AI instance directly
Console.WriteLine($"Document summary: {summary}\n\n");
Imports Microsoft.VisualBasic
Imports IronPdf
Imports IronPdf.AI
Imports Microsoft.SemanticKernel
Imports Microsoft.SemanticKernel.Connectors.OpenAI
Imports Microsoft.SemanticKernel.Memory
Imports System
Imports System.Threading.Tasks
' Setup OpenAI
Private azureEndpoint = "<<enter your azure endpoint here>>"
Private apiKey = "<<enter your azure API key here>>"
Private builder = Kernel.CreateBuilder().AddAzureOpenAITextEmbeddingGeneration("oaiembed", azureEndpoint, apiKey).AddAzureOpenAIChatCompletion("oaichat", azureEndpoint, apiKey)
Private kernel = builder.Build()
' Setup Memory
Private memory_builder = (New MemoryBuilder()).WithMemoryStore(New VolatileMemoryStore()).WithAzureOpenAITextEmbeddingGeneration("oaiembed", azureEndpoint, apiKey)
Private memory = memory_builder.Build()
' Initialize IronAI
IronDocumentAI.Initialize(kernel, memory)
License.LicenseKey = "<<enter your IronPdf license key here"
' Import PDF document
Dim pdf As PdfDocument = PdfDocument.FromFile("wikipedia.pdf")
' Summarize the document
Console.WriteLine("Please wait while I summarize the document...")
Dim summary As String = Await pdf.Summarize() ' optionally pass AI instance or use AI instance directly
Console.WriteLine($"Document summary: {summary}" & vbLf & vbLf)
このコードスニペットの詳細な説明と追加機能を探索するには、包括的なハウツーガイドをご覧ください。
フルPDFカスタマイズ
向きと回転
向き
RenderingOptions クラスの PaperOrientation プロパティを使用すると、PDF のレンダリング方向を指定できます。 この例では、PDF の向きを横向きにレンダリングするために、PdfPaperOrientation.Landscape に設定します。
:path=/static-assets/pdf/content-code-examples/tutorials/csharp-create-pdf-complete-1.cs
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Change paper orientation
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape;
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
pdf.SaveAs("landscape.pdf");
Dim renderer As New ChromePdfRenderer()
' Change paper orientation
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape
Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page")
pdf.SaveAs("landscape.pdf")
回転
PDF ページの回転を設定するには、SetPageRotation メソッドと、入力として PdfPageRotation 列挙型を使用して、ページを回転します。
:path=/static-assets/pdf/content-code-examples/how-to/page-orientation-rotation-set-rotation.cs
using IronPdf;
using IronPdf.Rendering;
using System.Collections.Generic;
PdfDocument pdf = PdfDocument.FromFile("landscape.pdf");
// Set all pages
pdf.SetAllPageRotations(PdfPageRotation.Clockwise90);
// Set a single page
pdf.SetPageRotation(1, PdfPageRotation.Clockwise180);
// Set multiple pages
List<int> selectedPages = new List<int>() { 0, 3 };
pdf.SetPageRotations(selectedPages, PdfPageRotation.Clockwise270);
pdf.SaveAs("rotatedLandscape.pdf");
Imports IronPdf
Imports IronPdf.Rendering
Imports System.Collections.Generic
Private pdf As PdfDocument = PdfDocument.FromFile("landscape.pdf")
' Set all pages
pdf.SetAllPageRotations(PdfPageRotation.Clockwise90)
' Set a single page
pdf.SetPageRotation(1, PdfPageRotation.Clockwise180)
' Set multiple pages
Dim selectedPages As New List(Of Integer)() From {0, 3}
pdf.SetPageRotations(selectedPages, PdfPageRotation.Clockwise270)
pdf.SaveAs("rotatedLandscape.pdf")
PDFの向きと回転を設定し、その追加機能を探るための詳細な説明は包括的なハウツーガイドをご覧ください。
カスタム用紙サイズ
メソッド SetCustomPaperSizeinCentimeters を使用して width と height を設定することにより、PDF のサイズを設定します。 IronPDF は、PaperSize プロパティを使用可能な列挙型のリストに設定することにより、A4 などの標準化されたサイズへの設定もサポートします。
このコードスニペットの詳細な説明と追加機能を探索するには、包括的なハウツーガイドをご覧ください。
センチメートル単位のカスタム用紙サイズ
:path=/static-assets/pdf/content-code-examples/how-to/custom-paper-size-cm.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Set custom paper size in cm
renderer.RenderingOptions.SetCustomPaperSizeinCentimeters(15, 15);
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Custom Paper Size</h1>");
pdf.SaveAs("customPaperSize.pdf");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
' Set custom paper size in cm
renderer.RenderingOptions.SetCustomPaperSizeinCentimeters(15, 15)
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Custom Paper Size</h1>")
pdf.SaveAs("customPaperSize.pdf")
標準用紙サイズ
この例では、プロパティ PaperSize を列挙型 PdfPaperSize.A4 にも設定します。
:path=/static-assets/pdf/content-code-examples/how-to/custom-paper-size-standard-paper-size.cs
using IronPdf;
using IronPdf.Rendering;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Set paper size to A4
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Standard Paper Size</h1>");
pdf.SaveAs("standardPaperSize.pdf");
Imports IronPdf
Imports IronPdf.Rendering
Private renderer As New ChromePdfRenderer()
' Set paper size to A4
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Standard Paper Size</h1>")
pdf.SaveAs("standardPaperSize.pdf")
サポートされている標準サイズのリストについてはこちらをクリックしてください。
標準への準拠
Export PDF/A Format Docs in C
SaveAsPdfUA メソッドを使用して、PDF/UA 標準に準拠した PDF を作成およびエクスポートします。
:path=/static-assets/pdf/content-code-examples/how-to/pdfa-fromfile.cs
using IronPdf;
// Create a PdfDocument object or open any PDF File
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3b);
Imports IronPdf
' Create a PdfDocument object or open any PDF File
Private pdf As PdfDocument = PdfDocument.FromFile("wikipedia.pdf")
' Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3b)
このコードスニペットの詳細な説明と追加機能を探索するには、包括的なハウツーガイドをご覧ください。
Export PDF/UA Format Docs in C
C#でPDFをPDF/Aに変換するには、IronPDfライブラリを使用し、PDF/Aの最新基準に対応し、ファイルの完全性を保証します。 上記の例と同様に、PDF/A 標準で PDF を保存するには、SaveAsPdfA を呼び出します。
:path=/static-assets/pdf/content-code-examples/how-to/pdfua-fromfile.cs
using IronPdf;
// Open PDF File
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Export as PDF/UA compliance PDF
pdf.SaveAsPdfUA("pdf-ua-wikipedia.pdf");
Imports IronPdf
' Open PDF File
Dim pdf As PdfDocument = PdfDocument.FromFile("wikipedia.pdf")
' Export as PDF/UA compliance PDF
pdf.SaveAsPdfUA("pdf-ua-wikipedia.pdf")
この例では、PdfAVersions の列挙を使用して、PDF を PDF/A-3 バリエーションに保存します。
サポートされているPDF/Aバージョンの完全なリストについてはこちらをクリックしてください。
結論
上記で紹介した簡単な例は、IronPDFを使用してPDFを作成する際に解放できる印象的な能力と突出した機能を示しています。
機能をリクエストしたり、IronPDFまたはライセンスについて一般的な質問がある場合はサポートチームに問い合わせてください。 喜んでお手伝いいたします。
よくある質問
IronPDFを使用してC#でPDF文書を作成するにはどうすればよいですか?
IronPDFを使用してC#でPDF文書を作成するには、新しいPDF文書オブジェクトを初期化し、テキスト、画像、表などのコンテンツを追加してファイルを保存します。
IronPDFはPDFの編集にどのような機能を提供していますか?
IronPDFは、水印、ヘッダー、フッター、背景の追加を含むPDFの編集機能を提供します。PDFの結合、分割、圧縮もサポートしています。
IronPDFを使用してPDF文書にフォームを追加できますか?
はい、IronPDFを使用すると、PDF文書にインタラクティブなフォームを追加できます。テキスト入力、チェックボックス、ラジオボタンなどのフォームフィールドを作成できます。
IronPDFを使ってパスワードでPDFを保護できますか?
もちろんです。IronPDFを使用してPDF文書をパスワードで保護できます。アクセスと権限を制御するためのユーザーパスワードとオーナーパスワードを設定できます。
IronPDFを使用してPDFにウォーターマークを適用するにはどうすればよいですか?
IronPDFを使用してPDFにウォーターマークを適用するには、PDFの編集機能を使用して、テキストまたは画像をPDF文書の各ページにウォーターマークとして重ね合わせます。
IronPDFはPDFファイルを圧縮してサイズを小さくすることができますか?
はい、IronPDFのCompressAndSaveAsメソッドは埋め込まれた画像を圧縮し、オプションでPDF構造ツリーを削除し、品質を維持しながらファイルサイズを削減します。CompressAndSaveAs(outputPath, quality, removeStructureTree)を呼び出して、圧縮と保存を一度に行うことができます。
IronPDFを使用してPDFにヘッダーとフッターを追加するにはどうすればよいですか?
IronPDFを使用してPDF文書にヘッダーとフッターを追加するには、各ページの上または下に含めたいテキストや画像を指定します。
IronPDFはPDFページの背景カスタマイズをサポートしていますか?
IronPDFは背景のカスタマイズをサポートしており、PDFページの背景として画像や色を設定し、文書のデザインを向上させることができます。
IronPDFを使用してHTMLをPDFに変換できますか?
はい、IronPDFはHTMLをPDFに変換する機能を提供します。複雑なHTMLコンテンツ、CSSやJavaScriptを含むものをPDF文書にレンダリングできます。
IronPDFをC#プロジェクトで使用するためのシステム要件は何ですか?
IronPDFは、.NET Frameworkおよび.NET Coreと互換性があります。Windows、macOS、Linuxのオペレーティングシステムが必要で、Visual Studioを使用してC#プロジェクトにシームレスに統合されます。
IronPDF は .NET 10 と完全に互換性がありますか?
はい。IronPDFは.NET 10と完全に互換性があります。最新のランタイムですぐに動作し、.NET 10のパフォーマンス向上と言語拡張を活用します。Windows、macOS、Linux、コンテナ環境で、.NETバージョン10、9、8、7、6、5、.NET Standard 2.0以降、.NET Framework 4.6.2以降をサポートしています。

