PDF.js results in strange printed symbols instead of embedded font & orientation issue
Visitors who print our PDFs after viewing them using Firefox's PDF.js (even the newest version) are sometimes seeing strange symbols on part of the printout instead of the desired embedded text. This was previously happening on nearly every PDF that was created via OpenOffice or Microsoft Office. The recent FF releases seem to have corrected the problem somewhat - but we still observe the following issues, tested on Windows 7, 8, and 10 machines:
1) If a visitor views a PDF using Firefox's PDF.js and prints the file with the page layout ORIENTATION set opposite of what the file is designed for, the printout will contain the gibberish. Example:
View the following PDF file using FF / PDF.js: https://www.superteacherworksheets.com/reading-comp/printables/1st-ball-for-my-dog_TZZMD.pdf
If you print it portrait (as the file was designed), it prints out fine. However after changing the orientation to landscape in the print options dialog and then printing it, the text is now unreadable symbols and boxes.
2) This issue would probably not exist except that Firefox does not offer the "auto portrait/landscape" option when choosing a print layout. Is this something that will ever be included? It is available when printing PDFs using the Adobe plug in; and on other browsers by default. The absence of this auto print layout/orientation feature causes uncountable headaches when FF users aren't tech savvy.
3) The Firefox PDF.js appears to have intermittent trouble with PDF encoding and thus issues displaying the correct characters or style. Example:
View the following PDF file using Internet Explorer or Chrome - it is formatted exactly how we detailed it, using a Century Gothic font with the title being bolded.
https://www.superteacherworksheets.com/addition/printables/addition-i-have-who-has_WNNFQ.pdf
Now view the following PDF file using FF / PDF.js and compare it to the IE/Chrome display. Observing the FF / PDF.js version, the letter "a" has changed from it's nice rounded Century Gothic font to a more curved/styled version. Also, certain text including "Answer Chain, letter B..." has been mysteriously bolded. The "a's" in this bold text too are not of the Century Gothic font. We aren't sure how or why the style is getting lost, but it only appears incorrect when printed after viewing on PDF.js.
I'm a member of the IT team at SuperTeacherWorksheets - a highly trafficked educational resource site. These are just a couple examples of our 10,000+ PDFs that are accessed by millions of visitors. Of course we want to make it as easy for visitors as possible to access helpful and clean resources. We've seen this issue affect an uncountable numbers of our visitors and we're always stuck saying "it's a Firefox related issue, please try another browser if you can or perform these steps to use Adobe's add-on Reader..." We don't want to say that, because we love FF! Can anyone offer some advice or expertise on this or even take a more in depth look at it if possible.
Similar issues (linked below) have been discussed at length on many forums/threads, but the answer has always been to either use the print as image option or to modify the advanced printer properties. This is not a viable solution for our site and resources as explaining to millions of visitors that they must modify settings when using Firefox is very difficult.
Krejt Përgjigjet (1)
Regarding #1, it's bizarre. If I open Print Preview with Firefox set to Portrait, and I switch back and forth to Landscape without a problem. If I had previously used Landscape and preview the PDF, it is full of rectangles and switching to Portrait doesn't do anything.
I don't know whether anyone has filed a bug on this, or whether it is a bug in Firefox's print code or in the pdf.js library.
Regarding #3, this must be a problem with pdf.js, and I'm assuming it has been filed, but I haven't searched.
Not very helpful, I suppose, but I do see issues with that font if I generate a PDF from a four-line MS Word document using pdfFactory; I didn't see any problems with the Adobe PDF printer set to high quality output.