For a migration between software products, we have a lot of data that can not be stored in the new product. To keep it archived somewhere in a way my colleagues can access it easily, we'd like to create pdf's of the data.

The input is data in CSV format, with column header describing the data. The required output is multiple PDF's, each containing the values of one row from the csv, and printed in a way that reads like a Q&A form.

Any suggestions for a tool for this matter? I have tried searching for this, but most software just create pdf's with the csv data in a row/column style familiar to e.g. excel.

As the amount of data is quite big. I'm searching for a tool that supports batch processing.

  • Welcome to Software Recommendations! Could you please edit your question and include what OS the software must run on, and how much you are willing to spend if it comes to paid solutions?
    – Izzy
    Commented Jan 25, 2018 at 13:32
  • Your best bet would be to transform the CSV to HTML. You can style and layout everything using HTML. Writing your own script to do this should not be difficult. Once you have that as you like, there are a number of HTML to PDF converters available.
    – Ryan
    Commented Jan 26, 2018 at 5:57
  • Can you program in Python?
    – Eric S
    Commented Jan 26, 2018 at 15:17

1 Answer 1


If you are not afraid to learn running two new tools, I can recommend the DTP program Scribus. Scribus will 100% give you "pretty" PDFs, where you have total control over fonts, styles, layout on page, etc.

All you need is one page in Scribus, with one text-frame and in there your Q&A "framework" and some place-holders for your data. You style that text just like you want. And you can arrange your place-holders any way you want, that is the power of Scribus.

And then run the script: It can make you one PDF for each line of data. Or even one massive PDF for whatever you might want to do with that (helps if you want to print on paper). I even added an option to have any csv-delimiter that you want (does not need to be a comma). Note: I am not on the Generator team, just a happy user.

The script for Scribus which will handle your csv-batch-magic is called Scribus Generator. I am using it for years. It is just a Python script, so you can look inside and tweak it any way you want. But it has become so powerful, that I guess you will not need to do any coding.

scribus.net for the main tool.

And https://github.com/berteh/ScribusGenerator for the script.

There is a very friendly and competent e-mail user-list for Scribus. Scribus can do "anything", the main challenge for beginners is often finding where-and-how. The ScribusGenerator is rather well documented.

Guessing from your question, I would say you can set this up in several hours. It is helpful to create a testing csv-file with just maybe five lines of data.

Also you will save much clicking time, if you keep all your elements in one folder: The scribus-file, a copy of the csv-file and a copy of the script.

Looking forward to your feedback.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.