ABCpdf - Simple...

ABCpdf is designed to be simple to use. It does things the way you'd expect.

Take an example. Open an existing PDF document and add a page number to the first page.

First we create a PDF document object. We read in the existing PDF, add a page number to the top left and save the modified document.

Dim doc As New Doc()
doc.Read("c:\old_doc.pdf")
doc.AddText("Page 1")
doc.Save("c:\new_doc.pdf")

That's all there is to it! How much simpler could you get?

Yet Powerful...

ABCpdf is designed to be powerful. If you know about PDF you can use ABCpdf to access and manipulate virtually any aspect of your PDF documents.

This example is complicated. It pre-supposes a knowledge of the internal structure of PDF documents. If you're new to PDF don't worry if it doesn't all make sense. Just remember - if you need it - it's there!

Let's suppose you have a large PDF containing economic data for every country in the world. You'd like to ensure that the document opens showing the most relevant page for each client.

So someone from Mexico downloads the document. We know that page 165 contains the data for Mexico so let's alter the PDF so that it opens onto this page.

First we create a document object and read in our existing document.

Dim doc As New Doc()
doc.Read("c:\data.pdf")

Then we find the object ID for page 165.

thePages = doc.GetInfo(doc.Root, "Pages")
thePage = doc.GetInfo(thePages, "Page 165")

We create a destination for this page and insert an open action into the document catalog.

theAction = "[ " & thePage & " 0 R /Fit ]"
doc.SetInfo(doc.Root, "/OpenAction", theAction)

Finally we save the modified document.

doc.Save("c:\new_data.pdf")

Most people will never need this level of control. However if you do - it's there!