C#を使用してRTFをPDFに変換する方法 | IronPDF

C#でリッチテキスト形式をPDFに変換する

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

IronPdfはC#でわずか2行のコードでRTFドキュメントをPDFにシームレスに変換し、RTF文字列とファイルの両方をサポートしながら、一貫したクロスプラットフォームのドキュメント表示のためにフォーマット、フォント、スタイルを保持します。

RTFはRich Text Formatの略で、Microsoftが開発したドキュメントファイル形式です。 フォント、スタイル、画像などのテキスト形式をサポートしますが、DOCXやPDFのような他のドキュメント形式ほどの機能はありません。 このフォーマットは1987年に導入され、フォーマットコマンドを組み込んだプレーンテキストという性質から、クロスプラットフォームでの文書交換の標準となっています。

IronPDFは文字列とファイルの両方からRTFをPDFに変換します。 RTFをPDFに変換すると、アクセシビリティの向上、圧縮機能、印刷の最適化など、いくつかの利点があります。 これにより、文書はすべてのプラットフォームで一貫した外観を維持し、安全性を保ち、印刷に対応します。 RTFファイルとは異なり、PDFは表示デバイスやオペレーティングシステムに関係なく正確なレイアウトを維持するため、プロフェッショナルな文書の配布に最適です。

クイックスタート:IronPDFを使用したRTFからPDFへの変換

IronPdfを使ってRTFファイルを高品質なPDFに変換しましょう。 わずか2行のコードで、リッチテキスト形式のドキュメントを、配布や印刷に適した、安全でアクセス可能なPDFに変換します。 IronPDFは.NET C#プロジェクトへのシームレスな統合を保証し、RTFからPDFへの変換のための簡単な方法を提供します。

Nuget Icon今すぐ NuGet で PDF を作成してみましょう:

  1. NuGet パッケージ マネージャーを使用して IronPDF をインストールします

    PM > Install-Package IronPdf

  2. このコード スニペットをコピーして実行します。

    new IronPdf.ChromePdfRenderer()
         .RenderRtfFileAsPdf("input.rtf")
         .SaveAs("output.pdf");
  3. 実際の環境でテストするためにデプロイする

    今すぐ無料トライアルでプロジェクトに IronPDF を使い始めましょう
    arrow pointer


RTF文字列をPDFに変換するには?

RenderRtfStringAsPdf メソッドを使用して、RTF文字列をPDFドキュメントに変換します。 テキストと HTML ヘッダーとフッターテキストと画像のスタンプページ番号、カスタム ページ サイズと方向の適用など、RenderingOptionsの全範囲は、このレンダリング方法にも適用できます。 PDF ドキュメントを生成した後、マージ、分割、ページの回転などの PDF ページ操作や、注釈ブックマークを適用することができます。

なぜファイル変換ではなく RTF 文字列変換を使用するのですか?

RTF文字列変換は、動的に生成されるコンテンツを扱う場合や、データベース、API、ユーザー入力からRTFデータを受け取る場合に特に役立ちます。 このアプローチにより、一時ファイルの作成が不要になり、Webアプリケーションのパフォーマンスが向上します。 また、文字列ベースの変換により、変換前のRTFコンテンツの操作や前処理が容易になります。

:path=/static-assets/pdf/content-code-examples/how-to/rtf-to-pdf-from-string.cs
using IronPdf;

// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// RTF string
string rtf = @"{\rtf1\ansi\deff0{\fonttbl{\f0 Arial;}}{\colortbl;\red0\green0\blue0;}\cf0This is some \b bold \b0 and \i italic \i0 text.}";

// Render from RTF string
PdfDocument pdf = renderer.RenderRtfStringAsPdf(rtf);

// Save the PDF
pdf.SaveAs("pdfFromRtfString.pdf");
$vbLabelText   $csharpLabel

RTF文字列変換の一般的な使用例は何ですか?

RTF文字列変換は、次のような場面でよく使用されます:

  • メールテンプレート:RTF 形式のメール本文を PDF に変換してアーカイブする
  • データベースレポート: データベースに保存されているRTFデータを印刷可能なPDFに変換します。
  • 動的ドキュメント生成:ユーザーが作成した RTF コンテンツからリアルタイムで PDF を作成します。
  • APIインテグレーション:外部サービスからの RTF レスポンスを PDF フォーマットに処理する。

