구성 옵션 참조

구성 옵션 참조

대부분의 로드, 저장 및 변환 작업은 Aspose.PDF FOSS for .NET에서 … 를 받아들입니다. *Options 해당 작업의 동작을 구성하는 객체. LoadOptions and SaveOptions 은(는) 이 패밀리의 두 추상 루트입니다: 모든 포맷별 로더(HtmlLoadOptions, MdLoadOptions, TxtLoadOptions, SvgLoadOptions)는 다음으로부터 파생됩니다. LoadOptions, 그리고 모든 포맷별 라이터(PdfSaveOptions, HtmlSaveOptions, SvgSaveOptions)는 다음으로부터 파생됩니다. SaveOptions. 이 페이지에서는 패밀리가 어떻게 결합되는지 설명하고, 이미 다루어진 것이 아닌 옵션 클래스들을 문서화합니다. 변환 및 최적화 가이드.


LoadOptions로 문서 로드

모든 *LoadOptions 하위 클래스는 LoadOptions 기본 클래스에서 WarningHandler, WarningHandlerName, DisableFontLicenseVerifications, LoadFormat를 공유하고, 그 후 자신의 소스 형식에 특화된 속성을 추가합니다.

// HTML: resolve relative images/CSS against a base path
var htmlOptions = new HtmlLoadOptions("assets/");
htmlOptions.IsEmbedFonts = true;
using var htmlDoc = new Document("input.html", htmlOptions);

// Markdown: apply custom CSS while rendering to PDF
var mdOptions = new MdLoadOptions();
mdOptions.CssStyles = "body { font-family: sans-serif; }";
using var mdDoc = new Document("input.md", mdOptions);

// Plain text: control the rendered font size
var txtOptions = new TxtLoadOptions();
txtOptions.FontSize = 11;
using var txtDoc = Document.Open("input.txt", txtOptions);

// SVG: let the page size follow the artwork dimensions
var svgOptions = new SvgLoadOptions();
svgOptions.AdjustPageSize = true;
using var svgDoc = new Document("input.svg", svgOptions);

PdfSaveOptions로 PDF 저장

PdfSaveOptions는 Document을 PDF로 다시 내보낼 때 글꼴 처리와 임시 파일 위치를 제어합니다. 이는 공유된 SaveOptions 기본 클래스에서 CloseResponse, SaveFullPath, WarningHandler, CacheGlyphs, SaveFormat을(를) 상속합니다.

using var doc = Document.Open("input.pdf");

var pdfOptions = new PdfSaveOptions();
pdfOptions.DefaultFontName = "Arial";
pdfOptions.TempPath = "temp/";

doc.Save("output.pdf", pdfOptions);

HTML 및 SVG로 내보내기

HtmlSaveOptions와 SvgSaveOptions은 모두 UnifiedSaveOptions에서 파생됩니다. 변환 가이드에서 다루는 이미지/폰트/레이아웃 제어 외에도, HtmlSaveOptions은 문서 종류와 페이지 매김 전략을 선택할 수 있게 해주며, SvgSaveOptions는 상속된 SaveOptions/UnifiedSaveOptions 멤버에 완전히 의존합니다.

using var doc = Document.Open("input.pdf");

// Fixed-layout HTML5 output, split one file per page
var htmlOptions = new HtmlSaveOptions(HtmlDocumentType.Html5, fixedLayout: true);
htmlOptions.SplitIntoPages = true;
htmlOptions.ImageResolution = 150;
htmlOptions.Title = "Converted Document";
doc.Save("output.html", htmlOptions);

// SVG export configured through the shared SaveOptions members
var svgOptions = new SvgSaveOptions();
svgOptions.SaveFullPath = false;
doc.Save("output.svg", svgOptions);

Document.Convert를 사용한 원스텝 변환

Document.Convert은(는) 단일 정적 호출로 소스 LoadOptions과 대상 SaveOptions를 동시에 받아들여, Document를 수동으로 열고 변환하고 폐기하지 않고도 형식 간 변환을 할 수 있습니다.

var loadOptions = new HtmlLoadOptions();
var saveOptions = new PdfSaveOptions();

Document.Convert("input.html", loadOptions, "output.pdf", saveOptions);

텍스트 추출 옵션

TextExtractionOptions은(는) 추출된 텍스트를 TextAbsorber(및 TextDevice)가 어떤 형식으로 포맷할지를 제어하며, 추출을 수행하는 흡수기나 디바이스 클래스와는 무관합니다.

using var doc = Document.Open("input.pdf");

var extractionOptions = new TextExtractionOptions(TextFormattingMode.Raw);
extractionOptions.ScaleFactor = 1.0;
extractionOptions.IgnoreResourceFontErrors = true;

var absorber = new TextAbsorber(extractionOptions);
doc.Pages[1].Accept(absorber);

string text = absorber.Text;

OptimizationOptions를 사용한 출력 최적화

OptimizationOptions은(는) 파일 크기를 줄이기 위한 별개의 형식 독립 메커니즘입니다. 이는 Document.OptimizeResources을 통해 적용되며, *SaveOptions 클래스를 통해 적용되지 않기 때문에 어떤 저장 경로와도 결합할 수 있습니다.

using var doc = Document.Open("input.pdf");

var optimizationOptions = new OptimizationOptions();
optimizationOptions.RemoveUnusedObjects = true;
optimizationOptions.CompressObjects = true;
optimizationOptions.SubsetFonts = true;
optimizationOptions.ImageCompressionOptions.CompressImages = true;
optimizationOptions.ImageCompressionOptions.ImageQuality = 80;

