Paper size not read from printer
We use 3 different paper sizes at work, and each size is in a dedicated printer. The drivers have only the correct paper size set, and 99% of Windows software is OK with this.
Firefox on the other hand seems to save the last paper size it printed to. I just printed an A5 document to our A5 printer, then printed an A4 document to one of the A4 printers. The A5 came out OK, but the following A4 document was only covering an A5 size area of the A4 page. When i go into the print dialog, the preferences, it showed A5, despite the printer being set to A4 in Windows.
After printing the A4 document in A4 by checking the preferences, now documents being sent to the A5 printer no longer fit correctly because it wants to use A4 on that one!
Is this a bug or some sort of really poorly thought out feature?
所有回覆 (3)
Did you set the correct paper size for each of those three printers from within Firefox?
Firefox doesn't use the Windows set "defaults" for most printer settings, probably due to it being a cross - operating system application. But once each user has the "defaults" set up for each printer, Firefox will remember and use those settings.
Not a "bug", but the printing modules in Firefox could probably stand a re-write or complete replacement after 20 years. I suspect that most of the print coding dates to the original Netscape browser back 1994.
Where do you set the page size in Firefox? I can only see margins and zoom.
I did go into properties on the print dialog (the only place I've found paper size) and change it, but it won't stick until a page is actually printed. And that seems to stick it for all future jobs regardless of printer.
That setting isn't in the Firefox user interface directly.
Page size / type is selected in the "native print dialog" box, which is reached when you start printing {Ctrl + P} from keyboard or via a menu item like Firefox > Print -> Print - the "box" you then see is known as the "native print dialog". Then hit the Properties button in the upper right corner. From there you are able to select paper type / size from the dialog which is provided from the printer software that is installed on that computer.
In order that Firefox save any setting changes made there, it is necessary to print at least once. After that, the setting will hold until the user changes it again thru "Properties".
You might be able to make that setting via a user.js entry without printing, and that would lock that preference and prevent the user from ever changing that pref without knowing about the user.js and editing that file. http://kb.mozillazine.org/User.js_file
Another issue with doing that via the user.js file is that there isn't too much available as far as documentation of the various "print" preferences.
http://kb.mozillazine.org/About:config_entries#Print. - this page doesn't even cover the paper data / type / size prefs. Height and width prefs are derived from the "key" pref, one of the three other prefs or manually set by the user for non-standard paper being used.
I see three prefs related to what we are discussing in my configuration file for one of my installed printers.
printer_Brother_MFC-J615W_Printer.print_paper_data
which may be the key
printer_Brother_MFC-J615W_Printer.print_paper_size_type
printer_Brother_MFC-J615W_Printer.print_paper_size_unit
There's also a paper height and width preference, which is derived from one of the above prefs.
printer_Brother_MFC-J615W_Printer.print_paper_height
printer_Brother_MFC-J615W_Printer.print_paper_width
A person would have to dig into the Firefox source code and read the annotations in the source code to learn what the various settings for either data, type, and unit are. I haven't dug into the source code for printing for 6 or 7 years now and don't recall which of those three prefs is the "key".
The "key" pref also switches the margins and header/footer setting from US (fractional) to "A" (metric) measurements.
Well, I have just about exhausted all that I can recall about printing from Firefox. Hopefully someone else will come along and be able to provide more information about the "data" vs "type" vs "unit".