How to embed files in a PDF document
How to embed files in a PDF document
This code sample shows how to add embedded files (attachments) to a PDF document.
Embedded documents
PDF specification enables to embed arbitrary files in a PDF document as an attachment. The following code snippet shows how to add such attachments to your document using PDFKit. The resulting files can then be viewed in your PDF application such as Adobe Reader:
// A Document created freshly or from an existing PDF file
Document doc = ...
// Create an EmbeddedFile object from a stream
using (FileStream stream = File.Open(@"path\to\the\attachment", FileMode.Open))
{
// Create an embedded file by from stream and file name to be appear in the PDF document
EmbeddedFile ef = new EmbeddedFile(stream, "file name");
// set optional properties
ef.MimeType = "application/octet-stream";
ef.Description = "description of the attachment";
// add the file to the document
doc.EmbeddedFiles.Add(ef);
}
Using inputstream As New FileStream("..\../input.pdf", FileMode.Open, FileAccess.Read)
Dim doc As New Document(inputstream)
' Create an EmbeddedFile object from a stream
Using stream As FileStream = File.Open("..\../embedded.pdf", FileMode.Open)
' Create an embedded file by from stream and file name to be appear in the PDF document
Dim ef As New EmbeddedFile(stream, "file name")
' set optional properties
ef.MimeType = "application/octet-stream"
ef.Description = "description of the attachment"
' add the file to the document
doc.EmbeddedFiles.Add(ef)
Using outputstream As New FileStream("..\../output.pdf", FileMode.Create, FileAccess.Write)
doc.Write(outputstream)
End Using
End Using
End Using