Home > Handbuch > Entwicklerhilfe > Pascal-Referenz > TDebenuPDFLibrary TDebenuPDFLibrary |
Dieses Objekt ist veraltet. Bitte verwenden Sie es nicht mehr in neuen Skripten.
Umfangreiche PDF-Funktionsbibliothek
Methoden
Siehe Dokumentation der Bibliothek
Beschreibung
TDebenuPDFLibrary ist ein umfangreiches SDK für Arbeit mit PDF-Dokumenten.
Beispiel 1
PDF-Tag "Creator" mit Direct Access-Funktionen zeigen:
unit QuickPdfExample;
interface
implementation
procedure Main;
var LPDF: TDebenuPDFLibrary;
LFileName: string;
LFile: integer;
begin
// Aktuell im Archiv markiertes PDF-Dokument...
LFileName := OfficeManager.Archive.ActiveDatasetDocument.FieldByName('FILENAME').AsString;
if not SameText(ExtractFileExt(LFileName), '.pdf') then
raise Exception.Create('Im Archiv ist kein PDF-Dokument markiert.');
// PDF-Objekt erzeugen (wird mit der Office Manager-Lizenz freigeschaltet)...
LPDF := TDebenuPDFLibrary.Create;
try
LFile := LPDF.DAOpenFileReadOnly(LFileName, '');
if LFile = 0 then
raise Exception.Create(Format('Datei "%s" konnte nicht geöffnet werden.', [LFileName]));
ShowMessage(LPDF.DAGetInformation(LFile, 'Creator'));
LPDF.DACloseFile(LFile);
finally
LPDF.Free;
end;
end;
end.
Beispiel 2
QRCode in ein PDF zeichnen:
unit QuickPdfExample;
interface
implementation
function GetDesktopPath: string;
begin
result := OfficeManager.ExecuteOmMacroLine('{OS:Desktop}');
end;
procedure Main;
var LPDF: TDebenuPDFLibrary;
s, LFileName: string;
begin
// Aktuell im Archiv markiertes PDF-Dokument...
s := OfficeManager.Archive.ActiveDatasetDocument.FieldByName('FILENAME').AsString;
if not SameText(ExtractFileExt(s), '.pdf') then
raise Exception.Create('Im Archiv ist kein PDF-Dokument markiert.');
// Datei auf den Desktop kopieren...
LFileName := GetDesktopPath + 'Mein Test-PDF.pdf';
if FileExists(LFileName) then
if MessageDlg(Format('Zieldatei "%s" ist bereits vorhanden. Überschreiben?', [LFileName]),
mtConfirmation, [mbYes,mbNo], 0) <> mrYes
then exit;
if not CopyFile(s, LFileName, false) then
raise Exception.Create(Format('Datei konnte nicht nach "%s" kopiert werden.', [LFileName]));
// PDF-Objekt erzeugen (wird mit der Office Manager-Lizenz freigeschaltet)...
LPDF := TDebenuPDFLibrary.Create;
try
if LPDF.LoadFromFile(LFileName, '') <> 1 then
raise Exception.Create(Format('Datei "%s" konnte nicht geöffnet werden.', [LFileName]));
if LPDF.SelectPage(1) <> 1 then
raise Exception.Create('Seite 1 konnte nicht gewählt werden');
if LPDF.DrawQRCode(2, 800, 150, 'Mein QRCode', 0, 0) <> 1 then
raise Exception.Create('QR Code konnte nicht gezeichnet werden');
if LPDF.SaveToFile(LFileName) <> 1 then
raise Exception.Create(Format('Datei "%s" konnte nicht gespeichert werden.', [LFileName]));
exit;
finally
LPDF.Free;
end;
end;
end.
Siehe auch
Debenu Supportseiten