The following article is written by Simon Sprankel, thanks to him as one of the main contributor to Firegento_Pdf.
Firegento_Pdf is, like FireGento_MageSetup, a free community module for Magento. It replaces the ugly standard Magento PDF templates with a fresh, new template optimised for the German market. Let us first have a look at the ugly standard Magento PDF template:
The standard template provided by Firegento_Pdf looks much cleaner, nicer and is definitely clearer:
Firegento_Pdf For End Users
Though Firegento_Pdf has mainly been optimised for the German market, we believe that it can be used for any country. The information shown in the footer is taken from the imprint. If GermanSetup or MageSetup is used, the information is taken from this extension. Otherwise, the sparse information from Magento is taken. But it is possible to add imprint information with some XML code as shown in the Wiki. Firegento_Pdf provides new configuration options under System – Configuration – PDF Print-outs. Here is a non-exhaustive list of featues:
- custom return address bar
- optional footer with imprint information
- logo can be shown on the left, in the middle, on the right or as a full-width logo
- the PDF engine/template can be changed for each document (invoice, shipment, credit memo)
- optionally print order ID and customer ID
- optionally print a custom note which can be entered individually for each document type in the backend
- for invoices: optionally print due date, payment method, shipping method, invoice comments
- for invoices: possibility to show and hide columns in the order table, possibility to sort them indiviudally via drag and drop
- for shipments: optionally print a bar code of the order number
Firegento_Pdf For Developers
First of all, Firegento_Pdf is of course also on GitHub. It comes with composer and modman support and can of course also be installed via Magento Connect. Community contribution is more than welcome – no matter if it is an issue or a pull request. Additionally, it provides three great ways to customise the PDF templates, so that any wishes can theoretically be fulfilled:
- It is possible to programmatically add notes to the PDF. This is documented in the Wiki. For each document type, there are different events with which notes can be added.
- Sometimes, people want to show something at an arbitrary, but fixed place on the document. Therefore, another event called `firegento_pdf_[document_type]_edit_page` is useful. It provides access to the current page object each time a new page is created. This functionality is also documented in the Wiki. By the way, this is used by the extension itself: The barcode feature is implemented using this event.
- Sometimes people have extensive change requests for the PDF templates. Therfore, completely new engines based on our standard engine can be written. If configured properly, they are also shown in the backend and can be selected by the end user. Have a look at the Wiki for more information.