より高度な文書生成シナリオについては、DOCX を PDF に変換する、または PDF レポートを生成するを参照してください。

追加の書式オプションを適用するにはどうすればよいですか?

IronPDFはRenderingOptionsクラスを通して広範なカスタマイズオプションを提供します。 ページの向き、余白、用紙サイズなどを設定します:

using IronPdf;
using IronPdf.Rendering;

// Create renderer with custom options
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape;
renderer.RenderingOptions.MarginTop = 50;
renderer.RenderingOptions.MarginBottom = 50;
renderer.RenderingOptions.MarginLeft = 25;
renderer.RenderingOptions.MarginRight = 25;

// RTF string with formatting
string rtf = @"{\rtf1\ansi\deff0{\fonttbl{\f0 Times New Roman;}{\f1 Arial;}}
{\colortbl;\red255\green0\blue0;\red0\green0\blue255;}
\f0\fs24 This is a heading\line
\f1\fs20\cf1 This text is red\line
\cf2 This text is blue\line
\b Bold text\b0 and \i italic text\i0}";

// Convert with custom options
PdfDocument pdf = renderer.RenderRtfStringAsPdf(rtf);
pdf.SaveAs("formattedRtfToPdf.pdf");
using IronPdf;
using IronPdf.Rendering;

// Create renderer with custom options
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape;
renderer.RenderingOptions.MarginTop = 50;
renderer.RenderingOptions.MarginBottom = 50;
renderer.RenderingOptions.MarginLeft = 25;
renderer.RenderingOptions.MarginRight = 25;

// RTF string with formatting
string rtf = @"{\rtf1\ansi\deff0{\fonttbl{\f0 Times New Roman;}{\f1 Arial;}}
{\colortbl;\red255\green0\blue0;\red0\green0\blue255;}
\f0\fs24 This is a heading\line
\f1\fs20\cf1 This text is red\line
\cf2 This text is blue\line
\b Bold text\b0 and \i italic text\i0}";

// Convert with custom options
PdfDocument pdf = renderer.RenderRtfStringAsPdf(rtf);
pdf.SaveAs("formattedRtfToPdf.pdf");
$vbLabelText   $csharpLabel

余白とページレイアウトのカスタマイズの詳細については、カスタム余白カスタム用紙サイズのガイドを参照してください。

RTFファイルをPDFに変換するには?

RTFファイルをPDFに変換するには、RenderRtfFileAsPdfメソッドを使用します。 提供されたリンクからサンプルRTFファイルをダウンロードしてください。 この例では、そのサンプルファイルをPDF文書に変換する方法を示します。 このメソッドは、絶対ファイルパスと相対ファイルパスの両方を受け入れるため、さまざまなアプリケーションアーキテクチャに柔軟に対応できます。

変換前のRTFファイルはどのように見えますか?

Microsoft Word で、太字、斜体、箇条書き、下線テキストなどの書式付きテキスト例を含む RTF ファイルを表示しています。

RTFファイルを変換するにはどのようなコードが必要ですか?

:path=/static-assets/pdf/content-code-examples/how-to/rtf-to-pdf-from-file.cs
using IronPdf;

// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Render from RTF file
PdfDocument pdf = renderer.RenderRtfFileAsPdf("sample.rtf");

// Save the PDF
pdf.SaveAs("pdfFromRtfFile.pdf");
$vbLabelText   $csharpLabel

複数のRTFファイルをバッチ処理するために、単純なループを実装します:

using IronPdf;
using System.IO;

// Create renderer once for efficiency
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Get all RTF files in directory
string[] rtfFiles = Directory.GetFiles(@"C:\RTFDocuments", "*.rtf");

foreach (string rtfFile in rtfFiles)
{
    // Convert each RTF file to PDF
    PdfDocument pdf = renderer.RenderRtfFileAsPdf(rtfFile);

    // Save with same name but PDF extension
    string pdfPath = Path.ChangeExtension(rtfFile, ".pdf");
    pdf.SaveAs(pdfPath);
}
using IronPdf;
using System.IO;

