C#でPDFを作成する方法
プログラムでPDFを作成することは、ヘッダーやフッターを追加する際や互換性の問題に直面した際に、しばしば重大な課題を呈することがあります。 幸いなことに、IronSoftwareは、さまざまなPDF作成機能を直感的で分かりやすい方法に統合することで、このプロセスを簡素化し、開発者がプロジェクトにすぐに取り組むことを可能にします。
IronPDFを使用すると、シームレスに図形、テキスト、画像、ヘッダー、フッターを追加できます。 また、ドキュメントの向き、サイズ、メタデータを設定し、PDF/UAやPDF/Aなどのさまざまな標準にエクスポートすることができます。 さらに、既存のアプリケーションにIronPDFを統合してPDFを表示したり、プログラムで文書を印刷したりすることも簡単です。
このチュートリアルでは、各機能を探求し、IronPDFが開発体験をどのように向上させるかを紹介します。 これにより、任意のサポート環境およびプラットフォームで展開できる、読みやすく再利用可能なコードコンポーネントを作成することができます。
この記事の終わりには、IronPDFを使用して、ニーズに合ったスタイリッシュでユニークなPDFを作成するための確固たる理解を持つことができるでしょう。
IronPDFのインストール開始とこの記事に記載されたチュートリアルの例に従うために、このクイックインストールガイドをご覧ください。セットアップをスムーズに進めるのを手助けしてくれます。
クイックスタート: IronPDFを使って最初のPDFを作成する
IronPDFを使用して、C#でわずか数行のコードで最初のPDFを簡単に作成します。 このクイックガイドでは、新しいPDFドキュメントを初期化し、コンテンツを追加して保存する方法を示し、ライブラリを初めて使用する開発者にスムーズなスタートを保証します。 数秒でPDF作成に飛び込み、簡単にC#アプリケーションの機能を拡張しましょう。
今すぐ NuGet で PDF を作成してみましょう:
NuGet パッケージ マネージャーを使用して IronPDF をインストールします
このコード スニペットをコピーして実行します。
new IronPdf.PdfDocument(500, 500).SaveAs("output.pdf");実際の環境でテストするためにデプロイする
目次
完璧なPDFをデザイン
空のPDFを作成
IronPDFを使用して空のPDFを作成することは、直感的で簡単です。ほんの数行のコードで済みます。 最初に新しいPdfDocumentクラスを起動し、寸法を指定してSaveAsメソッドを呼び出して保存します。
:path=/static-assets/pdf/content-code-examples/how-to/create-new-pdfs.csusing IronPdf;
PdfDocument pdf = 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.csusing 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);このコードスニペットの詳細な説明と追加機能を探索するには、包括的なハウツーガイドをご覧ください。
テキストヘッダーとフッター
以下の例では、プレースホルダー値を使用してページ番号、URL、日付を示すTextHeaderFooterを使っています。
:path=/static-assets/pdf/content-code-examples/how-to/headers-and-footers-add-textheaderfooter.csusing 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");上記のフィールドに加えて、{page}、{total-pages}、{url}、{date}、{time}、{html-title}、{pdf-title}など、レンダリング時に置き換えられるように利用可能なプレースホルダー値もあります。
このコードスニペットの詳細な説明と追加機能を探索するには、包括的なハウツーガイドをご覧ください。
ページ番号を追加
上記の例と同様に、TextHeaderFooterまたはHtmlHeaderFooterを使用して、プレースホルダーの値をヘッダーまたはフッターに配置し、文書がレンダリングされたときにページ番号を表示することができます。
:path=/static-assets/pdf/content-code-examples/how-to/page-numbers-basic.csusing 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");このコードスニペットの詳細な説明と追加機能を探索するには、包括的なハウツーガイドをご覧ください。
DataURIで画像を埋め込む
アセットのディレクトリに依存すると遅くて非効率的な場合があります。そのため、Data URIを使用して画像を埋め込むことで回避策とします。 その方法についての簡単なコードスニペットを示します。
:path=/static-assets/pdf/content-code-examples/how-to/datauris-image.csusing 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");このコードスニペットの詳細な説明と追加機能を探索するには、包括的なハウツーガイドをご覧ください。
PDFのためのOpenAI
IronPDFは、Microsoft Semantic Kernelを利用して迅速な要約、クエリ、メモ化を行うためのOpenAIモデルをサポートし、効率性とスケーラビリティを向上させます。 PDFの内容をすばやく要約するためにOpenAIを使用する方法についての簡単なコードスニペットを示します。
:path=/static-assets/pdf/content-code-examples/how-to/openai-summarize.csusing 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");このコードスニペットの詳細な説明と追加機能を探索するには、包括的なハウツーガイドをご覧ください。
フル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");
回転
PDFページの回転を設定するには、SetPageRotationメソッドとPdfPageRotation列挙型を入力として使用してページを回転させます。
:path=/static-assets/pdf/content-code-examples/how-to/page-orientation-rotation-set-rotation.csusing 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");PDFの向きと回転を設定し、その追加機能を探るための詳細な説明は包括的なハウツーガイドをご覧ください。
カスタム用紙サイズ
SetCustomPaperSizeinCentimetersメソッドを使用して、widthおよびheightを設定することにより、PDFの寸法を設定します。 IronPDFは、PaperSizeプロパティを使用して、A4などの標準サイズに設定することもサポートしています。
このコードスニペットの詳細な説明と追加機能を探索するには、包括的なハウツーガイドをご覧ください。
センチメートル単位のカスタム用紙サイズ
:path=/static-assets/pdf/content-code-examples/how-to/custom-paper-size-cm.csusing 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");標準用紙サイズ
この例では、PaperSizeプロパティをPdfPaperSize.A4の列挙型に設定しています。
:path=/static-assets/pdf/content-code-examples/how-to/custom-paper-size-standard-paper-size.csusing 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");サポートされている標準サイズのリストについてはこちらをクリックしてください。
標準への準拠
C#でPDF/A形式ドキュメントをエクスポート
SaveAsPdfUAメソッドを使用して、PDF/UA標準に準拠するPDFを作成およびエクスポートします。
:path=/static-assets/pdf/content-code-examples/how-to/pdfa-fromfile.csusing 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);このコードスニペットの詳細な説明と追加機能を探索するには、包括的なハウツーガイドをご覧ください。
C#でPDF/UA形式ドキュメントをエクスポート
C#でPDFをPDF/Aに変換するには、IronPDfライブラリを使用し、PDF/Aの最新基準に対応し、ファイルの完全性を保証します。 上記の例と同様に、SaveAsPdfAを呼び出して、PDFをPDF/A標準で保存します。
:path=/static-assets/pdf/content-code-examples/how-to/pdfua-fromfile.csusing IronPdf;
// Open PDF File
PdfDocument pdf = 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にはPDFファイルを圧縮する機能が含まれています。これにより、質を保ちながらファイルサイズを削減でき、ストレージや共有に役立ちます。
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以降をサポートしています。






