Link to home
Start Free TrialLog in
Avatar of CyprexxDev
CyprexxDevFlag for United States of America

asked on

How do you create dynamic fillable PDF forms from VB.NET

I'm looking for a way to create fillable PDF forms from VB.NET.  I've found some solutions, but none seem to fit what we need.  Price is not necessarily an issue.  I'd like to try the Adobe PDF Library, but I can't find anywhere to evaluate it and am not willing to pay thousands unless I am sure it will work for us first.

We want an easy environment to create the basic PDF document - since we want to create quite a few of these, we don't want to have to create the document through line by line code.

We then want to fill some of the fields in the document with database driven data.  Once the data is populated, we want to save the PDF form in a fillable format and want to specify which fields in the form can be edited by our customers.

We would like to do all of this programmatically (with the exception of the basic PDF layout which we'd like to use some kind of IDE).  We use SQL reporting services, so I can create a report on the SQL Reporting server and save it to PDF programmatically, but we can't specify fillable fields.  Any ideas?
Avatar of Karl Heinz Kremer
Karl Heinz Kremer
Flag of United States of America image

To evaluate the PDF library, just use Acrobat and the Acrobat SDK. It's the same API as the PDF library. If you write your plug-in so that all Acrobat specifics are separated from the pure functionality, you can even just take the code, wrap it with the necessary calls to initialize the PDF library, and to open a file, and use it without any modifications.

Have you looked at some of the other PDF frameworks or libraries? Take a look at PDFLib (http://www.pdflib.de) and iText (http://www.lowagie.com/iText/). There are of course a bunch of other products available, but in addition to the Adobe based solutions, these are the products I'm somehow familiar with.

If I had the choice, I would go with the Adobe PDF library (or the Acrobat API). It's probably the most powerful PDF based API available.
Avatar of CyprexxDev

ASKER

I downloaded the Adobe SDK and all that's in it is VB samples.  There is no DLL.  Moreover, all the samples are looking for COM objects which I don't have and won't use - I'm looking for .NET objects.  Finally, the samples are programmatically building the forms instead of through an IDE.  The Adobe site is extremely confusing and I cannot find what I need on there at all.  I'll check out the other two links you've provided.
Then the PDF Library is not what you want: It's a library that allows you to create C/C++ applications, which is also the required language for Acrobat plug-ins. This is not something that you tackle in an afternoon: There are about 15000 pages of documentation that go with the SDK.

Your IDE to create forms would be Acrobat - you are probably looking for something different, but I'm afraid that product does not exist.
It just seems unbelievable with all the ease that SQL Reporting Server (or Crystal Reports, etc) provide, that nobody has developed something similar for PDF files which is an industry standard??  I did take a look at your other two links and they both provide options for manual PDF creation.  The problem with this is, it would take hours to develop one PDF document that looks decent if you had to do it in code line by line.  I can create the same thing in a DOC file in 3 minutes and just import the text that I want to be dynamic (though I'd be missing the protection that PDF provides).  I assumed that Adobe would have caught on by now and offered a product that did something similar.  I guess we'll look into a different file type.  I would predict that Adobe will not last much longer if they can't catch up to current technology.  
You can create a PDF the old fashioned way (e.g. with InDesign or even MS Word), and then use that as template and just add your fields and data on top of that.

Maybe I misunderstood your original requirements - have you looked at Designer (that is an application that comes with Acrobat)?
Yes, I already have that program.  The problem is, I can create a new form in Designer, but how do I populate this form dynamically with data from a .NET application?  I need to design the form and then have my .NET application pull the form for a particular job and fill in the necessary fields, then lock the form, but leave certain fields open to be filled in electronically by our customers.  
ASKER CERTIFIED SOLUTION
Avatar of Karl Heinz Kremer
Karl Heinz Kremer
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Yes, they can access the database at design time, but not at runtime as far as I can tell.  I need them to access the db at runtime.  I want the application (which does have access to the db) to pull the form already created in designer and populate certain fields programmatically.  After those fields are populated, I want the form to be locked with the exception of specific chosen fields in the form.  This PDF form would then be sent to our customers who can fill in the fillable fields.  If this isn't possible, I'll assign you points for the help - I just want to know it isn't possible so I don't spend too much time looking this direction.
Sorry it took so long.  I didn't realize I never closed this :-)  Here are your points.