doc.OptimizeResources(optimizationOptions);
doc.Save("optimized.pdf");

팁 및 모범 사례

  • 모든 *LoadOptions와 *SaveOptions 하위 클래스는 WarningHandler/WarningHandlerName을 상속합니다 - 복구 가능한 진단을 캡처하려면 두 값을 함께 설정하세요.
  • 특히 파일 경로 대신 스트림을 다룰 때는 확장자 기반 형식 추론에 의존하기보다 형식별 *LoadOptions/*SaveOptions 인스턴스를 선호하세요.
  • 수동으로 Document을 열고 다시 저장하는 대신 Document.Convert(srcFileName, loadOptions, dstFileName, saveOptions)를 사용하여 한 번에 변환하십시오.
  • OptimizationOptions는 *SaveOptions 계열과 독립적입니다 - 대상 형식에 관계없이 출력을 축소하려면 OptimizeResources를 Save 전에 호출하세요.
  • 동일한 설정이 적용되는 경우 매번 재구성하는 대신 여러 문서에 걸쳐 단일 옵션 인스턴스를 재사용하십시오.

일반적인 문제

문제원인수정
로드 중에 상대 이미지/CSS 경로가 HTML에서 해결되지 않음HtmlLoadOptions.BasePath가 설정되지 않음기본 경로를 HtmlLoadOptions(basePath) 생성자를 통해 전달
잘못된 출력 형식이 생성됨대상 확장자에 대해 일치하지 않는 *SaveOptions 서브클래스 또는 SaveFormat이 사용되었습니다.대상 형식과 일치하는 *SaveOptions 서브클래스를 사용하십시오.
OptimizeResources은(는) 파일 크기를 줄이지 않습니다.OptimizationOptions이(가) 기본값으로 남아 있으며 감소 플래그가 활성화되지 않았습니다.RemoveUnusedObjects, CompressObjects, 및 SubsetFonts를 명시적으로 설정하십시오.
로드/저장 중에 발생한 경고는 조용히 무시됩니다.WarningHandler이(가) 핸들러 이름을 지정하지 않고 설정되었습니다.WarningHandler와 WarningHandlerName를 함께 설정합니다

FAQ

LoadOptions와 SaveOptions의 차이점은 무엇입니까?

LoadOptions은(는) 비 PDF 소스 형식(HTML, Markdown, 텍스트, SVG)에서 문서를 읽는 방식을 구성합니다; SaveOptions은(는) Document가 출력 형식(PDF, HTML, SVG)으로 기록되는 방식을 구성합니다. 모든 형식별 옵션 클래스는 이 두 루트 중 정확히 하나를 상속합니다.

네이티브 PDF를 열 때 LoadOptions을 지정해야 합니까?

아니요. Document.Open과 Document 생성자는 네이티브 PDF 입력을 위해 일반 파일 경로나 스트림을 허용합니다. *LoadOptions 하위 클래스는 HTML, Markdown, 텍스트, SVG와 같은 비 PDF 소스 형식을 가져올 때만 필요합니다.

여러 번의 Save 호출에 동일한 SaveOptions 인스턴스를 재사용할 수 있습니까?

예. 옵션 인스턴스는 단순한 구성 객체일 뿐이며, 문서별 상태를 보유하지 않으므로 동일한 PdfSaveOptions 또는 HtmlSaveOptions 인스턴스를 동일한 설정을 공유하는 여러 문서에 대해 Save에 전달할 수 있습니다.

OptimizationOptions은(는) 형식별 SaveOptions 클래스와 어떻게 다릅니까?

OptimizationOptions은(는) 저장과는 별개의 단계인 Document.OptimizeResources에 의해 사용됩니다. 사용되지 않는 객체/스트림을 제거하고 이미지를 제자리에서 재압축하며, 어떤 *SaveOptions 하위 클래스를 사용해 Save를 호출하기 전에 적용할 수 있습니다.

모든 소스/대상 형식에 LoadOptions와 SaveOptions 클래스가 모두 있습니까?

반드시 대칭일 필요는 없습니다. 예를 들어, 현재 Markdown과 일반 텍스트는 가져오기를 위해 MdLoadOptions/TxtLoadOptions를 제공하지만 일치하는 *SaveOptions 대응은 없으며, 이는 각 형식이 변환을 지원하는 방향을 나타냅니다.


API Reference 요약

클래스 / 메서드설명
LoadOptions문서 로드 옵션 유형 전체의 기본 클래스
SaveOptions문서 저장 옵션 유형 전체의 기본 클래스
HtmlLoadOptionsPDF 문서로 HTML를 가져오기 위한 옵션
MdLoadOptionsMarkdown을 PDF 문서로 가져오기 위한 옵션
TxtLoadOptions일반 텍스트를 PDF 문서로 가져오는 옵션
SvgLoadOptionsSVG를 PDF 문서로 가져오는 옵션
PdfSaveOptions문서를 PDF로 저장하는 옵션
HtmlSaveOptions문서를 HTML로 저장하는 옵션
SvgSaveOptions문서를 SVG로 저장하는 옵션
UnifiedSaveOptionsHtmlSaveOptions와 SvgSaveOptions에 대한 공유 기반
Document.ConvertLoadOptions/SaveOptions 쌍을 사용한 정적 원스텝 변환
TextExtractionOptionsTextAbsorber 텍스트 추출을 위한 포맷 구성
OptimizationOptions포맷에 독립적인 문서 크기/리소스 최적화 설정
Document.OptimizeResources문서에 OptimizationOptions 인스턴스를 적용합니다

참조

 한국어