Bug 59393

Summary: Printing pages with very long lines results in unreadable output.
Product: WebKit Reporter: Steve VanDeBogart <vandebo>
Component: PrintingAssignee: Nobody <webkit-unassigned>
Status: UNCONFIRMED ---    
Severity: Normal CC: ap, aroben, hyatt
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
URL: http://snowplow.org/martin/printtest.html
Attachments:
Description Flags
test output
none
Output with nightly (r84630) none

Description Steve VanDeBogart 2011-04-25 16:33:43 PDT
Webkit tries to scale content to fit to the width of a page.  If there are very wide elements, the scaling makes the page unreadable.  There should be a min horizontal scale factor to prevent this.

Repro case: http://snowplow.org/martin/printtest.html

Firefox does not scale the content to fit, and thus simply clips the long line in the test above.

This bus was reported to Chrome (crbug.com/49698), but also occurs in Safari.
Comment 1 Alexey Proskuryakov 2011-04-25 16:44:41 PDT
I cannot reproduce this with Safari 5.0.5 on Mac OS X 10.6.7.

What version of Safari and on what platform are you seeing this with? We do have a minimum scale factor, which is set to 2x.
Comment 2 Steve VanDeBogart 2011-04-25 16:53:49 PDT
I tried on Windows 7 with Safari 5.0.5 (7533.21.1).  Printing to Adobe Acrobat produces the attached PDF.  It looks like an effective scale factor of about 16x is applied.
Comment 3 Steve VanDeBogart 2011-04-25 16:54:13 PDT
Created attachment 91023 [details]
test output
Comment 4 Alexey Proskuryakov 2011-04-25 17:04:09 PDT
Thanks!

I don't have Windows handy, may I ask for one more thing? Could you try this with a nightly build from <http://nightly.webkit.org/>? It doesn't replace your installed Safari, and doesn't affect it in any way at all - and I have a suspicion that this may have been fixed already.
Comment 5 Steve VanDeBogart 2011-04-25 17:15:03 PDT
Created attachment 91029 [details]
Output with nightly (r84630)

There's a marginal improvement with the nightly build, but not much.  Maybe 16x->8x