AddEmbeddedFile

문서 속성

설명

파일을 PDF 안에 포함 파일 스트림으로 포함하지만, 이 함수만으로는 Catalog 목록에 파일을 등록하거나 클릭 가능한 주석을 그리지 않습니다. 함수는 EmbeddedFileID 핸들을 반환하며, 이를 AddFileAttachment(페이지에 종이 클립 아이콘 연결) 또는 AddLinkToEmbeddedFile(파일을 여는 클릭 가능한 핫스폿 생성)에 전달할 수 있습니다. 한 번의 호출로 파일을 포함하는 동시에 문서 수준 첨부 파일로 나열하려면 대신 EmbedFile을 사용하십시오

구문

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

매개변수

FileName디스크에 있는 소스 파일의 전체 경로와 이름입니다. 해당 바이트는 PDF 포함 파일 스트림에 그대로 복사됩니다
MIMEType파일의 MIME 형식(예: image/jpeg 또는 application/xml)입니다. MIME 형식을 알 수 없으면 빈 문자열일 수 있습니다

반환 값

0파일을 열 수 없거나 활성 문서가 없습니다
Non-zeroEmbeddedFileID 핸들이며 AddFileAttachment, AddLinkToEmbeddedFile 또는 SetEmbeddedFileStrProperty에서 사용합니다

비고

PDF 버전 동작: 내장 파일 스트림과 파일 사양 사전에는 PDF 1.3이 필요합니다. 현재 문서 버전이 더 낮고 저장 버전이 잠겨 있지 않으면 AddEmbeddedFile이 문서를 자동으로 PDF 1.3으로 높입니다. 파일을 문서 수준 첨부 파일로 등록하는 호출에는 더 높은 버전이 필요할 수 있습니다. AddFileAttachment와 EmbedFile은 PDF 1.4 /Names /EmbeddedFiles 이름 트리를 사용하고 AddLinkToEmbeddedFile은 PDF 1.4 주석 불투명도/모양 투명도를 사용합니다

AddEmbeddedFile만으로 포함한 파일은 PDF의 일부이지만 문서 첨부 파일 목록에 등록하거나 페이지 주석에서 참조하기 전에는 리더 UI에 표시되지 않습니다. 같은 EmbeddedFileID를 AddFileAttachment 및 AddLinkToEmbeddedFile과 함께 다시 사용하면 포함된 바이트를 복제하지 않고 포함 파일 하나를 문서 수준 및 페이지 수준 UI 모두에 노출할 수 있습니다

PDF/A 호환성:

예제

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