PDFium Component Docs

PDFium VCL programozási példák

Alapvető dokumentumműveletek

PDF-dokumentum betöltése és megjelenítése

__PROTECTED_0__

Új PDF-dokumentum létrehozása

__PROTECTED_1__

Szövegműveletek

Szöveg kinyerése PDF-ből

__PROTECTED_2__

Szöveg keresése

__PROTECTED_3__

Szöveg hozzáadása formázással

__PROTECTED_4__

Karakter- és betűtípus-metaadatok vizsgálata

__PROTECTED_5__

A Demo\Delphi\FontProperties, a Demo\CBuilder\FontProperties és a Demo\Lazarus\FontProperties projektek ugyanazokat a metaadatokat mutatják meg mind a TPdf, mind a TPdfView segítségével

Többkategóriás tartalomkinyerési jelentés összeállítása

A Demo\Delphi\ContentExtractionLab, a Demo\CBuilder\ContentExtractionLab és a Demo\Lazarus\ContentExtractionLab projektek egyetlen munkafolyamatba fogják össze a tartalomkinyerést. PDF-et nyitnak vagy hoznak létre, lehetővé teszik a metaadatok, az oldalszöveg, az oldalobjektumok, a képek, a mellékletek, a hivatkozások, a jegyzetek, a könyvjelzők, valamint a betű- és karakterjellemzők kiválasztását, majd egy összegzést és egy részletes TXT vagy JSON jelentést készítenek. A labor tartalmaz all / none kategóriaválasztást, jelentés vágólapra másolást és forrás-PDF mentési műveleteket is, így a létrehozott mintafájl a kinyerési jelentés mellett megőrizhető. A régebbi ExtractText, ExtractImages, Attachment és FontProperties demók továbbra is fókuszált példák maradnak; az ExtractText támogatja az oldaltartomány és oldalelválasztó opciókat az oldalankénti szövegkimenet előállításához Delphi, C++Builder és Lazarus alatt, míg a ContentExtractionLab a keresztmetszeti leltárpélda

Űrlapműveletek

Munkavégzés űrlapmezőkkel

__PROTECTED_21__

Kitöltött űrlapértékek lapba lapítása

__PROTECTED_22__

Képműveletek

Képek kinyerése

__PROTECTED_23__

Képek hozzáadása

__PROTECTED_24__

Jegyzetműveletek

Munkavégzés jegyzetekkel

__PROTECTED_25__

Rajzolási műveletek

Alakzatok rajzolása

__PROTECTED_26__

Navigáció és könyvjelzők

Munkavégzés könyvjelzőkkel

__PROTECTED_27__

Munkavégzés nevezett célokkal

__PROTECTED_28__

Mellékletműveletek

Munkavégzés mellékletekkel

__PROTECTED_29__

Oldalkezelés

Oldalműveletek

__PROTECTED_30__

Mentés és tömörítés

Mentés tömörítéssel

__PROTECTED_31__

PDF/A-1b archiválási kimenet létrehozása

__PROTECTED_32__

PDF/A megfelelőség ellenőrzése

__PROTECTED_33__

Több PDF-szabvány vizsgálata a StandardsLabben

A Demo\Delphi\StandardsLab, a Demo\CBuilder\StandardsLab és a Demo\Lazarus\StandardsLab projektek PDF-et nyitnak vagy hoznak létre, majd futtatják a ValidatePdfA, ValidatePdfUa, ValidatePdfE, ValidatePdfX, ValidatePdfR és ValidatePdfVT ellenőrzéseket, végül egy rácsban jelenítik meg az észlelt megfelelőségi szintet és hibaszámot. A mentésgombok a SaveAsPdfA, SaveAsPdfUa, SaveAsPdfE, SaveAsPdfX, SaveAsPdfR és SaveAsPdfVT hívásait használják, így a jelölő kimeneti munkafolyamat külön egyéni segéd nélkül is látható

Előellenőrzési jelentések készítése