// Create renderer once for efficiency
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Get all RTF files in directory
string[] rtfFiles = Directory.GetFiles(@"C:\RTFDocuments", "*.rtf");

foreach (string rtfFile in rtfFiles)
{
    // Convert each RTF file to PDF
    PdfDocument pdf = renderer.RenderRtfFileAsPdf(rtfFile);

    // Save with same name but PDF extension
    string pdfPath = Path.ChangeExtension(rtfFile, ".pdf");
    pdf.SaveAs(pdfPath);
}
$vbLabelText   $csharpLabel

出力PDFはどのように見えますか?

RTFファイルを変換するときによくある問題は何ですか?

RTFファイルをPDFに変換する際、いくつかの一般的な課題に遭遇することがあります:

1.フォントの互換性: RTFファイルで使用されるフォントがシステムにインストールされていることを確認してください。 Web サーバーやクラウドのデプロイメントについては、managing fontsweb fonts のガイドを参照してください。 2.大きなファイルの処理:大きな RTF ドキュメントには、async 変換を実装して、アプリケーションのメイン スレッドをブロックしないようにします。 3.メモリ使用:複数のファイルを処理するときは、メモリリークを防ぐために PdfDocument オブジェクトを適切に破棄してください。 出力ファイルサイズを縮小するための IronPDF 圧縮について学んでください。 4.特殊文字: UTF-8サポートに関するガイドを確認し、国際的な文字のエンコーディングが適切であることを確認してください。

変換したPDFにセキュリティを追加するにはどうすればよいですか?

RTFファイルをPDFに変換した後、パスワードとアクセス許可を追加してセキュリティを強化します:

using IronPdf;
using IronPdf.Security;

// Convert RTF to PDF
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderRtfFileAsPdf("confidential.rtf");

// Apply security settings
pdf.SecuritySettings.RemovePasswordsAndEncryption();
pdf.SecuritySettings.MakePdfDocumentReadOnly("owner_password");
pdf.SecuritySettings.SetUserPassword("user_password");
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint;

// Save secured PDF
pdf.SaveAs("secured_document.pdf");
using IronPdf;
using IronPdf.Security;

// Convert RTF to PDF
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderRtfFileAsPdf("confidential.rtf");

// Apply security settings
pdf.SecuritySettings.RemovePasswordsAndEncryption();
pdf.SecuritySettings.MakePdfDocumentReadOnly("owner_password");
pdf.SecuritySettings.SetUserPassword("user_password");
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint;

// Save secured PDF
pdf.SaveAs("secured_document.pdf");
$vbLabelText   $csharpLabel

より高度なセキュリティオプションについては、PDFの権限とパスワードに関する包括的なガイドをご覧ください。

高度な RTF から PDF への変換テクニック

複数のRTFファイルを1つのPDFにまとめる

複数のRTF文書を扱う場合は、それらを1つのPDFにまとめます。 これは、包括的なレポートやドキュメントパッケージを作成する際に特に役立ちます:

using IronPdf;
using System.Collections.Generic;

// Create renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Convert multiple RTF files
List<PdfDocument> pdfs = new List<PdfDocument>();
pdfs.Add(renderer.RenderRtfFileAsPdf("chapter1.rtf"));
pdfs.Add(renderer.RenderRtfFileAsPdf("chapter2.rtf"));
pdfs.Add(renderer.RenderRtfFileAsPdf("chapter3.rtf"));

// Merge PDFs
PdfDocument mergedPdf = PdfDocument.Merge(pdfs);

// Add page numbers
for (int i = 0; i < mergedPdf.PageCount; i++)
{
    mergedPdf.AddTextFooter($"Page {i + 1} of {mergedPdf.PageCount}", 
        FontFamily.Arial, 12);
}

// Save combined document
mergedPdf.SaveAs("combined_document.pdf");

// Clean up individual PDFs
foreach (var pdf in pdfs)
{
    pdf.Dispose();
}
using IronPdf;
using System.Collections.Generic;

// Create renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Convert multiple RTF files
List<PdfDocument> pdfs = new List<PdfDocument>();
pdfs.Add(renderer.RenderRtfFileAsPdf("chapter1.rtf"));
pdfs.Add(renderer.RenderRtfFileAsPdf("chapter2.rtf"));
pdfs.Add(renderer.RenderRtfFileAsPdf("chapter3.rtf"));

