Referens för konfigurationsalternativ

Referens för konfigurationsalternativ

Referens för konfigurationsalternativ

De flesta inläsnings-, sparnings- och konverteringsoperationer i Aspose.PDF FOSS för .NET accepterar en *Options objekt som konfigurerar beteendet för den operationen. LoadOptions and SaveOptions är de två abstrakta rötterna i den här familjen: varje format-specifik laddare (HtmlLoadOptions, MdLoadOptions, TxtLoadOptions, SvgLoadOptions) härstammar från LoadOptions, och varje format-specifik skrivare (PdfSaveOptions, HtmlSaveOptions, SvgSaveOptions) härstammar från SaveOptions. Den här sidan förklarar hur familjen hänger ihop och dokumenterar alternativklasserna som ännu inte täcks av Konvertering och optimering guide.


Läser in dokument med LoadOptions

Varje *LoadOptions-subklass delar WarningHandler, WarningHandlerName, DisableFontLicenseVerifications och LoadFormat från basklassen LoadOptions, och lägger sedan till egenskaper som är specifika för dess källformat.

// 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);

Sparar till PDF med PdfSaveOptions

PdfSaveOptions styr teckensnittshantering och placering av temporära filer när en Document skrivs ut som PDF. Det ärver CloseResponse, SaveFullPath, WarningHandler, CacheGlyphs och SaveFormat från den delade basen SaveOptions.

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

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

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

Exporterar till HTML och SVG

HtmlSaveOptions och SvgSaveOptions härstammar båda från UnifiedSaveOptions. Utöver bild-/teckensnitt-/layoutkontrollerna som täcks i konverteringsguiden låter HtmlSaveOptions dig också välja dokumentvariant och pagineringsstrategi, medan SvgSaveOptions förlitar sig helt på de ärvda SaveOptions/UnifiedSaveOptions-medlemmarna.

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);

Enstegskonvertering med Document.Convert

Document.Convert accepterar en källa LoadOptions och mål SaveOptions tillsammans i ett enda statiskt anrop, så att du kan konvertera mellan format utan att manuellt öppna, konvertera och avyttra en Document.

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

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

Alternativ för textutdragning

TextExtractionOptions styr hur TextAbsorber (och TextDevice) formaterar extraherad text, oberoende av vilken absorber eller enhetsklass som utför extraktionen.

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;

Optimera utdata med OptimizationOptions

OptimizationOptions är en separat, formatoberoende mekanism för att minska filstorlek. Den tillämpas via Document.OptimizeResources, inte via en *SaveOptions-klass, så den kan kombineras med vilken sparväg som helst.

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");

Tips och bästa praxis

  • Varje *LoadOptions och *SaveOptions underklass ärver WarningHandler/WarningHandlerName - sätt båda tillsammans för att fånga återhämtningsbar diagnostik.
  • Föredra en format-specifik *LoadOptions/*SaveOptions-instans framför att förlita sig på filändelse-baserad formatgissning, särskilt när du arbetar med strömmar istället för filsökvägar.
  • Använd Document.Convert(srcFileName, loadOptions, dstFileName, saveOptions) för engångskonverteringar istället för att manuellt öppna och spara om en Document.
  • OptimizationOptions är oberoende av *SaveOptions-familjen - anropa OptimizeResources före Save för att krympa utdata oavsett målformat.
  • Återanvänd en enda alternativinstans över flera dokument när samma inställningar gäller, istället för att återskapa den varje gång.

Vanliga problem

ProblemOrsakÅtgärd
Relativa bild/CSS-sökvägar löses inte upp när HTML laddasHtmlLoadOptions.BasePath sattes aldrigSkicka basvägen via HtmlLoadOptions(basePath)-konstruktorn
Fel utdataformat genereradesEn felaktig *SaveOptions-subklass eller SaveFormat användes för mål-tilläggetAnvänd *SaveOptions-subklassen som matchar destinationsformatet
OptimizeResources minskar inte filstorlekenOptimizationOptions lämnades på standardinställningarna utan aktiverade reduceringsflaggorAnge explicit RemoveUnusedObjects, CompressObjects och SubsetFonts
Varningar som uppstår under inläsning/skrivning slängs tystWarningHandler angivet utan att också namnge hanterarenStäll in WarningHandler och WarningHandlerName tillsammans

FAQ

Vad är skillnaden mellan LoadOptions och SaveOptions?

LoadOptions konfigurerar hur ett dokument läses från ett icke-PDF-källformat (HTML, Markdown, text, SVG); SaveOptions konfigurerar hur en Document skrivs till ett utdataformat (PDF, HTML, SVG). Varje format-specifik alternativklass härstammar från exakt en av dessa två rötter.

Behöver jag ange LoadOptions när jag öppnar en inbyggd PDF?

Nej. Document.Open och Document-konstruktorn accepterar en enkel filsökväg eller ström för inbyggd PDF-inmatning. *LoadOptions-subklasser krävs endast vid import av ett icke-PDF-källformat, såsom HTML, Markdown, text eller SVG.

Kan jag återanvända samma SaveOptions-instans över flera Save-anrop?

Ja. En alternativinstans är bara ett enkelt konfigurationsobjekt; den innehåller ingen per-dokument-status, så samma PdfSaveOptions eller HtmlSaveOptions-instans kan föras vidare till Save för flera dokument som delar samma inställningar.

Hur skiljer sig OptimizationOptions från de format-specifika SaveOptions-klasserna?

OptimizationOptions konsumeras av Document.OptimizeResources, ett separat steg från sparandet. Det tar bort oanvända objekt/strömmar och komprimerar om bilder på plats, och kan tillämpas innan Save anropas med någon *SaveOptions-subklass.

Har varje källa/målsformat både en LoadOptions- och en SaveOptions-klass?

Inte nödvändigtvis symmetrisk. Till exempel exponerar Markdown och vanlig text för närvarande MdLoadOptions/TxtLoadOptions för import men ingen motsvarande *SaveOptions-motsvarighet, vilket återspeglar i vilken riktning varje format stöds för konvertering.


API Reference Sammanfattning

Klass / MetodBeskrivning
LoadOptionsBas-klass för alla alternativtyper för dokumentladdning
SaveOptionsBas-klass för alla alternativtyper för dokumentlagring
HtmlLoadOptionsAlternativ för att importera HTML som ett PDF-dokument
MdLoadOptionsAlternativ för att importera Markdown som ett PDF-dokument
TxtLoadOptionsAlternativ för att importera vanlig text som ett PDF-dokument
SvgLoadOptionsAlternativ för att importera SVG som ett PDF-dokument
PdfSaveOptionsAlternativ för att spara ett dokument som PDF
HtmlSaveOptionsAlternativ för att spara ett dokument som HTML
SvgSaveOptionsAlternativ för att spara ett dokument som SVG
UnifiedSaveOptionsDelad bas för HtmlSaveOptions och SvgSaveOptions
Document.ConvertStatisk endastegskonvertering med ett LoadOptions/SaveOptions-par
TextExtractionOptionsFormateringskonfiguration för TextAbsorber textutdrag
OptimizationOptionsFormatoberoende dokumentstorlek/resursoptimeringsinställningar
Document.OptimizeResourcesApplicerar en OptimizationOptions-instans på ett dokument

Se även

 Svenska