A FPdfPreflightReport egység a ValidatePdfA, ValidatePdfUa, ValidatePdfE, ValidatePdfX, ValidatePdfR és ValidatePdfVT ellenőrzéseket egyetlen jelentésobjektumba fogja össze. A Demo\Delphi\PreflightReport, a Demo\Lazarus\PreflightReport és a Demo\CBuilder\PreflightReport minták lehetővé teszik a szabványok kiválasztását, az összegzés létrehozását, az állapot, a prioritás, a hibakategóriák, a kategóriaszámlálók, a következő lépések, a hibakódok és az ajánlott műveletek megtekintését, a nézet váltását szöveg, Markdown, JSON és CSV között, valamint TXT, HTML, Markdown, JSON vagy CSV jelentések exportálását. A Delphi GUI minta egy Action Plan előnézetet is hozzáad, amely a nem teljesítő szabványokat, prioritásokat, hibakódokat és javaslatokat javítási ellenőrzőlistává sűríti. A Demo\Delphi\PreflightReportCli ugyanazt a jelentési útvonalat teszi elérhetővé konzolos munkafolyamatként bemeneti és kimeneti argumentumokkal, opcionális jelszóval, a plan / actionplan kimeneti formátumokkal, szabványszűréssel, egyfájlos attach=output.pdf jelentésbeágyazással, failon= CI kilépési kódokkal, batch=list.txt feldolgozással, batchdir=folder könyvtárvizsgálattal opcionális rekurzióval és stabil útvonal szerinti rendezéssel, outdir=reports jelentésirányítással, azonos nevű bemeneti fájlokhoz ütközésbiztos jelentésnevekkel, TXT / JSON / HTML összegzésekkel összesített és szabványállapot-összegekkel, CSV sorsorozatokkal ismételt futtatási beállításokkal, valamint argumentum nélküli mintamóddal szkriptekhez és CI feladatokhoz. A létrehozott jelentés közli, hogy a beépített ellenőrzők marker szintű és kiválasztott fájlszintű ellenőrzéseket fednek le, így a teljes tartalomszintű előellenőrzés továbbra is átadható egy dedikált ellenőrző motornak

Streameléses betöltés és nagy dokumentumok

PDF betöltése igény szerint a LoadCustomDocument használatával

__PROTECTED_67__

Aszinkron megszakítás és fokozatos renderelés

Együttműködő megszakítási tokenek

__PROTECTED_68__

Cancellable Progressive Page Render

__PROTECTED_69__

Running Renders on a Background Thread with TPdfFuture

__PROTECTED_70__

Transform Matrices

Composing Translate / Scale / Rotate / Skew

__PROTECTED_71__

Page Composition

Importing a Subset of Pages by Index

__PROTECTED_72__

N-up Composite Output

__PROTECTED_73__

Reordering Pages In-Place

__PROTECTED_74__

Vízjelezés Form XObject oldalújrahasználattal

__PROTECTED_75__

A Demo\Delphi\WatermarkStamp, a Demo\Lazarus\WatermarkStamp és a Demo\CBuilder\WatermarkStamp projektek futtatható munkafolyamattá alakítják ezt a mintát: létrehoznak egy cél PDF-et és egy újrahasználható bélyeg-PDF-et, a bélyegoldalt a CreateXObjectFromPage segítségével csomagolják, ugyanazt a Form XObjectot beszúrják minden céloldalra, a TPdfMatrix transzformációkat középre igazított vízjelekhez és jobb felső bélyegekhez alkalmazzák, és opcionális oldalszámcímkéket adnak hozzá a mentés előtt

Képbeszúrás (közvetlen AddImage túlterhelések)

Regisztrált képfájl vagy TBitmap hozzáadása

__PROTECTED_81__

