I am using FileMaker (FMP 11) to display a webviewer (which, as far as I understand it, is basically an embedded Internet Explorer on Windows and Safari on Mac). The webviewer contains a table of text. The contents of the webviewer are under my control.
I want to be able to print this (using File|Print, or the Print script step), and it should look good.
On OS X, this works fine. The font in the printed output is smooth and the letter spacing etc. is good.
On different Windows machines I get different results. The main one I’ve been working on (Windows XP with I.E. 6 and later I.E. 8) inexplicably squashes all the characters together. So e.g. if I have a value “2.65” in one of the cells, it looks like 265 because the “.” overlaps with the tail of the “2”. Also other letters/digits partially overlap their neighbours. If I print to PDF (using PDFCreator) then the text is not blocky (i.e. you can zoom right in). The problem is the letter spacing. If I load the same HTML directly in I.E. and print from there, everything looks good. So it seems specific to the webviewer in FileMaker.
On another Windows machine (Win7 with FMPA 10 and Internet Explorer 9) the printed text is fuzzy. Printing to PDFCreator shows that the text is blocky instead of vector based.
On another XP machine with I.E. 7, the output looks OK. Non-blocky and not squashed.
I’ve tried various different fonts. I’ve tried setting the letter-spacing to e.g. 2px which helps on the machine where the text is squashed.
I’ve also tried going into Preview mode in FileMaker and clicking on the Save as PDF button. This produces even worse output than the above, because the contents of the webviewer in the generated PDF have nasty JPEG artifacts.
Also, if I set the size of the web viewer to fit on an A4 page and then save the file and load it up on FileMaker on OS X, the web viewer is too big for the page. Is this to do with page margins?
Why is this happening? How do I fix it? i.e. how do I get FileMaker + Webviewer to print consistently on various machines?
EDIT: If I save the content to a file and load it up in Internet Explorer directly and it prints fine from there, so it definitely has something to do with the embedded browser control in FileMaker. Using window.print() from within the webviewer also works on Windows, but not on OS X. So I’ll have to make sure the webviewer contains everything that needs to print and call window.print() for Windows and on OS X I’ll have to print from FileMaker. Bleh.
Have you thought about printing it from outside the webviewer? I.e. if it’s HTML and it should print fine if you save it to the desktop… so can’t your write a script to grab the webviewer content, stick it in a field, export that field’s contents to the desktop, and then have the OS (PC or Mac) print it?