Google Answers Logo
View Question
 
Q: Why is printing in Firefox in Linux so slow? ( No Answer,   5 Comments )
Question  
Subject: Why is printing in Firefox in Linux so slow?
Category: Computers > Operating Systems
Asked by: massysett2-ga
List Price: $15.00
Posted: 13 Oct 2005 07:24 PDT
Expires: 14 Oct 2005 13:52 PDT
Question ID: 579755
I am wondering why printing in Firefox in Linux on a PostScript
printer takes so long.

Here is my setup: SuSE 10.0 using CUPS; Brother HL-5150D laser printer
(which is a native PostScript printer) hooked up via USB; recent
Firefox (either 1.0.6 or 1.0.7); PPD file from the Brother CD that
comes with the printer.

When I used this printer from Windows XP to print pages from Firefox,
pages would start emerging from the printer within seconds after I
clicked "print." This was true with both the Brother PCL Windows
driver and the Brother PostScript Windows driver. After printing
started, the pages would continue to emerge at top speed until all the
pages were printed.

Then I tried the new SuSE. Firefox printing is extremely slow. Even
when printing relatively simple webpages (e.g. a newspaper article
from washingtonpost.com after clicking on "Print this article" in the
webpage, which leaves only one ad in the printout) it can take over
two minutes for printing to even begin. After I click on "Print" in
Firefox, Firefox quickly completes its printing process, handing the
job off to the print spooler and allowing me to continue web browsing.
(This process is complete in, say, two seconds.) This also causes the
light on the printer to turn from green to amber (indicating that it
is receiving data.) The light will flash, indicating data is coming
in, and the printer will make some warming-up sounds.

The delay comes in at this step. The printer will sit there for
several minutes, with the light flashing, but printing nothing. After
printing begins, the printer will print a single page, and then there
is another pause of a minute or so until the next page comes out.
These pauses continue until printing is complete.

I know Firefox uses lpr by default, so I got it to use KPrinter by
following the directions here:

http://www.granneman.com/webdev/browsers/mozillafirefoxnetscape/linuxspecific/kdeprintinginmozilla/

When I use KPrinter (which is set to use CUPS and has the Brother PPD
installed), the KJobViewer will show the printing job almost instantly
after Firefox has completed its printing task. KJobViewer will show
the job as "Processing" while the printer's amber light is flashing
slowly.

I did some tests of my own to try to figure out what is going on. I
tried using Firefox to print to a PostScript file rather than straight
to the printer, and then using the KDE PS viewer to print the file.
This makes no difference in print speed. Creating a PDF and printing
that out prints out perhaps a bit faster, but with considerable
sacrifice in print quality.

I also tried printing from my Windows laptop via the Linux machine (I
set up printer sharing through Samba.) I configured Samba to have my
Linux machine provide an anonymous print server, and I then installed
the HL-5150D PostScript driver on the Windows machine.
Then--boom!--printing the same webpage from Windows was very
fast--pages start coming out almost instantly--while the Linux machine
is very slow. (I made sure that all the settings in the Windows and
Linux drivers--e.g. DPI--were identical.)

I tried printing in Konqueror, which is no faster.

My most fruitful test was to try something I had learned earlier in
Windows with an inkjet: I copied an entire webpage from Firefox by
pressing "Control - A", and then I pasted this into OpenOffice.org
Writer. I printed this page, which contained all the same graphics.
Bam!--this printed out very quickly, just as quickly as Windows. The
fonts were a bit different from the Firefox printout, but sill of
top-notch quality; the graphics were of the same top-notch quality.

I noticed that, when printing directly from Firefox, the job size
shown in KJobsViewer is in the neighborhood of 300k for a newspaper
article of four pages or so that contains a few simple chart graphics
(like the Wall Street Journal.) This is well below the 16MB of memory
that is standard in the Brother HL-5150D.

I have also printed a PDF from Linux (the SMB Howto in PDF format.)
This printed extremely rapidly; just as fast as Windows printing.