// Merge PDFs
PdfDocument mergedPdf = PdfDocument.Merge(pdfs);

// Add page numbers
for (int i = 0; i < mergedPdf.PageCount; i++)
{
    mergedPdf.AddTextFooter($"Page {i + 1} of {mergedPdf.PageCount}", 
        FontFamily.Arial, 12);
}

// Save combined document
mergedPdf.SaveAs("combined_document.pdf");

// Clean up individual PDFs
foreach (var pdf in pdfs)
{
    pdf.Dispose();
}
$vbLabelText   $csharpLabel

RTFからPDFへの変換をWebアプリケーションに統合する

ASP.NETアプリケーションの場合、IronPDFはウェブフレームワークとシームレスに統合します。 以下は、PDFダウンロードエンドポイントの作成例です:

[HttpGet]
public IActionResult ConvertRtfToPdf(string rtfContent)
{
    // Create renderer
    ChromePdfRenderer renderer = new ChromePdfRenderer();

    // Convert RTF string to PDF
    PdfDocument pdf = renderer.RenderRtfStringAsPdf(rtfContent);

    // Return as file download
    byte[] pdfBytes = pdf.BinaryData;
    return File(pdfBytes, "application/pdf", "converted_document.pdf");
}
[HttpGet]
public IActionResult ConvertRtfToPdf(string rtfContent)
{
    // Create renderer
    ChromePdfRenderer renderer = new ChromePdfRenderer();

    // Convert RTF string to PDF
    PdfDocument pdf = renderer.RenderRtfStringAsPdf(rtfContent);

    // Return as file download
    byte[] pdfBytes = pdf.BinaryData;
    return File(pdfBytes, "application/pdf", "converted_document.pdf");
}
$vbLabelText   $csharpLabel

ウェブ統合に関するより多くの例については、ASPX to PDFPDFをエクスポートするのチュートリアルをご覧ください。

次に何ができるのかを見てみましょうか? チュートリアルのページはこちらをご覧ください:PDFを変換する

よくある質問

C#でRTFファイルをPDFに変換するにはどうすればよいですか?

IronPDFを使えば、RenderRtfFileAsPdfメソッドを使って、たった2行のコードでRTFファイルをPDFに変換することができます。ChromePdfRendererインスタンスを作成し、入力ファイルのパスを指定してRenderRtfFileAsPdfを呼び出し、SaveAsメソッドで結果を保存するだけです。

RTF文字列をファイルとして保存せずに、直接PDFに変換できますか?

はい、IronPDFはRenderRtfStringAsPdfメソッドを提供し、文字列のRTFコンテンツを直接PDFドキュメントに変換することができます。これは動的に生成されたRTFコンテンツやデータベースのデータを扱うときに特に便利です。

RTFからPDFへの変換では、書式やスタイルは保持されますか?

はい、IronPdfはフォント、スタイル、画像、レイアウトを含むすべてのRTFフォーマットを変換時に保持します。この変換により、あなたのドキュメントはすべてのプラットフォームやデバイスで一貫した外観を保つことができます。

RTFをPDFに変換するメリットは何ですか?

IronPDFでRTFをPDFに変換することで、プラットフォーム間での容易なアクセシビリティ、圧縮機能、印刷の最適化、表示デバイスに関係なく一貫したドキュメントの外観、強化されたセキュリティ機能、プロフェッショナルなドキュメントの配布準備など、いくつかの利点が得られます。

変換したPDFにヘッダー、フッター、ページ番号を追加できますか?

はい、IronPDFはRTFをPDFに変換する際にRenderingOptionsをフルサポートしています。テキストとHTMLのヘッダーとフッターの適用、ページ番号の追加、テキストと画像のスタンプの実装、ページサイズと向きのカスタマイズが可能です。

RTFから変換した後、PDFを操作することは可能ですか?

もちろんです!IronPdfを使ってRTFからPDFを生成した後、PDFの結合や分割、ページの回転、注釈の追加、しおりの実装など様々なページ操作を行うことができます。

カーティス・チャウ
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

準備はできましたか?
Nuget ダウンロード 17,012,929 | バージョン: 2025.12 リリース