X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=src%2Fcairo%2Fa_chain_of_bugs.mdwn;h=a944ddd64a14023aeb77143938eb930618b91af5;hb=adffeae8812a84f105e4c280ea873c2bdd415c3d;hp=7657a2e3ce8d93a1b3b6e056750f947c6cf91e8c;hpb=695fef6c97e7ec27040646a42a0d11b1411070d0;p=cworth.org diff --git a/src/cairo/a_chain_of_bugs.mdwn b/src/cairo/a_chain_of_bugs.mdwn index 7657a2e..a944ddd 100644 --- a/src/cairo/a_chain_of_bugs.mdwn +++ b/src/cairo/a_chain_of_bugs.mdwn @@ -1,5 +1,7 @@ [[meta title="A chain of bugs"]] +[[tag cairo]] + With cairo's recent 1.6.4 release, we've hoped to reach the nirvana of applications that display and print documents with perfect fidelity. Unfortunately, reality isn't always as pleasant as we would @@ -19,7 +21,7 @@ Using Firefox3 with cairo 1.6.4 on a Fedora9 system, I did a "print to file" and obtained the following PDF output: [[bug.pdf]] (14,465 bytes). -This output is still quite accurate and farly usable. But we've +This output is still quite accurate and fairly usable. But we've already seen problem #1. Note that the file size has increased by a factor of 100 compared to the original HTML. The PDF does have more content, (firefox adds a header and footer for example), but nothing @@ -73,8 +75,8 @@ would have been larger than normal, but the final result would have looked great and printed just fine. And in that case, I probably would have never even received a bug report. -But there's a third problme that is the most pernicious, because it -results in the final result looking ust awful. When cairo inserts the +But there's a third problem that is the most pernicious, because it +results in the final result looking just awful. When cairo inserts the full-page fallback into the final PostScript file, it is inserting it at 300dpi, but it does that only after rendering it to an intermediate 72dpi image, which is then scaled up. That's why the final PostScript @@ -85,13 +87,13 @@ cairo alone), and I described my attempts in several posts to the cairo mailing list over the past couple of days, beginning here: [Bug with fallback resolution of -groups](href="http://lists.cairographics.org/archives/cairo/2008-May/014169.html) +groups](http://lists.cairographics.org/archives/cairo/2008-May/014169.html) In that series of posts I coded a minimal test case in cairo's test suite for the resolution problem, and a patch that fixes that test case. But when I use a patched cairo for the PDF to PostScript conversion of the file described here, I end up with the following -result: [[bug-patched-cairo.ps">bug-patched-cairo.ps]]. +result: [[bug-patched-cairo.ps]]. Here, there's still a giant, full-page fallback image, (this is expected since I haven't touched poppler yet). And the image is at @@ -100,10 +102,12 @@ text that appears is much more sharp than in the previous PostScript file). However, the original HTML table is now entirely missing. So there's definitely something wrong with my patch. -I'll continue to chase these bugs down, and continue my quest to get -high-quality display and print output from cairo-using -applications. It can be a difficult goal, but it's also a lot of fun -and very rewarding. - -Please feel free to jump in and help if you're interested. +I'll continue to chase these bugs down. The interesting thing about +this chain is that it's only as strong as its weakest link. Fixing any +of the individual problems here will make the end-to-end behavior be +quite acceptable. +And I'll continue my quest to get high-quality display and print +output from cairo-using applications. It can be a challenging goal, +but it's also a lot of fun and very rewarding. Please feel free to +jump in and help if you're interested.