Konfigurációs beállítások referencia
Konfigurációs beállítások hivatkozása
A legtöbb betöltési, mentési és konverziós művelet a Aspose.PDF FOSS .NET esetén elfogad egy *Options objektumot, amely beállítja az adott művelet viselkedését. LoadOptions and SaveOptions a két absztrakt gyökere ennek a családnak: minden formátum-specifikus betöltő (HtmlLoadOptions, MdLoadOptions, TxtLoadOptions, SvgLoadOptions) származik ebből LoadOptions, és minden formátum-specifikus író (PdfSaveOptions, HtmlSaveOptions, SvgSaveOptions) származik ebből SaveOptions. Ez az oldal elmagyarázza, hogyan illeszkedik a család egymáshoz, és dokumentálja az opcióosztályokat, amelyeket a Konverzió és optimalizálás útmutató.
Dokumentumok betöltése LoadOptions segítségével
Minden *LoadOptions alosztály megosztja a LoadOptions alaposztálytól származó WarningHandler, WarningHandlerName, DisableFontLicenseVerifications és LoadFormat elemeket, majd hozzáadja a forrásformátumra jellemző tulajdonságokat.
// 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);PDF-be mentés PdfSaveOptions segítségével
PdfSaveOptions kezeli a betűtípusok kezelését és az ideiglenes fájlok elhelyezését, amikor egy Document fájlt PDF-ként ír vissza. A közös SaveOptions alaposztályból örökli a CloseResponse, SaveFullPath, WarningHandler, CacheGlyphs és SaveFormat elemeket.
using var doc = Document.Open("input.pdf");
var pdfOptions = new PdfSaveOptions();
pdfOptions.DefaultFontName = "Arial";
pdfOptions.TempPath = "temp/";
doc.Save("output.pdf", pdfOptions);Exportálás HTML és SVG formátumba
HtmlSaveOptions és SvgSaveOptions egyaránt a UnifiedSaveOptions osztályból származik. A konverziós útmutatóban szereplő kép/betűtípus/elrendezés vezérlőkön túl, a HtmlSaveOptions lehetővé teszi a dokumentum változat és a lapozási stratégia kiválasztását, míg a SvgSaveOptions teljes mértékben az örökölt SaveOptions/UnifiedSaveOptions tagokra támaszkodik.
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);Egylépéses konverzió a Document.Convert használatával
Document.Convert egy forrás LoadOptions és cél SaveOptions paramétert fogad egyetlen statikus hívásban, így formátumok között konvertálhat anélkül, hogy manuálisan megnyitna, konvertálna és eldobna egy Document-t.
var loadOptions = new HtmlLoadOptions();
var saveOptions = new PdfSaveOptions();
Document.Convert("input.html", loadOptions, "output.pdf", saveOptions);Szövegkinyerési beállítások
TextExtractionOptions szabályozza, hogy a TextAbsorber (és a TextDevice) hogyan formázza a kinyert szöveget, függetlenül attól, hogy melyik abszorber vagy eszközosztály végzi a kinyerést.
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;Kimenet optimalizálása a OptimizationOptions segítségével
OptimizationOptions egy különálló, formátumtól független mechanizmus a fájlméret csökkentésére. A Document.OptimizeResources segítségével kerül alkalmazásra, nem egy *SaveOptions osztályon keresztül, így bármely mentési útvonallal kombinálható.
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");Tippek és bevált gyakorlatok
- Minden
*LoadOptionsés*SaveOptionsalosztály örökli aWarningHandler/WarningHandlerName- állítsd be mindkettőt együtt a helyreállítható diagnosztika rögzítéséhez. - Részesítsd előnyben a formátum-specifikus
*LoadOptions/*SaveOptionspéldányt a kiterjesztés-alapú formátumkövetkeztetés helyett, különösen, ha adatfolyamokkal dolgozol fájlutak helyett. - Használd a
Document.Convert(srcFileName, loadOptions, dstFileName, saveOptions)egyszeri átalakításokhoz ahelyett, hogy manuálisan megnyitnál és újra elmentsz egyDocument-t. OptimizationOptionsfüggetlen a*SaveOptionscsaládtól - hívd aOptimizeResources-t aSaveelőtt, hogy a kimenetet szűkítsd a célformátumtól függetlenül.- Használd újra ugyanazt az opciók példányt több dokumentumon, ha ugyanazok a beállítások érvényesek, ahelyett, hogy minden alkalommal újjáépítenéd.
Gyakori problémák
| Hiba | Ok | Javítás |
|---|---|---|
| Relatív image/CSS útvonalak nem kerülnek feloldásra a(z) HTML betöltésekor | HtmlLoadOptions.BasePath soha nem lett beállítva | Addja át az alapútvonalat a HtmlLoadOptions(basePath) konstruktoron keresztül |
| Hibás kimeneti formátum lett előállítva | Egy nem megfelelő *SaveOptions alosztály vagy SaveFormat lett használva a célkiterjesztéshez | Használd a *SaveOptions alosztályt, amely illeszkedik a célformátumhoz |
OptimizeResources nem csökkenti a fájlméretet | OptimizationOptions alapértelmezett beállításokkal maradt, csökkentő jelzők nélkül | Explicit módon állítsd be a RemoveUnusedObjects, CompressObjects és SubsetFonts értékeket |
| A betöltés/mentés során keletkező figyelmeztetések csendben el lettek dobva | WarningHandler be van állítva anélkül, hogy a kezelőt is megneveznéd | Állítsa be WarningHandler és WarningHandlerName együtt |
FAQ
Mi a különbség a LoadOptions és a SaveOptions között?
LoadOptions beállítja, hogyan olvasódik be egy dokumentum nem PDF forrásformátumból (HTML, Markdown, szöveg, SVG); SaveOptions beállítja, hogyan íródik egy Document egy kimeneti formátumba (PDF, HTML, SVG). Minden formátumspecifikus opció osztály pontosan az egyik gyökérből származik.
Meg kell adnom a LoadOptions beállítást natív PDF megnyitásakor?
Nem. A Document.Open és a Document konstruktor egyszerű fájlútvonalat vagy streamet fogad natív PDF bemenethez. *LoadOptions alosztályok csak akkor szükségesek, ha nem PDF forrásformátumot importálunk, például HTML, Markdown, szöveg vagy SVG.
Újra felhasználhatom ugyanazt a SaveOptions példányt több Save hívásnál?
Igen. Egy opciópéldány csupán egy egyszerű konfigurációs objektum; nem tartalmaz dokumentumonkénti állapotot, ezért ugyanazt a PdfSaveOptions vagy HtmlSaveOptions példányt át lehet adni a Save számára több, azonos beállításokat megosztó dokumentum esetén.
Miben különbözik a OptimizationOptions a formátumspecifikus SaveOptions osztályoktól?
OptimizationOptions a Document.OptimizeResources által felhasználásra kerül, amely a mentéstől külön lépés. Eltávolítja a nem használt objektumokat/streameket, helyben újratömöríti a képeket, és alkalmazható a Save meghívása előtt bármely *SaveOptions alosztállyal.
Minden forrás-/célformátumnak van mind a LoadOptions, mind a SaveOptions osztálya?
Nem feltétlenül szimmetrikus. Például a Markdown és a egyszerű szöveg jelenleg MdLoadOptions/TxtLoadOptions-t tesznek elérhetővé importáláshoz, de nincs megfelelő *SaveOptions megfelelő, ami tükrözi, hogy melyik irányban támogatott az egyes formátumok átalakítása.
API Reference Összefoglaló
| Osztály / Metódus | Leírás |
|---|---|
LoadOptions | Alaposztály minden dokumentumbetöltési opciótípushoz |
SaveOptions | Alaposztály minden dokumentummentési opciótípushoz |
HtmlLoadOptions | Beállítások a HTML PDF dokumentummá importálásához |
MdLoadOptions | Beállítások a Markdown PDF dokumentummá importálásához |
TxtLoadOptions | Lehetőségek a sima szöveg PDF-dokumentummá importálásához |
SvgLoadOptions | Lehetőségek az SVG PDF-dokumentummá importálásához |
PdfSaveOptions | Lehetőségek a dokumentum PDF formátumban mentéséhez |
HtmlSaveOptions | Lehetőségek a dokumentum HTML formátumban mentéséhez |
SvgSaveOptions | Opciók a dokumentum SVG formátumban mentéséhez |
UnifiedSaveOptions | Közös alap HtmlSaveOptions és SvgSaveOptions számára |
Document.Convert | Statikus egylépéses konverzió egy LoadOptions/SaveOptions páros használatával |
TextExtractionOptions | Formázási konfiguráció a TextAbsorber szövegkinyeréshez |
OptimizationOptions | Formátumfüggetlen dokumentumméret/erőforrás-optimalizálási beállítások |
Document.OptimizeResources | Alkalmaz egy OptimizationOptions példányt egy dokumentumra |