IronPDF C#에서 RTF를 PDF로 변환하는 방법
IronPDF는 RenderRtfStringAsPdf 및 RenderRtfFileAsPdf 메서드를 ChromePdfRenderer에 대해 사용하여 C#에서 RTF 문서를 PDF로 변환합니다. 이 메서드들은 RTF 문자열 또는 파일 경로를 수락하고 써서 보관하거나 보호하거나 병합할 수 있는 PdfDocument을 반환합니다.
RTF(리치 텍스트 형식)는 마이크로소프트에서 1987년에 도입한 문서 형식입니다. 텍스트와 함께 폰트, 스타일, 색상, 불렛 리스트 같은 형식을 평문으로 저장하여, 에디터 간 잘 전송될 수 있습니다. RTF를 PDF로 변환하면 모든 장치에서 동일하게 보이는 고정 레이아웃 파일이 되고, 암호로 보호할 수 있으며 인쇄 또는 아카이브 준비가 될 수 있습니다.
빠른 시작: IronPDF 사용하여 RTF를 PDF로 변환
리치 텍스트 형식 파일을 단일 호출로 PDF로 렌더링합니다. RenderRtfFileAsPdf을 RTF 경로로 지정한 후, 반환된 문서를 저장하십시오.
최소 워크플로우(5단계)
- RTF 파일을 PDF로 변환하는 C# 라이브러리를 다운로드하세요.
- 변환할 RTF 파일 또는 문자열을 준비하세요.
RenderRtfStringAsPdf메서드를 사용하여 RTF 문자열을 변환합니다.RenderRtfFileAsPdf메서드를 사용하여 RTF 파일에서 PDF 파일로 변환하십시오.- 생성된 PDF 문서를 검토하세요.
RTF 문자열을 PDF로 변환하는 방법은 무엇입니까?
RTF 문자열을 PDF 문서로 변환하려면 RenderRtfStringAsPdf 메서드를 사용하십시오. 문자열 입력은 개발 시간에 생성한 콘텐츠에 적합합니다: 데이터베이스 열에서 가져오거나, API에서 반환하거나, 코드에 작성된 RTF이며, 임시 파일을 작성하거나 정리할 필요가 없습니다. 메서드는 PdfDocument을 반환하므로, 결과를 계속 작업하여 머리말과 꼬리말을 적용하고, 페이지를 병합하거나 주석 및 책갈피를 추가할 수 있습니다.
: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");
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을 호출하기 전에 렌더러에 종이 방향, 여백 및 페이지 크기를 설정하십시오:
:path=/static-assets/pdf/content-code-examples/how-to/rtf-to-pdf-3.cs
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 파일을 변환하려면 어떤 코드가 필요합니까?
: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");
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")
문서 폴더를 변환하기 위해 렌더러 하나를 재사용하고 파일을 순환 반복합니다.
:path=/static-assets/pdf/content-code-examples/how-to/rtf-to-pdf-5.cs
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을 통해 문서를 보호하고, 소유자 비밀번호, 사용자 비밀번호, 복사 및 출력 권한을 설정하십시오:
:path=/static-assets/pdf/content-code-examples/how-to/rtf-to-pdf-6.cs
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");
Imports IronPdf
Imports IronPdf.Security
' Convert RTF to PDF
Dim renderer As New ChromePdfRenderer()
Dim pdf As PdfDocument = 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을 호출하여 이를 결합하십시오. 이는 여러 소스 문서(예: 보고서의 장)에서 하나의 결과물을 생성합니다.
:path=/static-assets/pdf/content-code-examples/how-to/rtf-to-pdf-7.cs
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();
}
Imports IronPdf
Imports System.Collections.Generic
' Create renderer
Dim renderer As New ChromePdfRenderer()
' Convert multiple RTF files
Dim pdfs As New List(Of PdfDocument)()
pdfs.Add(renderer.RenderRtfFileAsPdf("chapter1.rtf"))
pdfs.Add(renderer.RenderRtfFileAsPdf("chapter2.rtf"))
pdfs.Add(renderer.RenderRtfFileAsPdf("chapter3.rtf"))
' Merge PDFs
Dim mergedPdf As PdfDocument = PdfDocument.Merge(pdfs)
' Add page numbers across the merged document
mergedPdf.AddTextFooters(New TextHeaderFooter With {
.CenterText = "Page {page} of {total-pages}",
.FontSize = 12
})
' Save combined document
mergedPdf.SaveAs("combined_document.pdf")
' Clean up individual PDFs
For Each pdf In pdfs
pdf.Dispose()
Next pdf
꼬리말 자리 표시자 {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");
}
[HttpGet]
public IActionResult ConvertRtfToPdf(string rtfContent)
{
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderRtfStringAsPdf(rtfContent);
return File(pdf.BinaryData, "application/pdf", "converted_document.pdf");
}
<HttpGet>
Public Function ConvertRtfToPdf(rtfContent As String) As IActionResult
Dim renderer As New ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderRtfStringAsPdf(rtfContent)
Return File(pdf.BinaryData, "application/pdf", "converted_document.pdf")
End Function
결론
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 병합 및 분할, 페이지 회전, 주석 추가, 책갈피 삽입 등 다양한 페이지 조작을 수행할 수 있습니다.

