IronPDF C#에서 RTF를 PDF로 변환하는 방법
IronPDF는 RenderRtfStringAsPdf 및 RenderRtfFileAsPdf 메서드를 ChromePdfRenderer에 대해 사용하여 C#에서 RTF 문서를 PDF로 변환합니다. 이 메서드들은 RTF 문자열 또는 파일 경로를 수락하고 써서 보관하거나 보호하거나 병합할 수 있는 PdfDocument을 반환합니다.
RTF(리치 텍스트 형식)는 마이크로소프트에서 1987년에 도입한 문서 형식입니다. 텍스트와 함께 폰트, 스타일, 색상, 불렛 리스트 같은 형식을 평문으로 저장하여, 에디터 간 잘 전송될 수 있습니다. RTF를 PDF로 변환하면 모든 장치에서 동일하게 보이는 고정 레이아웃 파일이 되고, 암호로 보호할 수 있으며 인쇄 또는 아카이브 준비가 될 수 있습니다.
리치 텍스트 형식 파일을 단일 호출로 PDF로 렌더링합니다. RenderRtfFileAsPdf을 RTF 경로로 지정한 후, 반환된 문서를 저장하십시오.
-
1Install IronPDF with NuGet Package Manager
-
2다음 코드 조각을 복사하여 실행하세요.
new IronPdf.ChromePdfRenderer() .RenderRtfFileAsPdf("input.rtf") .SaveAs("output.pdf");C# -
3실제 운영 환경에서 테스트할 수 있도록 배포하세요.
무료 체험판으로 오늘 프로젝트에서 IronPDF 사용 시작하기
최소 워크플로우(5단계)
- RTF 파일을 PDF로 변환하는 C# 라이브러리를 다운로드하세요.
- 변환할 RTF 파일 또는 문자열을 준비하세요.
RenderRtfStringAsPdf메서드를 사용하여 RTF 문자열을 변환합니다.RenderRtfFileAsPdf메서드를 사용하여 RTF 파일에서 PDF 파일로 변환하십시오.- 생성된 PDF 문서를 검토하세요.
RTF 문자열을 PDF로 변환하는 방법은 무엇입니까?
RTF 문자열을 PDF 문서로 변환하려면 RenderRtfStringAsPdf 메서드를 사용하십시오. 문자열 입력은 개발 시간에 생성한 콘텐츠에 적합합니다: 데이터베이스 열에서 가져오거나, API에서 반환하거나, 코드에 작성된 RTF이며, 임시 파일을 작성하거나 정리할 필요가 없습니다. 메서드는 PdfDocument을 반환하므로, 결과를 계속 작업하여 머리말과 꼬리말을 적용하고, 페이지를 병합하거나 주석 및 책갈피를 추가할 수 있습니다.
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");Imports IronPdf
' Instantiate Renderer
Private renderer As New ChromePdfRenderer()
' RTF string
Private rtf As String = "{\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
Private pdf As PdfDocument = renderer.RenderRtfStringAsPdf(rtf)
' Save the PDF
pdf.SaveAs("pdfFromRtfString.pdf")산출
추가 서식 옵션을 적용하려면 어떻게 해야 하나요?
HTML 렌더링에 사용하는 동일한 RenderingOptions이 이곳에서 적용됩니다. RenderRtfStringAsPdf을 호출하기 전에 렌더러에 종이 방향, 여백 및 페이지 크기를 설정하십시오:
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");Imports IronPdf
Imports IronPdf.Rendering
' Create renderer with custom options
Dim renderer As 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
Dim rtf As String = "{\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
Dim pdf As PdfDocument = renderer.RenderRtfStringAsPdf(rtf)
pdf.SaveAs("formattedRtfToPdf.pdf")페이지 기하학에 대한 더 세부적인 제어를 위해 맞춤 여백 및 맞춤 용지 크기에 대한 가이드를 참조하십시오.
산출
RTF 파일을 PDF로 변환하는 방법은 무엇입니까?
문서 경로를 RenderRtfFileAsPdf으로 전달하십시오. 메서드는 절대 경로와 상대 경로 모두를 허용합니다. 예제를 따라하기 위해 샘플 RTF 파일을 다운로드하세요: sample.rtf. 아래 예제는 해당 파일을 PDF로 렌더링합니다.
입력