A Demo\Delphi\ImageToPDF, a Demo\CBuilder\ImageToPDF és a Demo\Lazarus\ImageToPDF projektek teljes kötegelt munkafolyamattá alakítják ezt: több képfájlt választanak ki, előnézetet adnak a kijelölt elemről, minden képhez egy PDF-oldalt hoznak létre, az egyes képeket A4 álló vagy fekvő oldalra méretezik, elmentik az eredményt, majd megnyitják a létrehozott PDF-et

Nézet keresési kiemelés

Minden egyezés kiemelése az aktuális oldalon

__PROTECTED_85__

Nézetelrendezés és oldal színe

Illesztési mód és oldalháttér

__PROTECTED_86__

A nézetviselkedés vizsgálata a ViewerInteractionLabben

A Demo\Delphi\ViewerInteractionLab, a Demo\CBuilder\ViewerInteractionLab és a Demo\Lazarus\ViewerInteractionLab projektek egyetlen tömör formában tartják a modern TPdfView interakciós felületet: mintapéldányt nyitnak vagy hoznak létre, váltják a DisplayMode értéket, alkalmazzák a FitMode beállítást, módosítják a PageColor értéket, elforgatják az oldalakat, a HighlightSearchText használatával kiemelik az aktuális oldal találatait, engedélyezik vagy tiltják a felhasználói szövegkijelölést, megvizsgálják a SelectedText értéket, meghívják a SelectAll, CopySelectionToClipboard és ClearSelection műveleteket, miközben az egér az oldal fölött mozog, és a DeviceToPage koordináták a státuszsávban frissülnek

Szöveg keresése és kijelölése a SearchAndSelectben

A Demo\Delphi\SearchAndSelect, a Demo\CBuilder\SearchAndSelect és a Demo\Lazarus\SearchAndSelect projektek önálló mintákká alakítják a keresési és kijelölési nézetmunkafolyamatot. PDF-et nyitnak vagy hoznak létre, az összes oldal találatait oldalszámmal, karakterindexszel és előnézeti szöveggel listázzák, támogatják az Előző / Következő navigációt és a találatok dupla kattintásos ugrását, az aktuális oldal találatait a HighlightSearchText segítségével kiemelik, elérhetővé teszik az egyezésérzékeny és teljes szavas beállításokat, kapcsolják az AllowUserTextSelection értékét, előnézetet adnak a SelectedText tartalmáról, gombokkal vezérlik a SelectAll, CopySelectionToClipboard és ClearSelection műveleteket, és lehetővé teszik az egyszerű és a kétoldalas megjelenítési módok közötti váltást

PDF nyomtatási beállítások olvasása a PrintPreferencesben

A Demo\Delphi\PrintPreferences, a Demo\CBuilder\PrintPreferences és a Demo\Lazarus\PrintPreferences projektek nyomtatás előtt beolvassák a szerzői nyomtatási beállításokat. Megjelenítik a PrintCopies, PrintPageRanges, PrintScaling és PrintPaperHandling értékeket, a szerző által megadott példányszámot és tartományt át tudják másolni a nyomtatási mezőkbe, és megmutatják, miként képezi le a SetPdfPrintPaperHandlingDevMode a PDF kétoldalas szándékát egy Windows DEVMODE struktúrára

Szabványos PDF-nyomtatás a PrintPDF-ben

A Demo\Delphi\PrintPDF, a Demo\CBuilder\PrintPDF és a Demo\Lazarus\PrintPDF projektek a szabványos nyomtatási munkafolyamatot mutatják be: PDF-et nyitnak, oldalelőnézetet adnak, az oldalhatárokat és példányszámot a platform nyomtatási párbeszédablakában választják ki, tiszteletben tartják az összefűzési módot, minden oldalt a TPdf.RenderPage segítségével rajzolnak ki, és megszakítható nyomtatási előrehaladást jelenítenek meg. A Delphi minta húzott PDF-fájlokat is fogad a gyors betöltéshez

Gyors többoldalas megjelenítés a MultiPageViewerben

