Enumok használata
Enums használata
Aspose.PDF FOSS for .NET erősen típusos enumerációkat használ a API során a dokumentum viselkedésének, az oldal megjelenésének és a konverziós formátumok beállításához. A varázsstringek vagy egész számok helyett a legtöbb konfigurációs felület — attól függően, hogy egy PDF-olvasó hogyan nyit meg egy fájlt, vagy milyen formátumba egy Document kimentve — enumerációs értékekkel vannak kifejezve. Ez az oldal bemutatja azokat az enumeráció típusokat, amelyekkel a leggyakrabban találkozik a könyvtár használata közben. Ez egy gondosan összeállított bevezető, nem egy kimerítő katalógus; a teljes enumeráció típuslista és minden tagérték megtekintéséhez lásd a API Reference.
Oldal megjelenítése és elrendezése
PageMode és PageLayout a Document tulajdonságai, amelyek szabályozzák, hogy a PDF-olvasó hogyan jeleníti meg a dokumentumot az első megnyitáskor — legyen szó vázlatokról, miniatűrökről vagy egy adott oszlopelrendezésről.
using var doc = Document.Open("input.pdf");
// Show the outline (bookmarks) panel when the document opens
doc.PageMode = PageMode.UseOutlines;
// Display pages in two columns, first page on the left
doc.PageLayout = PageLayout.TwoColumnLeft;
doc.Save("output.pdf");Oldal színmodell
ColorType leírja egy oldal színmodelljét — RGB, CMYK, szürkeárnyalat, stb. Mind a Page, mind a Color esetén elérhető, lehetővé téve, hogy a logikát az oldal tartalmának tényleges megjelenítése alapján ágaztathasd.
using var doc = Document.Open("input.pdf");
var page = doc.Pages[1];
if (page.ColorType == ColorType.Grayscale)
{
// Apply grayscale-specific handling, e.g. skip color-profile conversion
}Alignment
Számos osztály biztosítja a HorizontalAlignment és a VerticalAlignment lehetőséget az oldalra helyezett tartalom pozicionálásához, míg az annotációs osztályok a TextAlignment és a Justification funkciókat adják hozzá a szöveg specifikus igazításához egy kereten belül. A Table például közvetlenül mindkét igazítási tengelyt biztosít.
var table = new Table();
table.HorizontalAlignment = HorizontalAlignment.Center;
table.VerticalAlignment = VerticalAlignment.Center;
page.Paragraphs.Add(table);FreeTextAnnotation (és a Annotation alaptípus) továbbá hozzáférést biztosít a Justification és a TextAlignment funkciókhoz az annotációban lévő szöveghez:
if (page.Annotations[1] is FreeTextAnnotation freeText)
{
freeText.Justification = Justification.Center;
freeText.Alignment = TextAlignment.Right;
}Betöltési és mentési formátumok
LoadFormat azonosítja a forrásformátumot egy LoadOptions alosztály mögött (például a HtmlLoadOptions.LoadFormat mindig LoadFormat.HTML), míg a SaveFormat kiválasztja a kimeneti formátumot a Document.Save hívásakor.
var loadOptions = new HtmlLoadOptions();
// loadOptions.LoadFormat == LoadFormat.HTML
using var doc = new Document("input.html", loadOptions);
doc.Save("output.html", SaveFormat.Html);Oldal forgatása
Rotation egy oldal forgatási szögét írja le, és a Page.Rotate révén érhető el.
var page = doc.Pages[1];
page.Rotate = Rotation.on90;Tippek és bevált gyakorlatok
- Előnyben részesítsd az enum túlterheléseket a karakterlánc- vagy egész alapú túlterhelésekkel szemben, ahol mindkettő létezik — ezek fordítási időben fogják el a hibás értékeket.
- Illessze össze a
SaveFormatértékét azDocument.Saveszámára megadott fájlkiterjesztéssel; a nem egyezés félrevezető tartalmú vagy használhatatlan kiterjesztésű fájlt eredményez. - Használja a
LoadOptionsalosztályt, amely a forrásformátumához (pl.HtmlLoadOptionsa HTML esetén) tartozik, a formátum automatikus felismerésére való kizárólagos támaszkodás helyett. - Állítsa be egyszerre a
HorizontalAlignmentés aVerticalAlignmentértékét táblázatok vagy bekezdések elhelyezésekor — ha egyet az alapértelmezettén hagyja, az váratlan elhelyezkedést eredményezhet. - Tekintse a
ColorTypeértéket leíró jellegűnek, nem előíró jellegűnek: azt jelzi, hogyan van jelenleg modellezve egy oldal színtartalma, nem pedig egy beállítást, amelyet átkapcsolva színtérkonverziót hajtana végre.
Gyakori problémák
| Probléma | Ok | Javítás |
|---|---|---|
| A mentett fájl tartalma nem megfelelő a kiterjesztéséhez | Hibás SaveFormat érték lett átadva a Document.Save résznek | Adja meg a SaveFormat értéket, amely megfelel a célfájl kiterjesztésének |
| A betöltött HTML/XML/etc. tartalom helytelenül jelenik meg | Általános LoadOptions lett használva a formátum-specifikus alosztály helyett | Használja a forrásformátumnak megfelelő alosztályt, például HtmlLoadOptions |
| A táblázat vagy a megjegyzés a lapon eltolódottnak tűnik | HorizontalAlignment/VerticalAlignment az alapértelmezett értékeken maradt | Az Paragraphs objektumhoz való hozzáadás előtt mindkét tulajdonságot explicit módon állítsa be |
| A PDF váratlan nézői viselkedéssel nyílik meg (nincs vázlat panel, helytelen oszlopelrendezés) | Document.PageMode/Document.PageLayout soha nincs beállítva | Állítsa be mindkét tulajdonságot, mielőtt meghívná a Document.Save |
FAQ
Mi a különbség a PageMode és a PageLayout között?
PageMode szabályozza a megjelenítő felhasználói felületének állapotát megnyitáskor (például, hogy a vázlat vagy a bélyegkép panel látható-e), míg a PageLayout meghatározza, hogyan vannak elrendezve az oldalak (egyetlen oldal, egy oszlop, két oszlop stb.).
Hogyan tudhatom, melyik SaveFormat értéket kell használjam?
Válaszd ki a SaveFormat értéket, amely megfelel a kívánt kimeneti fájltípusnak — például SaveFormat.Html a HTML kimenethez vagy SaveFormat.Pdf a PDF-ként újbóli mentéshez.
Beállíthatom egyszerre a HorizontalAlignment és a VerticalAlignment értékeket ugyanazon objektumon?
Igen. Az olyan osztályok, mint a Table, külön-külön elérhetővé teszik mindkét tulajdonságot, így kombinálhatod őket a tartalom elhelyezéséhez bármelyik tengelyen.
Lehetővé teszi a ColorType, hogy egy oldal színterét konvertáljam?
Nem. A ColorType jelentést készít a jelenleg egy oldalhoz vagy színértékhez rendelt színmodellről; nem hajt végre konverziót.
Hol találhatom meg az összes enumot és minden értéket?
Ez az oldal lefedi a leggyakrabban használt enumokat. A teljes halmazért, beleértve minden tag értékét, lásd a API Reference.
API Reference Összefoglaló
| Enum | Leírás |
|---|---|
PageMode | Hogyan jeleníti meg a PDF-néző a dokumentumot megnyitáskor (vázlatok, miniatűrök, teljes képernyő, stb.) |
PageLayout | Az oldal elrendezése, amikor a dokumentum megjelenik (egyoldalas, oszlopok, stb.) |
ColorType | Egy oldal színmodellje vagy színértéke (RGB, CMYK, szürkeárnyalatos, stb.) |
HorizontalAlignment | Bekezdések, táblázatok vagy megjegyzések vízszintes igazítása |
VerticalAlignment | Bekezdések, táblázatok vagy megjegyzések függőleges igazítása |
TextAlignment | Megjegyzés szövegdobozok vízszintes szövegigazítása |
Justification | Szabad szöveges megjegyzés tartalmának sorkizárása |
LoadFormat | Forrás formátumválasztó, amelyet a LoadOptions alosztályok használnak |
SaveFormat | Kimeneti formátumválasztó, amelyet a Document.Save alosztályok használnak |
Rotation | Oldalforgatási szög, amely a Page.Rotate segítségével érhető el |