Jump to content
View in the app

A better way to browse. Learn more.

FMForums.com

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

FileMaker layout to pdf with iText

Featured Replies

Hello,

I'm lost in  the forum because I don't speak english very fluently.

I'm looking for a sample file showing how to create a pdf file from a FileMaker layout through the iText library. I need that to ger pdf files in a runtime solution.
If such a file exists, thanks to those who give me a link.

Regards

Noël

This is a fascinating but FAR from trivial subject. Unless you have in-depth knowledge of iText, this is most likely not the way you want to go if you're "only" trying to find a solution for creating PDFs in a runtime - there are plugins that allow you to do that (not perfect either, but a lot less work).

You may however want to have a look at http://fmptopdf.com/convert/ - though I'm not quite sure how far along this is right now.

And I can answer the second part.. Not as far as I really would like - too much need to focus on paying work at the moment.

You are right, it's NON trivial, but is in fact ridiculously quick, and powerful.

Principle is simple. You need to pass a function a list of objects with their attributes and positions and then have the function 'draw' them onto the page. There are a million hoops to cross like fonts and whether the output is into a container, and logos and page size and orientation  - but other than that, simple.

The end results I have in production in several places, I have also recently done some work on creating PDF/A files, and also ZUGFeRD compliant invoices (PDF with XML embedded), just to show how far you could go.

 

john

Maybe you should crowd fund this... 

  • Author

Hello,

Thanks at all ! As I am not of the level to undertake appentissage of iText I think I 'm going to look plugins ; PrinterSwitch seems not bad. If you have other references let me know!

Regards

Noël
 

 

 

 
On 10. Januar 2016 at 3:34 PM, john renfrew said:

And I can answer the second part.. Not as far as I really would like - too much need to focus on paying work at the moment.

You are right, it's NON trivial, but is in fact ridiculously quick, and powerful.

Principle is simple. You need to pass a function a list of objects with their attributes and positions and then have the function 'draw' them onto the page. There are a million hoops to cross like fonts and whether the output is into a container, and logos and page size and orientation  - but other than that, simple.

The end results I have in production in several places, I have also recently done some work on creating PDF/A files, and also ZUGFeRD compliant invoices (PDF with XML embedded), just to show how far you could go.

 

john

 

Just thinking out loud:

- with the exception of header, body, footer and summary parts the layout information is in the XML DDR.

- if one goes through the hassle of adapting/transforming that XML (replacing the embedded graphics with paths to image files and marking the content fields) you get a list of layout objects that can be fed to itext.

 

For a first step to split the XML DDR into it's components one can use my DDR-Splitter: https://github.com/karstenw/FileMaker-DDR-Splitter

It's free and available as an OSX app and as a python script.

 

Create an account or sign in to comment

Important Information

By using this site, you agree to our Terms of Use.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.