AddEmbeddedFile
Dokumentegenskaper
Beskrivning
Bäddar in en fil i PDF:en som en inbäddad filström men registrerar inte i sig filen i någon Catalog-lista eller ritar en klickbar annotering. Funktionen returnerar ett EmbeddedFileID-handle som kan skickas till AddFileAttachment (för att fästa en gemikon på en sida) eller AddLinkToEmbeddedFile (för att skapa en klickbar klickyta som öppnar filen). För att både bädda in en fil och lista den som en dokumentnivåbilaga i ett enda anrop, använd i stället 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);
Parametrar
| FileName | Fullständig sökväg och namn på källfilen på disk. Dess byte kopieras oförändrade till en inbäddad filström i PDF:en |
|---|---|
| MIMEType | Filens MIME-typ, till exempel image/jpeg eller application/xml. Kan vara en tom sträng när MIME-typen är okänd |
Returvärden
| 0 | Filen kunde inte öppnas, eller så är inget dokument aktivt |
|---|---|
| Non-zero | Ett EmbeddedFileID-handle att använda med AddFileAttachment, AddLinkToEmbeddedFile eller SetEmbeddedFileStrProperty |
Anmärkningar
PDF-versionsbeteende: inbäddade filströmmar och file specification-dictionarys kräver PDF 1.3. Om dokumentets aktuella version är lägre och sparversionen inte är låst höjer AddEmbeddedFile automatiskt dokumentet till PDF 1.3. Anrop som registrerar filen som en dokumentnivåbilaga kan kräva en högre version: AddFileAttachment och EmbedFile använder PDF 1.4-namnträdet /Names /EmbeddedFiles, och AddLinkToEmbeddedFile använder PDF 1.4 annoteringsopacitet/utseendetransparens.En fil inbäddad med
AddEmbeddedFile ensamt är del av PDF:en men osynlig för läsarens UI tills den registrerats i dokumentets bilagelista eller refererats av en sidannotering. Att återanvända samma EmbeddedFileID med AddFileAttachment och AddLinkToEmbeddedFile låter dig exponera en inbäddad fil genom både dokumentnivå- och sidnivå-UI utan att duplicera de inbäddade bytena.PDF/A-kompatibilitet:
PDF/A-kompatibilitet:
- PDF/A-1, PDF/A-2 (SetPDFAMode-lägena 1–4) – inbäddade filer är förbjudna; anropet avvisas.
- PDF/A-3 (SetPDFAMode-lägena 5, 6 och 7) – inbäddade filer med valfri MIME-typ tillåts. Ange filens relation via SetEmbeddedFileAFRelationship innan du sparar.
Exempel
// 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;Se även
AddFileAttachment, AddLinkToEmbeddedFile, EmbedFile, SetEmbeddedFileAFRelationship, SetEmbeddedFileStrProperty, EmbeddedFileCount