Use the sample source code below to extract attachments (embedded files) from PDF with Bytescout PDF Extractor SDK.
Select your programming language:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.IO;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using Bytescout.PDFExtractor;
namespace ExtractInfo
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
// This test file will be copied to the project directory on the pre-build event (see the project properties).
String inputFile = Server.MapPath("attachments.pdf");
// Create Bytescout.PDFExtractor.AttachmentExtractor instance
AttachmentExtractor extractor = new AttachmentExtractor();
extractor.RegistrationName = "demo";
extractor.RegistrationKey = "demo";
// Load sample PDF document
extractor.LoadDocumentFromFile(inputFile);
Response.Clear();
Response.ContentType = "text/html";
for (int i = 0; i < extractor.Count; i++)
{
Response.WriteLine("Saving attachment: " + extractor.GetFileName(i) + "
");
// extractor.Save (i, extractor.GetFileName(i)); // you can save into temp folder or save to Stream object to avoid temp files
Response.WriteLine("File size: " + extractor.GetSize(i).ToString() + "
");
}
Response.End();
}
}
}
using System;
using Bytescout.PDFExtractor;
namespace ExtractInfo
{
class Program
{
static void Main(string[] args)
{
// Create Bytescout.PDFExtractor.AttachmentExtractor instance
AttachmentExtractor extractor = new AttachmentExtractor();
extractor.RegistrationName = "demo";
extractor.RegistrationKey = "demo";
// Load sample PDF document
extractor.LoadDocumentFromFile("attachments.pdf");
for (int i = 0; i < extractor.Count; i++)
{
Console.WriteLine("Saving attachment:t" + extractor.GetFileName(i));
// save file into the current folder
extractor.Save(i, extractor.GetFileName(i));
Console.WriteLine("Done.");
}
Console.WriteLine();
Console.WriteLine("Press any key to continue...");
Console.ReadLine();
}
}
}
Imports Bytescout.PDFExtractor
Class Program
Friend Shared Sub Main(args As String())
' Create Bytescout.PDFExtractor.AttachmentExtractor instance
Dim extractor As New AttachmentExtractor()
extractor.RegistrationName = "demo"
extractor.RegistrationKey = "demo"
' Load sample PDF document
extractor.LoadDocumentFromFile("attachments.pdf")
For i = 0 to extractor.Count-1
Console.WriteLine("Save attachment: " + extractor.GetFileName(i))
Extractor.Save i, extractor.GetFileName (i) ' save into the current folder
Console.WriteLine("Done")
Next
Console.WriteLine("Press any key to continue...")
Console.ReadLine()
End Sub
End Class
' Create Bytescout.PDFExtractor.AttachmentExtractor object
Set AttachmentExtractor = CreateObject("Bytescout.PDFExtractor.AttachmentExtractor")
AttachmentExtractor.RegistrationName = "demo"
AttachmentExtractor.RegistrationKey = "demo"
' Load sample PDF document with embedded attachments
AttachmentExtractor.LoadDocumentFromFile("....attachments.pdf")
' walk through attachments and save them
For I = 0 To AttachmentExtractor.Count-1
AttachmentExtractor.Save i, AttachmentExtractor.GetFileName (I) ' save in the current folder with original filename
Next
MsgBox "Done: " & CStr(AttachmentExtractor.Count) & " attachments extracted"
Set extractor = Nothing