A Demo\Delphi\MultiPageViewer, a Demo\CBuilder\MultiPageViewer és a Demo\Lazarus\MultiPageViewer projektek a folyamatos, a kétoldalas és a borítófigyelembe vevő megjelenítést gyakorolják a szokásos oldallapozási és nagyítási munkafolyamatokkal együtt. Nagyon nagy PDF-eknél a megnyitástól az első oldalig tartó sebesség és a renderelés válaszkészsége is jól mérhető velük: a nagy fájlokkal végzett tesztekben azok a 2.x GB méretű dokumentumok, amelyek az Acrobatot vagy a Foxitot 20-30 másodpercre is késleltethetik az első nézet előtt, a PDFiumPas nézetútvonalán szinte azonnal használhatóvá válhatnak

Egymás melletti áttekintés a SplitViewben

A Demo\Delphi\SplitView, a Demo\CBuilder\SplitView és a Demo\Lazarus\SplitView projektek egymás melletti PDF-áttekintést mutatnak be. A C++Builder és Lazarus minták a két- vagy hárompaneles összehasonlításra, az aktív nézet kiválasztására, az opcionális szinkronizált navigációs parancsokra, a megosztott nagyítási előbeállításokra, valamint a kijelölt nézet vagy az összes betöltött nézet forgatására összpontosítanak. Ezekkel a mintákkal nagy dokumentumok hasonlíthatók össze úgy, hogy az első használható nézet és a későbbi oldalak renderelése is válaszkész maradjon; ugyanazok a 2.x GB méretű PDF-fájlok, amelyek az Acrobatot vagy a Foxitot 20-30 másodpercre is késleltethetik a megnyitáskor, a PDFiumPas nézetútvonalán szinte azonnal használhatóvá válhatnak

PDF-kockázati felület vizsgálata a SecurityAuditban

A Demo\Delphi\SecurityAudit, a Demo\CBuilder\SecurityAudit és a Demo\Lazarus\SecurityAudit projektek csak olvasható módban nyitnak meg egy PDF-et, és felsorolják az engedélyállapotot, a beágyazott mellékleteket, a dokumentum JavaScript műveleteket, az URI és Launch hivatkozásjegyzeteket, a webhivatkozásokat, az aláírásösszegzéseket, az XFA állapotot, a V8 segédelérhetőséget és a nem támogatott funkciók visszahívásait. Ugyanazok az összegző és találati sorok TXT auditjelentésként menthetők vagy másolhatók, illetve strukturált JSON-ként is elmenthetők. Ezeket a mintákat gazdagépalkalmazási kockázati panelként tervezték, nem kártevőészlelésre

Nézet hivatkozáskezelés

Biztonságos kattintásos követés műveletenkénti engedélylistákkal

__PROTECTED_131__

Nézet űrlapvezérlő-szerkesztés

Kijelölés és visszavonás / újra

__PROTECTED_132__

A nézet lezárása kioszkokhoz

Oldallapozási gesztusok letiltása

__PROTECTED_133__

Bélyegképes oldalpanelek

TPdfThumbnailView összekapcsolása a TPdfView-val

__PROTECTED_134__

Együttműködően megszakítható kötegelt export

Többfájlos PDF-JPG átalakítás fájlonkénti és oldalonkénti előrehaladással

__PROTECTED_135__

Nézetkoordináták és találatvizsgálat

Az aktuális oldal illesztése és a kurzor alatti szöveg vizsgálata

__PROTECTED_136__

Hibakezelés

Robusztus PDF-műveletek

__PROTECTED_137__

Tagged PDF és akadálymentesítés

Tagged PDF felismerése és a struktúrafán való végigjárás

__PROTECTED_138__

Nyomtatási mód kiválasztása

Setting EMF / PostScript / Image-Mask Print Mode

__PROTECTED_139__

Reading Author-Intended Print Settings

__PROTECTED_140__

Document JavaScript Actions

Enumerating Name-Tree JavaScript

__PROTECTED_141__

Performance Tips

Optimizing PDF Operations

__PROTECTED_142__