AddEmbeddedFile

Dokumenteigenschaften

Beschreibung

Bettet eine Datei als eingebetteten Dateistream in das PDF ein, registriert sie jedoch nicht selbstständig in einer Katalogliste und zeichnet keine anklickbare Anmerkung. Die Funktion gibt ein EmbeddedFileID-Handle zurück, das an AddFileAttachment (zum Anbringen eines Büroklammersymbols auf einer Seite) oder an AddLinkToEmbeddedFile (zum Erstellen eines anklickbaren Hotspots, der die Datei öffnet) übergeben werden kann. Um eine Datei in einem einzigen Aufruf sowohl einzubetten als auch als Anhang auf Dokumentebene aufzulisten, verwenden Sie stattdessen EmbedFile.

Syntax

Delphi

Function TPDFlib.AddEmbeddedFile(Const FileName, MIMEType: WideString): Integer;

ActiveX

Function PDFlib::AddEmbeddedFile(FileName As String, MIMEType As String) As Long

DLL

int DLAddEmbeddedFile(int InstanceID, const wchar_t * FileName, const wchar_t * MIMEType);

Parameter

FileNameVollständiger Pfad und Name der Quelldatei auf dem Datenträger. Ihre Bytes werden unverändert in einen PDF-Stream für eingebettete Dateien kopiert.
MIMETypeDer MIME-Typ der Datei, beispielsweise image/jpeg oder application/xml. Kann eine leere Zeichenfolge sein, wenn der MIME-Typ unbekannt ist.

Rückgabewerte

0Die Datei konnte nicht geöffnet werden oder es ist kein Dokument aktiv
Non-zeroEin EmbeddedFileID-Handle zur Verwendung mit AddFileAttachment, AddLinkToEmbeddedFile oder SetEmbeddedFileStrProperty.

Anmerkungen

Verhalten der PDF-Version: Streams eingebetteter Dateien und Dateispezifikationswörterbücher erfordern PDF 1.3. Ist die aktuelle Dokumentversion niedriger und die Speicherversion nicht gesperrt, hebt AddEmbeddedFile das Dokument automatisch auf PDF 1.3 an. Aufrufe, die die Datei als Anhang auf Dokumentebene registrieren, können eine höhere Version erfordern: AddFileAttachment und EmbedFile verwenden den PDF-1.4-Namensbaum /Names /EmbeddedFiles, und AddLinkToEmbeddedFile verwendet PDF-1.4-Anmerkungsdeckkraft/Darstellungstransparenz.

Eine nur mit AddEmbeddedFile eingebettete Datei ist Teil der PDF-Datei, bleibt in der Leseroberfläche jedoch unsichtbar, bis sie in der Anlagenliste des Dokuments registriert oder von einer Seitenanmerkung referenziert wird. Durch Wiederverwenden derselben EmbeddedFileID mit AddFileAttachment und AddLinkToEmbeddedFile können Sie eine eingebettete Datei sowohl über die Benutzeroberfläche auf Dokument- als auch auf Seitenebene bereitstellen, ohne die eingebetteten Bytes zu duplizieren

PDF/A-Kompatibilität:

Beispiel

// Expose the same embedded file through the document attachment list and a page annotation
var
  FileID: Integer;
begin
  PDF.NewDocument;
  PDF.AddStandardFont('Helvetica');

  FileID := PDF.AddEmbeddedFile('C:\reports\sales.csv', 'text/csv');
  if FileID = 0 then Exit;

  PDF.AddFileAttachment('Source data', FileID);

  PDF.AddPage;
  PDF.PrintText(50, 750, 'See attached source data');
  PDF.AddLinkToEmbeddedFile(50, 720, 16, 16, FileID, 'Source data', 'Open source CSV', 4, 0);

  PDF.SaveToFile('with-attachment.pdf');
end;

Siehe auch

AddFileAttachment, AddLinkToEmbeddedFile, EmbedFile, SetEmbeddedFileAFRelationship, SetEmbeddedFileStrProperty, EmbeddedFileCount