Diese Klasse repräsentiert ein PDF-Dokument. Sie ermöglicht es, seinen Inhalt zu lesen und zu rendern. Die Klasse verhält sich wie ein Nur-Lesen-Array. So erzeugen Sie aus einer PDF-Datei in Gambas ein neues PDF-Dokument vom Typ PdfDocument:
Dim hPdfDocument As PdfDocument hPdfDocument = New PdfDocument ( Path As String [ , Owner As String, Password As String ] )
Mit Hilfe der Klasse PdfPage können Sie eine bestimmte Seite eines PDF-Dokumentes anhand ihres Indexes als virtuelles Objekt zurückgeben. Index ist dabei ein Wert zwischen 0 und dem Wert der Eigenschaft PdfDocument.Max = PdfDocument.Count -1.
Dim hPdfDocument As PdfDocument Dim hPdfPage As PdfPage hPdfPage = hPdfDocument [ Index As Integer ]
Die Klasse PdfDocument verfügt über die folgenden Eigenschaften:
Eigenschaft | Datentyp | Beschreibung |
---|---|---|
Antialiasing | Boolean | Gibt den Wert zurück oder setzt, ob Antialiasing für das Zeichnen von Seiten verwendet wird oder nicht. |
Author | String | Gibt den Autor des PDF-Dokuments zurück. |
Count | Integer | Gibt die Anzahl der Seiten des PDF-Dokuments zurück. |
Max | Integer | Gibt die Anzahl der Seiten des Dokuments minus eins zurück; Max = Count -1. |
CreationDate | Date | Gibt das Datum der Erzeugung des PDF-Dokuments zurück. |
Creator | String | Gibt den Ersteller des PDF-Dokuments zurück. |
Producer | String | Gibt den Hersteller des PDF-Dokuments zurück. |
Index | .PdfDocumentIndex | Gibt den Index (Inhaltsverzeichnis) eines PDF-Dokuments als virtuelles Objekt vom Typ .PdfDocumentIndex zurück. |
Keywords | String | Gibt eine komma-separierte Liste als String zurück. |
Linearized | Boolean | Gibt an, ob das Dokument linearisiert ist oder nicht. Die Linearisierung von PDF-Inhalt ermöglicht einen effizienten inkrementellen Zugriff auf die PDF-Datei in einer Netzwerkumgebung. |
ModificationDate | Date | Gibt das Datum der letzten Änderung des PDF-Dokuments zurück. |
Resolution | Float | Gibt die Auflösung des PDF-Dokuments in DPI zurück oder legt sie fest. |
Rotation | Integer | Liefert oder setzt die globale Seitendrehung in Grad. Der Wert muss ein Vielfaches von 90 sein: 0, 90, 180 oder 270. Der Drehwinkel kann auch negativ wie zum Beispiel -90 sein. |
Subject | String | Gibt den Betreff des PDF-Dokuments zurück. |
TextAntialiasing | Boolean | Gibt den Wert zurück oder setzt, ob der Text beim Zeichnen einer Seite anti-aliased ist. |
TextHinting | Boolean | Gibt den Wert zurück oder setzt, ob beim Zeichnen einer Seite Texthinweise verwendet wurden. |
Title | String | Gibt den Titel des PDF-Dokuments zurück. |
Version | String | Gibt die Version des PDF-Dokuments als Zeichenfolge zurück. |
Tabelle 23.12.1.1.1 : Eigenschaften der Klasse PdfDocument
Hinweise
sMessage = Format(Stat(FMain.DocumentPath).LastChange, "dd.mm.yyyy hh:nn:ss") Print sMessage
Die Klasse PdfDocument verfügt nur über eine Methode:
Methode | Rückgabetyp | Beschreibung |
---|---|---|
Find ( Label As String ) | Integer | Gib den Seitenindex der Seite zurück, die den Bezeichner 'Label' hat. Wurde keine Seite gefunden, so wird -1 zurückgegeben. |
Tabelle 23.12.1.2.1 : Methode der Klasse PdfDocument
Auf der Seite https://wiki.ubuntuusers.de/poppler-utils/ finden Sie die kurze Beschreibung von Kommandozeilen-Programmen der Sammlung poppler-utils, mit denen Sie u.a. Informationen zu PDF-Dokumenten gewinnen oder diese zum Beispiel in eine XML-Datei konvertieren können.
Hier folgt ein Beispiel für das Auslesen der in einem PDF-Dokument verwendeten Schriftarten (Fonts), das so mit Hilfe der Gambas-Komponente gb.poppler nicht möglich ist:
hans@pc-a-mint20:~/Dokumente$ pdffonts k23.12.pdf name type encoding emb sub uni object ID ------------------------------------ ----------------- ---------------- --- --- --- --------- BAAAAA+LiberationSans TrueType WinAnsi yes yes yes 48 0 CAAAAA+DejaVuSansMono TrueType WinAnsi yes yes yes 33 0 DAAAAA+LiberationSans-Italic TrueType WinAnsi yes yes yes 43 0 EAAAAA+LiberationSans-Bold TrueType WinAnsi yes yes yes 38 0