So what I am wondering is: why is printing webpages in Firefox so much
slower in Linux than it is in Windows? Obviously the cut-and-paste
workaround I detailed above works okay, but I am curious as to why
printing straight from Firefox (and from Konqueror, for that matter)
is so slow, especially when essentially the same data in
OpenOffice.org prints out very quickly. Not only am I curious as to
the reason Firefox prints so slow in Linux compared to Windows, but of
course I am interested in any solutions (other than the cut-and-paste
workaround.) If you're kind enough to answer my question, please cite
sources of information so I can read further and learn more. Thank
you.
Answer  
There is no answer at this time.

Comments  
Subject: Re: Why is printing in Firefox in Linux so slow?
From: bschonec-ga on 13 Oct 2005 08:10 PDT
 
Since you already know how to print to a file, try this:

Drop to an Xterm window and change to the directory where your
print-to-file resides.  Type the following

lpr <name of your file>

That should be enough
Subject: Re: Why is printing in Firefox in Linux so slow?
From: bschonec-ga on 13 Oct 2005 08:12 PDT
 
Whoops!  I hit Post Comment a little prematurely.

Anyhoo...

The "lpr <your file name>" should be enough to tell you if it's CUPS
or somthing else that's slowing you down.

If you get the same slow results with what I've suggested, you can
rule out Firefox pretty much.  Unless Firefox iteself is creating the
print job incorrectly I think you can rule FF out.  As a test, try
printing to a file from another application, like Open Office or even
Konquerer web browser if you have it.  Print to a file and then submit
the job via "lpr" technique.

Report back with results.
Subject: Re: Why is printing in Firefox in Linux so slow?
From: massysett2-ga on 13 Oct 2005 11:07 PDT
 
Hi bschonec,

That's a good idea; I will try that. It looks like lpr will still use
CUPS because CUPS takes that command over for compatibility reasons:

http://en.wikipedia.org/wiki/Common_Unix_Printing_System#Compatibility

However I will see what I can do to use lpr or lprng or some such
thing; KDE might have a drop box for that.
Subject: Re: Why is printing in Firefox in Linux so slow?
From: massysett2-ga on 13 Oct 2005 14:09 PDT
 
So I took bschonec's suggestion. I didn't try lpr at the command line
because this command goes to CUPS rather than to the old lpr. I did
try using the lpr option in the KPrint dialog box; the results were
slow as usual.

However I also tried printing a webpage to a file (mozilla.ps), making
myself root, and typing

cat mozilla.ps > usblp0

and the results were extremely fast and speedy.

So it appears the problem is somewhere in CUPS. CUPS is much more
complex than I at first thought (I thought it was just a print queue)
so there is potential for mishap in it. I will learn more about CUPS
(my uninformed hypothesis right now is that for some reason it is
performing unnecessary filtering on webpages.) I will also try another
distro and see if it has this same problem...
Subject: SOLVED
From: massysett2-ga on 14 Oct 2005 13:52 PDT
 
I examined the mime.types file in /etc/cups. It turns out that
mime.types had a different file type for "mozilla-ps" than for regular
"postscript." Thus Firefox printouts were getting typed at
"mozilla-ps."

mime.convs requires "mozilla-ps" files to be filtered through
"pswrite." I still do not know what pswrite is; seems to have
something to do with Ghostscript? At any rate, I figured, why on earth
are PostScript files from Mozilla getting filtered? They're
PostScript--send them to pstops and then send them to the printer!!

So I simply commented out the "mozilla-ps" lines in the mime.types
file. Now Mozilla files print out instantaneously.

I am curious as to what on earth pswrite is and why it was taking SO
LONG to run it on my system, but that can wait for another day.
Because my problem is fixed, I am closing this question.

Important Disclaimer: Answers and comments provided on Google Answers are general information, and are not intended to substitute for informed professional medical, psychiatric, psychological, tax, legal, investment, accounting, or other professional advice. Google does not endorse, and expressly disclaims liability for any product, manufacturer, distributor, service or service provider mentioned or any opinion expressed in answers or comments. Please read carefully the Google Answers Terms of Service.

If you feel that you have found inappropriate content, please let us know by emailing us at answers-support@google.com with the question ID listed above. Thank you.
Search Google Answers for
Google Answers  


Google Home - Answers FAQ - Terms of Service - Privacy Policy