RTF 파일을 변환하려면 어떤 코드가 필요합니까?
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");Imports IronPdf
' Instantiate Renderer
Private renderer As New ChromePdfRenderer()
' Render from RTF file
Private pdf As PdfDocument = renderer.RenderRtfFileAsPdf("sample.rtf")
' Save the PDF
pdf.SaveAs("pdfFromRtfFile.pdf")문서 폴더를 변환하기 위해 렌더러 하나를 재사용하고 파일을 순환 반복합니다.
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);
}Imports IronPdf
Imports System.IO
' Create renderer once for efficiency
Dim renderer As New ChromePdfRenderer()
' Get all RTF files in directory
Dim rtfFiles As String() = Directory.GetFiles("C:\RTFDocuments", "*.rtf")
For Each rtfFile As String In rtfFiles
' Convert each RTF file to PDF
Dim pdf As PdfDocument = renderer.RenderRtfFileAsPdf(rtfFile)
' Save with same name but PDF extension
Dim pdfPath As String = Path.ChangeExtension(rtfFile, ".pdf")
pdf.SaveAs(pdfPath)
Next산출
RTF 파일을 변환할 때 흔히 발생하는 문제는 무엇인가요?
RTF 파일을 렌더링할 때 주의해야 할 몇 가지 상황이 있습니다:
- 폰트: RTF에서 명명된 폰트는 변환을 수행하는 기계에 설치되어 있어야 하며 이는 헤드리스 서버와 컨테이너에서 가장 중요합니다. 폰트 관리 가이드는 런타임에 폰트를 등록하는 방법을 설명합니다.
- 대용량 문서: 긴 파일은 비동기 API를 사용하여 요청 쓰레드에서 렌더링하여 애플리케이션이 응답성을 유지할 수 있도록 합니다.
- 국제 문자: 비 라틴 문자를 포함한 문서의 경우 소스 RTF의 인코딩이 바르게 되어 있어야 하며 이를 지원하는 설치된 폰트가 필요합니다.
- 고급 마크업: 중첩된 테이블 및 내장 개체는 정확히 재현되지 않을 수 있습니다. 문서가 이들을 사용하는 경우 소스와 출력물을 비교하십시오.
변환된 PDF에 보안을 추가하려면 어떻게 해야 하나요?
렌더링 후, SecuritySettings을 통해 문서를 보호하고, 소유자 비밀번호, 사용자 비밀번호, 복사 및 출력 권한을 설정하십시오:
using IronPdf;
using IronPdf.Security;
// Convert RTF to PDF
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderRtfFileAsPdf("confidential.rtf");
// Apply security settings
pdf.SecuritySettings.MakePdfDocumentReadOnly("owner_password");
pdf.SecuritySettings.UserPassword = "user_password";
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint;
// Save secured PDF
pdf.SaveAs("secured_document.pdf");
PDF 권한 및 비밀번호 가이드는 전체 제한 옵션을 다룹니다.
여러 RTF 파일을 하나의 PDF로 결합하는 방법은 무엇입니까?
각 RTF 파일을 자체 PdfDocument로 렌더링한 다음, PdfDocument.Merge을 호출하여 이를 결합하십시오. 이는 여러 소스 문서(예: 보고서의 장)에서 하나의 결과물을 생성합니다.
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 across the merged document
mergedPdf.AddTextFooters(new TextHeaderFooter
{
CenterText = "Page {page} of {total-pages}",
FontSize = 12
});
// Save combined document
mergedPdf.SaveAs("combined_document.pdf");
// Clean up individual PDFs
foreach (var pdf in pdfs)
{
pdf.Dispose();
}
꼬리말 자리 표시자 {page} 및 {total-pages}은 병합된 결과 전반에서 페이지 번호를 매깁니다.
웹 엔드포인트에서 변환된 PDF를 반환하는 방법은 무엇입니까?
ASP.NET에서는 RTF를 액션 내부에서 렌더링하고 문서의 바이트를 파일 결과로 반환합니다. BinaryData 속성을 PdfDocument에서 읽고 이를 File에 전송하십시오:
[HttpGet]
public IActionResult ConvertRtfToPdf(string rtfContent)
{
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderRtfStringAsPdf(rtfContent);
return File(pdf.BinaryData, "application/pdf", "converted_document.pdf");
}
결론
IronPDF는 RenderRtfStringAsPdf 및 RenderRtfFileAsPdf을 통해 문자열과 파일 모두에서 RTF를 PDF로 변환하고, 생성된 PdfDocument는 라이브러리의 나머지 요소에 레이아웃, 보안 및 병합을 위해 연결됩니다. 여기부터 RTF 변환을 위에서 보여준 맞춤 여백, 헤더, 푸터와 결합하거나 PDF 변환 전체 목록으로 이동하십시오.
자주 묻는 질문
C#에서 RTF 파일을 PDF로 변환하는 방법은 무엇인가요?
IronPDF를 사용하면 RenderRtfFileAsPdf 메서드를 이용해 단 두 줄의 코드로 RTF 파일을 PDF로 변환할 수 있습니다. ChromePdfRenderer 인스턴스를 생성하고 입력 파일 경로를 지정하여 RenderRtfFileAsPdf 메서드를 호출한 다음, SaveAs 메서드를 사용하여 결과를 저장하면 됩니다.
RTF 문자열을 파일로 저장하지 않고 바로 PDF로 변환할 수 있나요?
네, IronPDF는 RTF 콘텐츠를 문자열에서 PDF 문서로 직접 변환할 수 있는 RenderRtfStringAsPdf 메서드를 제공합니다. 이 기능은 동적으로 생성된 RTF 콘텐츠나 데이터베이스의 데이터를 다룰 때 특히 유용합니다.
RTF 파일을 PDF로 변환할 때 서식과 스타일이 유지되나요?
IronPDF는 문서 변환 경로를 통해 RTF를 렌더링하므로 폰트, 스타일, 색상, 볼드, 이탤릭 및 간단한 글머리 기호 목록과 같은 표준 형식이 신뢰성 있게 변환합니다. 드문 조정 및 포스트 변환 조작은 IronPDF의 RenderingOptions에서
RTF 파일을 PDF로 변환하면 어떤 이점이 있나요?
IronPDF를 사용하여 RTF를 PDF로 변환하면 다음과 같은 여러 가지 이점을 얻을 수 있습니다. 플랫폼 간 손쉬운 접근성, 압축 기능, 인쇄 최적화, 기기에 관계없이 일관된 문서 모양, 향상된 보안 기능, 그리고 전문적인 문서 배포 준비 완료 등이 있습니다.
변환된 PDF 파일에 머리글, 바닥글, 페이지 번호를 추가할 수 있나요?
네, IronPDF는 RTF를 PDF로 변환할 때 모든 RenderingOptions를 지원합니다. 텍스트 및 HTML 머리글과 바닥글을 적용하고, 페이지 번호를 추가하고, 텍스트 및 이미지 삽입을 구현하고, 페이지 크기와 방향을 사용자 지정할 수 있습니다.
RTF 파일을 PDF로 변환한 후 편집이 가능한가요?
물론입니다! IronPDF를 사용하여 RTF 파일에서 PDF 파일을 생성한 후에는 PDF 병합 및 분할, 페이지 회전, 주석 추가, 책갈피 삽입 등 다양한 페이지 조작을 수행할 수 있습니다.
How can I return a converted PDF from a web endpoint using IronPDF?
In ASP.NET, you can convert RTF to PDF and return it from a web endpoint by reading the `PdfDocument`'s `BinaryData` and returning it in the `File` result of an action.
What should I do if my RTF file uses fonts not installed on my conversion machine?
Ensure that the required fonts are installed on the machine performing the conversion or use IronPDF's guides to register fonts at runtime when converting RTF to PDF.
How does IronPDF handle international characters in RTF conversion?
International characters in RTF documents require proper encoding in the source and a suitable font that supports the required glyphs during the conversion process.
Is there a way to convert all RTF files in a directory to PDFs in IronPDF?
Yes, by using a loop to iterate over all RTF files in a directory, you can convert each file to a PDF with IronPDF, ensuring you manage a single `ChromePdfRenderer` instance for efficiency.

커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.