Hello
I hope this is a good discussion group for my problem.
I am searching a free or commercial software component that allows me
to modify an existing PDF file.
The software should be designed to work on a high stress production
server running on Windows 2003 Server and .NET 2.0 webservice.
I have a template PDF file that, say, represents a letter about new
product release that will be sent to many persons in PDF format.
The template contains only text and images.
For each person, some text should be placed dynamically inside the
letter, like: person's name, address, etc. and 2 or 3 images that are
related to that person.
I need this template so that it could be easily modified without
changing the code.
Using MS Word would be simple, but I want to avoid using Word
automation on server side, as Microsoft strongly recommends.
To be more clear, I have published a sort of a template file here:
http://ikonsoft.ro/temp/doc.pdf
and the expected result after all replacements were done is here:
http://ikonsoft.ro/temp/doc_gen.pdf
Notice that the template's text flow is influenced by the length of
the inserted text. MS Word does a very good job by automatically
reformatting the text as the new text is inserted, but, again, MS Word
is not an option..
Do you know any piece of software that may help me?
My boss aggrees to pay for such a software.
Oh, did I mention that I am looking for such a software since
yesterday I didn't find anything? So this means that it's becoming an
unrgency for me... :(
Thanks.
|
|
0
|
|
|
|
Reply
|
nano2k
|
6/6/2008 2:16:35 PM |
|
nano2k wrote:
> Oh, did I mention that I am looking for such a software since
> yesterday I didn't find anything? So this means that it's becoming an
> unrgency for me... :(
How was it possible to overlook iText?
Suppose you have a simple letter in XML:
http://www.1t3xt.info/examples/resources/in_action/chapter14/simple_letter.xml
Then you could iText to create letters in PDF that look like this:
http://www.1t3xt.info/examples/results/in_action/chapter14/simple_letter1.pdf
http://www.1t3xt.info/examples/results/in_action/chapter14/simple_letter2.pdf
How was this achieved? Read the source code here:
http://www.1t3xt.info/examples/browse/?page=example&id=228
There is more than one way to achieve this.
For instance, suppose you used OpenOffice to create this template:
http://www.1t3xt.info/examples/resources/classroom/filmfestival/movie_overview.pdf
And you have a movie database, like this one:
http://www.1t3xt.info/examples/resources/hsqldb/film.script
Then you could fill the template using iText and end up with this:
http://www.1t3xt.info/examples/results/classroom/filmfestival/movies25.pdf
The source code to achieve this is different from the first example:
http://www.1t3xt.info/examples/browse/?page=example&id=347
Note that these are just two possible ways to do what you want,
once you get to know how iText works, you'll find even more ways.
See for instance:
http://www.1t3xt.info/examples/browse/?page=example&id=130
Just browse the examples on the 1T3XT site.
Granted, all examples are written in Java, but if you're a .NET
programmer, it should be easy for you to use iTextSharp (the C#
port of iText) and adapt the examples to your needs.
br,
Bruno
|
|
0
|
|
|
|
Reply
|
Bruno
|
6/6/2008 2:41:40 PM
|
|
nano2k wrote:
> Oh, did I mention that I am looking for such a software since
> yesterday I didn't find anything? So this means that it's becoming an
> unrgency for me... :(
Nice design schedule you got there :-)
My friends (declaration of interest...) at Iceni
do exactly what you need:
> I have a template PDF file that, say, represents a letter about new
> product release that will be sent to many persons in PDF format.
>
> The template contains only text and images.
>
> For each person, some text should be placed dynamically inside the
> letter, like: person's name, address, etc. and 2 or 3 images that are
> related to that person.
http://www.iceni.com/infixServer08.htm
BugBear
|
|
0
|
|
|
|
Reply
|
bugbear
|
6/6/2008 3:07:35 PM
|
|
|
2 Replies
145 Views
(page loaded in 0.612 seconds)
|