According to HP (via O’Reilly Radar), “Web pages comprise 48% of printouts on home printers; word processing documents run a distant second – the reverse of just a few years ago”.
Do we have anyone whose responsibility is printing? I seem to recall we didn’t for ages, and it was considered “here be dragons” code… It’s not great in Firefox 2; I don’t know if it’s better in 3. <blog style=”asa”>What are people’s experiences of Firefox printing, on branch and trunk?</blog>
I must admit to copying and pasting the URL into IE7 when I wisht o print.
BBC News is probably my most printed site. Firefox has a nasty habit of making a page break after the header image for no reason. The ability to drag around the margins in IE7 to try and make it fit on less paper also helps.
I’d say IE7 is probably the best printing system at the moment. If firefox could match or (preferably) exceed that it would be amazing.
Fantasai is focused on printing layout issues. Eli has also done a lot of work on printing and is the de facto owner of the “print engine” code. Thanks to their efforts printing in 1.9 has improved quite a bit, although it’s still weaker than we’d like.
Firefox is appalling when attempting to print CSS-based web designs. IE7’s new fit-to-page zooming works much much better. ROC has occasionally talked about splitting boxes over print page boundaries and how it may be solved in Mozilla 2.
… so I hope that in Firefox 3 pages are more likely to print reasonably, and less likely to hang. However, we didn’t have time to implement the architecture changes to support cool new printing UI features, so I don’t expect the UI to change much.
Peter: BBC news stories seem to print (preview) fine for me in 1.9 on Mac.
For a long time, I’ve had an idea for an extension or feature that, when you have a print preview, allows you to select page elements (a bit like DOM Inspector) and delete them from the page to be printed. Perhaps we could implement this by toggling display:none for that element in a print-only stylesheet. That would really help people to print only what they wanted.
Usually when I print a larger page, I have to copy/paste into Word and print from there.
Its ok for shorter pages
Gerv, in case you don’t know Aardvark: http://karmatics.com/aardvark/ It works as good as a bookmarklet as an extension.
However it doesn’t seem to work with print preview. But I’m not so sure it may be that necessary: I don’t find many pages with printer CSS at least for me as I hardly use the print preview so it’s enough for me to remove stuff from the page directly.
While on the print topic: am I the only one who thinks that if there’s a selection in the current page, the print dialog should have the Selection radio button selected by default? In the past someone argued that it’s just how other apps work. Is there some other argument?
Gerv, in case you don’t know Aardvark: http://karmatics.com/aardvark/ It works as good as a bookmarklet as an extension.
However it doesn’t seem to work with print preview. But I’m not so sure it may be that necessary: I don’t find many pages with printer CSS so I hardly use the print preview and it’s enough for me to remove stuff from the page directly.
While on the print topic: am I the only one who thinks that if there’s a selection in the current page, the print dialog should have the Selection radio button selected by default? In the past someone argued that it’s just how other apps work. Is there some other argument?
Yeah, what roc said. :) HP’s starting to really focus on improving web printing, and they contracted me to work on Firefox’s printing support starting last March. This cycle I’ve mainly been working on bug 154892 and related fixes, but we have a long list of improvements we’d like to see next year: layout fixes, new CSS features, better UI, and per-page print settings. I don’t think I can do that all myself, so if you know anyone who can help tell them to contact me. ;)
Wrt selecting content to print: Peter Linss (peterl) is working on an extension that will let you clip out content from pages and print it. The first release will be for FF2 only, unfortunately.
Percy: I didn’t know about Aardvark – this does the job exactly. Thanks!
Ugh…printing in Firefox 2 is dreadful. All too often, text runs off the edge of the page, regardless of the zoom settings. It feels like it severely regressed from 1.0…the ‘fit to page’ and percentage gizmos used to work correctly. I loved to say that Firefox was a handy tool for printing (except for the horribly broken count)…now, I’ve made the discovery that Safari is surprisingly good for printing. It’s an all but worthless browser to me otherwise, but when I print NYT articles, it does a rather nice job (and I won’t touch IE when I’m on Windows [except for one proprietary app that isn’t Fx friendly]).
Oooh…I forgot to mention the most Earth-shattering thing that doesn’t print with Firefox – Google Maps with route overlays! That *has* to get fixed…either by Mozilla or Google – I had to tell someone to use IE to print that, which was not a pleasant thing for me to do.
> HP’s starting to really focus on improving web printing, and they contracted me
> to work on Firefox’s printing support starting last March
Amazing. Once you’re popular enough your weak points are no longer your problem, but other people’s problem.
I’d love to see something like firebug’s point n’ click inspector but for printing… could be really handy. With the option to strip styles/backgrounds before printing.
I spent some time on irc one weekend a few months ago looking at the Google Maps printing bug with someone, and as I recall, it’s a platform-specific (Windows) gfx bug that’s been fixed on the trunk.
Actually, aside from bug 154892 and friends, I wonder how much of our printing bugginess is rooted in platform-specific issues? I tend to see very few printing problems with Camino (other than the frame-splitting bugs). Or maybe I just don’t print the right pages?
As far as I know, Google Maps uses SVG to draw routes with Firefox 2 but PNG images with a trunk build (probably due to the User Agent string).
Printing web pages in Firefox has always been a trial by insanity for me. Every version of Firefox up through Firefox 2 I’ve tried to print in has turned out disastrous with pages beyond the first one missing and/or alignment being off on the paper. I now just open Word up and paste the content in there to print.
If Mozilla were to fix the printing problems in future versions of Firefox, that would be most welcome. I look forward to using Firefox 3 Beta 1 to see the little bit of work that has already been done.
Printing web pages in Firefox has always been a trial by insanity for me. Every version of Firefox up through Firefox 2 I’ve tried to print in has turned out disastrous with pages beyond the first one missing and/or alignment being off on the paper. I now just open Word up and paste the content in there to print.
If Mozilla were to fix the printing problems in future versions of Firefox, that would be most welcome. I look forward to using Firefox 3 Beta 1 to see the little bit of work that has already been done.
I guess the point already has been made: Firefox needs some serious work to provide the user with a decent printing experience. Depending on the complexity of the page layout, it does a pretty bad job. Considering the amount of web pages being printed out this should be a priority. Whether we like it or not printing out documents (and for me that is valid for regular web pages as well as PDF files) is going to be something that people keep doing. As much as I use the advantages of searching digital versions of whatever document, there is for me no way of reading a lengthy document just on screen. After scribbling all over the print out I might send my comments back in digital form but that is something else.
I find Percy’s comment about not finding many pages with print CSS a real catch 22. This feature of CSS is really underutilized. One reason might be that the resulting print does not come out better than it currently does. More people might go this extra mile of using if the result would be half way decent. I personally use print CSS for hiding all the page navigation that you really don’t need when you print out the contents of a particular page.
Web pages often contains a lot of stuff around the edge, e.g. menus and headers, that you don’t want to print or waste paper on. So I sometimes find myself editing the html of pages to cut out the stuff I’m interested in and to squeeze information into the minimum amount of pages by removing padding and margins on e.g. headers. I have the “Nuke anything advanced” add-on installed, but often it’s not easy (perhaps because of floats, positioned divs or blocks filled halfway with stuff you want) to only remove the things you don’t want.
I think it would be nice to have some kind of crop tool (like Gimps crop tool or excels “Set Print Area”) so I could easily choose what I want printed based on what I see, not on how the page is constructed.
Also when a pop-up is opened you can print it via Ctrl-P and when the webpage calls window.print you can hit OK to print, but in both cases there aren’t any easy way to get Print Preview which would be nice.
Lastly when are you going to remove (or make it possible for the webpage to hide) the (useless but annoying) text that the browser places around the edge of the page (title, url, page numers, date)? It is to hard for the user to do it (eg. there are no single checkbox in the Print dialog, instead they would have to set all for select boxes in the Print Setup dialog and perhaps remember to restore them) and even if there was the user would forget sometimes. So every time that you want to let the user print something that are going to be used for anything (e.g. an invoice), you need to figure out how to create a doc/rtf/pdf file, just to be able to print without the browsers header and footer.
ROC: Yeah BBC News now prints fine. I forgot they recently changed their layout so the header image is no longer a simple tag.
Printing in the nightlies is much better than in the 2.x series. What I’m missing in the Linux versions is the possibility to zoom the printout in print preview and to directly print from print preview. I don’t know whether that’s handled differently on the other platforms.
My views very closely mirror those of Anders when it comes to this subject. In fact I wrote a blog entry last February which goes into more detail about a couple of the issues he mentions:
http://www.peppertop.com/blog/?p=14
I’m glad I’m not the only one thinking along these lines ;)
Anders — See the CSS3 Paged Media module. Once we implement that, it will be possible to turn off headers.
I don’t know how reliable I’d consider that actual number to be, but the general principle (that a lot of end users do print web pages) is dead-on accurate. To fully understand this, you have to realize that a lot of people only have access to the web in one place, and only part of the time, but paper can be taken anywhere. Incidentally, I’d guess email probably accounts for more printouts than word processing, but about a third[1] of all email these days is webmail, and webmail users are more likely to print email than users of real mail clients on average (especially in the home where there’s no IT department to tell you what mail client to use), so if you count webmail printing as web printing rather than as email printing then I can see word processing coming in ahead of email.
Word processing had a big head-start in the early days of computing, because it was one of the very first things people used computers for. (Arguably, if you count text processing, it may have been the second major use for computers, after number crunching. Certainly it was early in any case.) But yeah, other stuff is catching up with it now.
> I’d say IE7 is probably the best printing system at the moment.
Printing in IE isn’t exactly a bed of rose petals either.
Gecko *is* better at printing in the latest stable release of Firefox than it was in the Mozilla 1.x era (e.g., text that is light on the screen is now printed dark on paper so it shows up), but there is of course a long way to go. I’m really glad to hear someone is seriously working on this.
Some shortcomings I happen to know about follow…
* As of the latest stable release of Firefox, it’s WAY too easy for web developers to inadvertently create a situation where the main content of the page is viewable on the screen by scrolling, but most of it cannot be printed because it’s inside some kind of container that only prints on the first page. Similarly, it’s too easy for web developers to inadvertently create a situation where content gets lost beyond the right margin of the printed page. I’m not even talking about preventing cleverly stupid webmasters from deliberately mucking things up; that would be a more advanced goal, but I’m just talking about preventing decisions that they make purely with the screen in mind from accidentally screwing up printability. The bug fantasai linked to seems to address this situation (or at least a subset of the causes of it) and that’s really good news. I don’t print web pages much myself, and I don’t think I want to deploy alpha builds for end users at this point (though I occasionally did during the breathless excitement of the 0.9.x era), but I’ll sure be excited to see the printing improvements in FF3 when it comes out. As the one-man IT department at a public library, I get to support a lot of users who don’t have the internet at home, so as you can imagine there’s rather a lot of printing of web pages going on. I bet I utter the sentence “printers are the bane of my existence” at least twice a day, average, and probably half the time it’s a web-specific (or browser-specific or site-specific) issue. (Speaking of site-specific issues, Yahoo Mail must die. Sorry, had to vent.)
* It’s too easy for a situation to arise wherein the page cannot be printed because it has not fully loaded. In many cases the part that hasn’t loaded is totally unimportant to the user, but they still have to wait, and they generally don’t understand why.
* It’s not obvious to most users how to print only a certain section of a web page. In particular, it would be really super cool if there were a way to quickly print just what is currently showing on the screen. Also, if part of the page has been selected/highlighted by the user, it would be nice if the print dialog defaulted to printing only the selection.
* Printing is THE leading cause of brower crashes, and has been since the turn of the century. (Plugins are number two and have a better theoretical excuse.)
* Certain kinds of really extremely LENGTHY web pages (think: 50+ pages printed, which can often be more paper than is available), have a table of contents at the top composed of within-the-page links to named anchors further down. The user clicks the link, and voila, the content the user wants appears. The user assumes he has followed a link to a page containing the information he wants, so he hits print, but instead of what is expected, what prints out is pages and pages and pages of stuff the user doesn’t want. (Incidentally, only a relatively small percentage of users know how to cancel a print job once it’s started. Technically the OS and/or the printer manufacturer is to blame for this shortcoming, but nonetheless it is the reality on the ground.) Video game cheatcode websites are a common example of this sort of thing, but it happens with other kinds of sites too. I am of the opinion that this scenario (performing an action that normally loads a new document and instead having the current document merely scroll down n pages instantly) is pretty much endemic to hypertext applications, so applications designed to work with hypertext need to provide the solution, web browsers being the big obvious example. Probably the printing UI should warn the user in some hard-to-miss way when a named anchor in the URI has brought the viewport to a part of the document more than a page or so removed from the beginning. It might also be good if there were a long-document warning when printing more than some number of pages (with the number hopefully being configurable, in about:config if nowhere else, so that system administrators deploying in special situations can adjust it downward if desired).
Those are mostly end user things. For more advanced users, there are other things that might be done…
* I believe CSS has ways of specifying things about where page breaks should or should not occur, but last I checked (which admittedly has been a few months) Opera was the only browser that supported any of them. This is of no _immediate_ value to end users who only print pages created by other people, because as a rule nobody bothers to specify stuff they know very well browsers don’t support. But it *is* of immediate value to more advanced users, e.g., to people who write bits of custom code for personal use and give it a web UI because that’s easier than messing with a widget set. People like me. And of course in the long term there’s always the “if more web browsers supported it then webmasters might actually put it on the web” line of thinking which, while not always a foregone conclusion, is not always wrong either.
* Speaking of CSS, are alternate stylesheets supported for printing? I doubt it. (They’re *barely* supported on the screen, a situation that hasn’t improved much since the turn of the century, much to my dismay.) I can readily imagine numerous uses to which this capability (in conjunction with printing) might be put, if it existed. Not least, a site could give the user the option to leave navigational elements (e.g., sidebars) out of the printout, or to include them if desired. Or a website might offer the option to print in a single-column or multi-column layout. Again, this is power-user stuff, because I cannot possibly imagine a UI for it that would make sense to my mom. Still, I’d like to think of Gecko as being good for power users, as well as end users. For the benefit of end users, I suppose you default to the first-listed alternative, just like with alternate stylesheets on the screen, and so the webmaster gets to decide which alternative is the default for his site.
Anyway, it’s good to know someone’s working on printing issues. In 2001 there were much more important issues, but at this point the basic stuff is pretty good, so printing has started to look like a major weakness in comparison.
—
[1] This is an extremely rough estimate, but it will do for the purposes of this discussion, unless someone’s got better numbers.
Here is an example of a web page in which Firefox 2.0.0.6 only prints the first page.
http://blog.snaplogic.org/?p=112
As others have mentioned, this happens with a lot of web pages – especially blogs.
You can look at a page in print preview first to see whether it is going to work., but who wants to have to do that?
Interestingly, the above page doesn’t print properly from IE either (although IE can usually print pages Firefox screws up).
As an aside, the above printing problem is the only thing in Firefox which gives my elderly parents grief.
Here is an example of a web page in which Firefox 2.0.0.6 only prints the first page.
http://blog.snaplogic.org/?p=112
As others have mentioned, this happens with a lot of web pages – especially blogs.
You can look at a page in print preview first to see whether it is going to work., but who wants to have to do that?
Interestingly, the above page doesn’t print properly from IE either (although IE can usually print pages Firefox screws up).
As an aside, the above printing problem is the only thing in Firefox which gives my elderly parents grief.