TDebenuPDFLibrary

Navigation:  Entwicklerhilfe > Pascal-Referenz

TDebenuPDFLibrary

Previous pageReturn to chapter overviewNext page

Pascal-Objekt 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

Pascal-Referenz

Debenu Supportseiten