AddEmbeddedFileA

ویژگی‌های سند

توضیحات

حرف A انتهایی نشان‌دهنده نقطه ورودی ANSI (char) در DLL است؛ رابط ActiveX/COM تنها فرم Unicode را نشان می‌دهد. رفتار آن با AddEmbeddedFile یکسان است و آرگومان‌های رشته‌ای با استفاده از صفحه کد فعلی SetAnsiMode تفسیر می‌شوند

فایلی را به‌عنوان استریم فایل تعبیه‌شده درون PDF تعبیه می‌کند اما به‌خودی‌خود فایل را در هیچ فهرست catalog ثبت یا حاشیه‌نویسی قابل کلیکی رسم نمی‌کند. تابع هندل EmbeddedFileIDای برمی‌گرداند که می‌توان به AddFileAttachment (برای چسباندن آیکن گیرهٔ کاغذ روی صفحه) یا AddLinkToEmbeddedFile (برای ساختن نقطهٔ داغ قابل کلیکی که فایل را باز می‌کند) پاس داد. برای تعبیه و ثبت هم‌زمان فایل به‌عنوان پیوست سطح سند با یک فراخوانی، به‌جای آن از EmbedFile استفاده کنید

نحو

Delphi

Function DLAddEmbeddedFileA(InstanceID: Integer; FileName, MIMEType: PAnsiChar): Integer;

DLL

int DLAddEmbeddedFileA(int InstanceID, const char * FileName, const char * MIMEType);

پارامترها

FileNameمسیر و نام کامل فایل منبع روی دیسک. بایت‌های آن بدون هیچ تغییری در یک stream فایل embedشده در PDF کپی می‌شوند
MIMETypeMIME type فایل، مثلاً image/jpeg یا application/xml. وقتی MIME type ناشناخته است ممکن است رشتهٔ خالی باشد

مقادیر بازگشتی

0فایل باز نشد یا سند فعالی وجود ندارد
Non-zeroهندل EmbeddedFileID برای استفاده با AddFileAttachment، AddLinkToEmbeddedFile یا SetEmbeddedFileStrProperty

ملاحظات

رفتار نسخهٔ PDF: استریم‌های فایل تعبیه‌شده و دیکشنری‌های مشخصات فایل به PDF 1.3 نیاز دارند. اگر نسخهٔ فعلی سند پایین‌تر باشد و نسخهٔ ذخیره قفل نشده باشد، AddEmbeddedFile سند را خودکار به PDF 1.3 می‌برد. فراخوانی‌هایی که فایل را به‌عنوان پیوست سطح سند ثبت می‌کنند ممکن است به نسخهٔ بالاتری نیاز داشته باشند: AddFileAttachment و EmbedFile از درخت نام /Names /EmbeddedFiles مربوط به PDF 1.4 و AddLinkToEmbeddedFile از کدری/شفافیت ظاهر حاشیه‌نویسی PDF 1.4 استفاده می‌کنند

فایلی که فقط با AddEmbeddedFile تعبیه شده بخشی از PDF است اما تا وقتی در فهرست پیوست سند ثبت نشده یا توسط حاشیه‌نویسی صفحه‌ای ارجاع نشده برای UI خواننده نامرئی است. استفادهٔ دوباره از همان EmbeddedFileID با AddFileAttachment و AddLinkToEmbeddedFile اجازه می‌دهد یک فایل تعبیه‌شده هم از طریق UI سطح سند و هم سطح صفحه عرضه شود بدون تکرار بایت‌های تعبیه‌شده

PDF/A compatibility:

مثال

// 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;

همچنین ببینید

AddFileAttachment, AddLinkToEmbeddedFile, EmbedFile, SetEmbeddedFileAFRelationship, SetEmbeddedFileStrProperty, EmbeddedFileCount