Create PDF using C# in .NET Server Application
...
Type type = Type.GetTypeFromProgID("easyPDF.Loader.7");
Loader oLoader = (Loader)Activator.CreateInstance(type);
Printer oPrinter = (Printer)oLoader.LoadObject("easyPDF.Printer.7");
PrintJob oPrintJob = oPrinter.PrintJob;
oPrintJob.PrintOut(Server.MapPath(@".\input.doc"), Server.MapPath(@".\output.pdf"));
...
Write C# Programs to Process and Manipulate PDF in .NET (Merging PDFs, Splitting PDF, Extracting Text from PDF, etc)
- Read the PDFProcessor Object Specification
This object lets you do post-processing of existing PDF files (such as merging multiple PDF files into one, splitting one PDF file into two, and encrypting/decrypting a PDF file)
Merging PDF Files
...
Type type = Type.GetTypeFromProgID("easyPDF.Loader.7");
Loader oLoader = (Loader)Activator.CreateInstance(type);
PDFProcessor oProcessor = (PDFProcessor)oLoader.LoadObject("easyPDF.PDFProcessor.7");
// merge two files using Merge
oProcessor.Merge(Server.MapPath(@".\input1.pdf"), Server.MapPath(@".\input2.pdf"), Server.MapPath(@".\merged.pdf"));
// merge more than two files using MergeBatch
string[] inputFiles = new string[]
{
Server.MapPath(@".\input1.pdf"),
Server.MapPath(@".\input2.pdf"),
Server.MapPath(@".\input3.pdf")
};
oProcessor.MergeBatch(inputFiles, Server.MapPath(@".\merged.pdf"));
...
Splitting PDF
...
Type type = Type.GetTypeFromProgID("easyPDF.Loader.7");
Loader oLoader = (Loader)Activator.CreateInstance(type);
PDFProcessor oProcessor = (PDFProcessor)oLoader.LoadObject("easyPDF.PDFProcessor.7");
// split the document at page 3
oProcessor.Split(Server.MapPath(@".\input.pdf"), Server.MapPath(@".\part1.pdf"), Server.MapPath(@".\part2.pdf"), 3);
...
Extracting Text from PDF
...
Type type = Type.GetTypeFromProgID("easyPDF.Loader.7");
Loader oLoader = (Loader)Activator.CreateInstance(type);
PDFProcessor oProcessor = (PDFProcessor)oLoader.LoadObject("easyPDF.PDFProcessor.7");
// extract text from pages 1 through 4 to a physical file using ExtractText
oProcessor.ExtractText(Server.MapPath(@".\input.pdf"), Server.MapPath(@".\extracted.txt"), null, 0, 3, null, null);
// extract text from a bounding box on page 1 to a string variable using ExtractText2
string text = oProcessor.ExtractText2(Server.MapPath(@".\input.pdf"), 0, 0, 0, 300, 300, null);
...
Write C# Program to Rasterize PDF in .NET
...
Type type = Type.GetTypeFromProgID("easyPDF.Loader.7");
Loader oLoader = (Loader)Activator.CreateInstance(type);
PDFConverter oConverter = (PDFConverter)oLoader.LoadObject("easyPDF.PDFConverter.7");
PDF2Image oPDF2Image = oConverter.PDF2Image;
oPDF2Image.Convert(Server.MapPath(@".\input.pdf"), Server.MapPath(@".\output.jpg"), null, null, null);
...
Write C# Program to Process PDF Form Fields in .NET
Download the input.pdf form (line 27 below)
// this example takes the first two fields in a PDF template
// which are Name and Address, and populates them with
// values of "BCL Technologies" and "Santa Clara, CA"
Type type = Type.GetTypeFromProgID("easyPDF.Loader.7");
Loader oLoader = (Loader)Activator.CreateInstance(type);
PDFDocument oDocument = (PDFDocument)oLoader.LoadObject("easyPDF.PDFDocument.7");
oDocument.Open(Server.MapPath(@".\input.pdf"));
// get all form fields from the PDF
FormFields oFormFields = oDocument.FormFields;
// get the first form field
FormField oFormField = oFormFields[0];
TextField oTextField;
if (oFormField.Type == docFormFieldType.DOC_FRMTYPE_TEXT && oFormField.Name == "Name")
{
// set Name to "BCL Technologies"
oTextField = (TextField)oFormField;
oTextField.Value = "BCL Technologies";
}
// get the second form field
oFormField = oFormFields[1];
if (oFormField.Type == docFormFieldType.DOC_FRMTYPE_TEXT && oFormField.Name == "Address")
{
// set Address to "Santa Clara, CA"
oTextField = (TextField)oFormField;
oTextField.Value = "Santa Clara, CA";
}
oDocument.SaveAs(Server.MapPath(@".\output.pdf"));