We're a transport company with a new mobile data collection platform. We're looking for a way to transform the collected data (in this case, data collected on inspections of HGVs) into a highly professional, customer-facing PDF 'inspection sheet'.
Form data is stored in a MySQL database on a Linux server. The ideal solution for our purposes would be a self-contained command line script (in any common scripting language, provided it and any libraries used are FOSS) to run on the same server, which takes form record ID and output filename as parameters and generates a PDF on the filesystem. We could then invoke this script from our systems.
We're not looking for basic output -- we already have that, and we've reached the limits of our PDF generator (Apache FOP) without achieving the desired results. The generated PDF will be a custom, concise, readable, and professional looking piece of documentation, with company logos, columns, and generated graphics. Many form fields will need distinct handling and one set of data (tyre readings) should be presented as an infographic -- numeric readings laid out on an abstract representation of the vehicle -- for quick visual reference. Form fields may change over time so the layout should have room to shrink and grow, but the majority of forms will render to 2 A4 pages. Strong ability in dynamic PDF generation is a must.
Annex 5A of this VOSA document gives an official example of an HGV inspection record; we need to get everything here on our PDF, but we're looking for something with better layout and some visual aids. [url removed, login to view]
The generation script should be robust, permissive in its input (the form contains many text fields which may be blank or may contain a paragraph of text), consistent and professional in its output, and maintainable in-house. Performance is not of great importance since the script will not be invoked interactively.