X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=src%2Fcairo%2Fa_chain_of_bugs.mdwn;h=10dd2875866e8865975273f9587497f5aa1278ab;hb=2584359a20dd9d8766571dd5a50a0b739767dd4a;hp=1991c0dba6f1758e5935901039b22d595e361a7c;hpb=b114e15e18812da4eb82f2f81cb9c99e79611db0;p=cworth.org diff --git a/src/cairo/a_chain_of_bugs.mdwn b/src/cairo/a_chain_of_bugs.mdwn index 1991c0d..10dd287 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 @@ -50,9 +52,9 @@ rendering models. To explain a bit, (but ignoring many gory details), a PDF knockout group can be a very complicated thing, so poppler has some fairly sophisticated code to handle these. This support involves rendering -everything in the group twice and then using cairo's DEST_OUT and ADD +everything in the group twice and then using cairo's `DEST_OUT` and `ADD` compositing operators to properly combine them. Well, PostScript can't -do fancy compositing like DEST_OUT and ADD, so of course cairo falls +do fancy compositing like `DEST_OUT` and `ADD`, so of course cairo falls back to image-based rendering for things. The irony here is that the only reason cairo is using a knockout group in the original PDF file is to _prevent_ any compositing from happening, (the fallback image