summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2012-02-20 11:24:17 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2012-02-20 11:24:17 +0000
commitf4908b3848aac2b66a7acafc60eeab0066bc1b1d (patch)
tree3798f7d9a7598de54df72b5fde3cac6726e9f683 /test
parent01ea2d31cbbc12dafbe7831ef8c08a1bc78046a7 (diff)
test: Refresh reference images for antialiasing fix
Having discovered that I had recreated the references images with a buggy rasteriser, we now need to recreate them with the correct reference settings.
Diffstat (limited to 'test')
-rw-r--r--test/reference/a1-bug.argb32.ref.pngbin0 -> 3735 bytes
-rw-r--r--test/reference/a1-bug.rgb24.ref.pngbin0 -> 3735 bytes
-rw-r--r--test/reference/a1-clip-fill-equal.argb32.ref.pngbin0 -> 120 bytes
-rw-r--r--test/reference/a1-clip-fill-equal.rgb24.ref.pngbin0 -> 120 bytes
-rw-r--r--test/reference/a1-clip-fill.argb32.ref.pngbin0 -> 120 bytes
-rw-r--r--test/reference/a1-clip-fill.rgb24.ref.pngbin0 -> 120 bytes
-rw-r--r--test/reference/a1-clip-paint.argb32.ref.pngbin0 -> 120 bytes
-rw-r--r--test/reference/a1-clip-paint.rgb24.ref.pngbin0 -> 120 bytes
-rw-r--r--test/reference/a1-clip-stroke.argb32.ref.pngbin0 -> 120 bytes
-rw-r--r--test/reference/a1-clip-stroke.rgb24.ref.pngbin0 -> 120 bytes
-rw-r--r--test/reference/a1-fill.argb32.ref.pngbin0 -> 328 bytes
-rw-r--r--test/reference/a1-fill.rgb24.ref.pngbin0 -> 328 bytes
-rw-r--r--test/reference/a1-image-sample.argb32.ref.pngbin0 -> 122 bytes
-rw-r--r--test/reference/a1-image-sample.rgb24.ref.pngbin0 -> 122 bytes
-rw-r--r--test/reference/a1-image-sample.xlib-fallback.rgb24.ref.pngbin0 -> 122 bytes
-rw-r--r--test/reference/a1-image-sample.xlib-window.rgb24.ref.pngbin0 -> 122 bytes
-rw-r--r--test/reference/a1-image-sample.xlib.argb32.ref.pngbin0 -> 122 bytes
-rw-r--r--test/reference/a1-image-sample.xlib.rgb24.ref.pngbin0 -> 122 bytes
-rw-r--r--test/reference/a1-line-width.argb32.ref.pngbin0 -> 154 bytes
-rw-r--r--test/reference/a1-line-width.rgb24.ref.pngbin0 -> 154 bytes
-rw-r--r--test/reference/a1-mask-sample.argb32.ref.pngbin0 -> 122 bytes
-rw-r--r--test/reference/a1-mask-sample.rgb24.ref.pngbin0 -> 122 bytes
-rw-r--r--test/reference/a1-mask.argb32.ref.pngbin0 -> 106 bytes
-rw-r--r--test/reference/a1-mask.rgb24.ref.pngbin0 -> 106 bytes
-rw-r--r--test/reference/a1-rasterisation-rectangles.argb32.ref.pngbin0 -> 1729 bytes
-rw-r--r--test/reference/a1-rasterisation-rectangles.rgb24.ref.pngbin0 -> 1729 bytes
-rw-r--r--test/reference/a1-rasterisation-triangles.argb32.ref.pngbin0 -> 1729 bytes
-rw-r--r--test/reference/a1-rasterisation-triangles.rgb24.ref.pngbin0 -> 1729 bytes
-rw-r--r--test/reference/a1-rectilinear-grid.argb32.ref.pngbin0 -> 207 bytes
-rw-r--r--test/reference/a1-rectilinear-grid.rgb24.ref.pngbin0 -> 207 bytes
-rw-r--r--test/reference/a1-sample.argb32.ref.pngbin0 -> 786 bytes
-rw-r--r--test/reference/a1-sample.rgb24.ref.pngbin0 -> 786 bytes
-rw-r--r--test/reference/a1-tiger.argb32.ref.pngbin0 -> 20328 bytes
-rw-r--r--test/reference/a1-tiger.rgb24.ref.pngbin0 -> 20328 bytes
-rw-r--r--test/reference/a1-traps-sample.argb32.ref.pngbin0 -> 120 bytes
-rw-r--r--test/reference/a1-traps-sample.rgb24.ref.pngbin0 -> 120 bytes
-rw-r--r--test/reference/a8-clear.argb32.ref.pngbin0 -> 271 bytes
-rw-r--r--test/reference/a8-clear.rgb24.ref.pngbin0 -> 271 bytes
-rw-r--r--test/reference/a8-mask.argb32.ref.pngbin0 -> 103 bytes
-rw-r--r--test/reference/a8-mask.rgb24.ref.pngbin0 -> 103 bytes
-rw-r--r--test/reference/aliasing.argb32.ref.pngbin0 -> 104324 bytes
-rw-r--r--test/reference/aliasing.rgb24.ref.pngbin0 -> 104324 bytes
-rw-r--r--test/reference/alpha-similar.argb32.ref.pngbin0 -> 99 bytes
-rw-r--r--test/reference/alpha-similar.rgb24.ref.pngbin99 -> 88 bytes
-rw-r--r--test/reference/api-special-cases.argb32.ref.pngbin0 -> 95 bytes
-rw-r--r--test/reference/api-special-cases.rgb24.ref.pngbin0 -> 95 bytes
-rw-r--r--test/reference/arc-direction.argb32.ref.pngbin0 -> 6380 bytes
-rw-r--r--test/reference/arc-direction.rgb24.ref.pngbin0 -> 6380 bytes
-rw-r--r--test/reference/arc-infinite-loop.argb32.ref.pngbin0 -> 96 bytes
-rw-r--r--test/reference/arc-infinite-loop.rgb24.ref.pngbin0 -> 96 bytes
-rw-r--r--test/reference/arc-looping-dash.argb32.ref.pngbin0 -> 464 bytes
-rw-r--r--test/reference/arc-looping-dash.rgb24.ref.pngbin0 -> 464 bytes
-rw-r--r--test/reference/big-line.argb32.ref.pngbin0 -> 977 bytes
-rw-r--r--test/reference/big-line.rgb24.ref.pngbin0 -> 977 bytes
-rw-r--r--test/reference/big-little-triangle.argb32.ref.pngbin408 -> 409 bytes
-rw-r--r--test/reference/big-little-triangle.rgb24.ref.pngbin324 -> 328 bytes
-rw-r--r--test/reference/bilevel-image.argb32.ref.pngbin0 -> 105 bytes
-rw-r--r--test/reference/bilevel-image.rgb24.ref.pngbin0 -> 105 bytes
-rw-r--r--test/reference/bilevel-xlib-fallback.rgb24.ref.pngbin0 -> 105 bytes
-rw-r--r--test/reference/bilevel-xlib-window.rgb24.ref.pngbin0 -> 105 bytes
-rw-r--r--test/reference/bilevel-xlib.argb32.ref.pngbin0 -> 105 bytes
-rw-r--r--test/reference/bilevel-xlib.rgb24.ref.pngbin0 -> 105 bytes
-rw-r--r--test/reference/bitmap-font.argb32.ref.pngbin0 -> 931 bytes
-rw-r--r--test/reference/bitmap-font.rgb24.ref.pngbin890 -> 871 bytes
-rw-r--r--test/reference/bug-40410.argb32.ref.pngbin0 -> 429 bytes
-rw-r--r--test/reference/bug-40410.rgb24.ref.pngbin0 -> 429 bytes
-rw-r--r--test/reference/bug-bo-rectangular.argb32.ref.pngbin0 -> 950 bytes
-rw-r--r--test/reference/bug-bo-rectangular.rgb24.ref.pngbin0 -> 950 bytes
-rw-r--r--test/reference/bug-bo-ricotz.argb32.ref.pngbin0 -> 2128 bytes
-rw-r--r--test/reference/bug-bo-ricotz.rgb24.ref.pngbin0 -> 2128 bytes
-rw-r--r--test/reference/bug-extents.argb32.ref.pngbin0 -> 9251 bytes
-rw-r--r--test/reference/bug-extents.rgb24.ref.pngbin0 -> 9251 bytes
-rw-r--r--test/reference/bug-seams.argb32.ref.pngbin0 -> 1647 bytes
-rw-r--r--test/reference/bug-seams.rgb24.ref.pngbin0 -> 1647 bytes
-rw-r--r--test/reference/caps-joins-alpha.argb32.ref.pngbin0 -> 2662 bytes
-rw-r--r--test/reference/caps-joins-alpha.rgb24.ref.pngbin0 -> 2662 bytes
-rw-r--r--test/reference/caps-joins-curve.argb32.ref.pngbin0 -> 6217 bytes
-rw-r--r--test/reference/caps-joins-curve.rgb24.ref.pngbin0 -> 6217 bytes
-rw-r--r--test/reference/caps-joins.argb32.ref.pngbin0 -> 2893 bytes
-rw-r--r--test/reference/caps-joins.rgb24.ref.pngbin0 -> 2893 bytes
-rw-r--r--test/reference/caps-sub-paths.argb32.ref.pngbin0 -> 168 bytes
-rw-r--r--test/reference/caps-sub-paths.rgb24.ref.pngbin0 -> 168 bytes
-rw-r--r--test/reference/caps-tails-curve.argb32.ref.pngbin0 -> 53311 bytes
-rw-r--r--test/reference/caps-tails-curve.rgb24.ref.pngbin0 -> 53311 bytes
-rw-r--r--test/reference/caps.argb32.ref.pngbin0 -> 2115 bytes
-rw-r--r--test/reference/caps.rgb24.ref.pngbin0 -> 2115 bytes
-rw-r--r--test/reference/checkerboard.argb32.ref.pngbin0 -> 142 bytes
-rw-r--r--test/reference/checkerboard.rgb24.ref.pngbin0 -> 142 bytes
-rw-r--r--test/reference/clear-source.argb32.ref.pngbin0 -> 882 bytes
-rw-r--r--test/reference/clear-source.rgb24.ref.pngbin0 -> 882 bytes
-rw-r--r--test/reference/clear.argb32.ref.pngbin539 -> 692 bytes
-rw-r--r--test/reference/clear.rgb24.ref.pngbin484 -> 617 bytes
-rw-r--r--test/reference/clip-all.argb32.ref.pngbin0 -> 95 bytes
-rw-r--r--test/reference/clip-all.rgb24.ref.pngbin0 -> 95 bytes
-rw-r--r--test/reference/clip-complex-shape-eo-aa.argb32.ref.pngbin0 -> 325 bytes
-rw-r--r--test/reference/clip-complex-shape-eo-aa.rgb24.ref.pngbin0 -> 325 bytes
-rw-r--r--test/reference/clip-complex-shape-eo-mono.argb32.ref.pngbin0 -> 325 bytes
-rw-r--r--test/reference/clip-complex-shape-eo-mono.rgb24.ref.pngbin0 -> 325 bytes
-rw-r--r--test/reference/clip-contexts.argb32.ref.pngbin0 -> 98 bytes
-rw-r--r--test/reference/clip-contexts.rgb24.ref.pngbin0 -> 98 bytes
-rw-r--r--test/reference/clip-disjoint-hatching.argb32.ref.pngbin0 -> 9022 bytes
-rw-r--r--test/reference/clip-disjoint-hatching.rgb24.ref.pngbin0 -> 9022 bytes
-rw-r--r--test/reference/clip-disjoint.argb32.ref.pngbin0 -> 5399 bytes
-rw-r--r--test/reference/clip-disjoint.rgb24.ref.pngbin0 -> 5399 bytes
-rw-r--r--test/reference/clip-empty-group.argb32.ref.pngbin0 -> 103 bytes
-rw-r--r--test/reference/clip-empty-group.rgb24.ref.pngbin0 -> 103 bytes
-rw-r--r--test/reference/clip-empty-save.argb32.ref.pngbin0 -> 95 bytes
-rw-r--r--test/reference/clip-empty-save.rgb24.ref.pngbin0 -> 95 bytes
-rw-r--r--test/reference/clip-empty.argb32.ref.pngbin0 -> 95 bytes
-rw-r--r--test/reference/clip-empty.rgb24.ref.pngbin0 -> 95 bytes
-rw-r--r--test/reference/clip-fill-eo-unbounded.argb32.ref.pngbin3970 -> 4197 bytes
-rw-r--r--test/reference/clip-fill-eo-unbounded.rgb24.ref.pngbin3409 -> 3551 bytes
-rw-r--r--test/reference/clip-fill-no-op.argb32.ref.pngbin0 -> 152 bytes
-rw-r--r--test/reference/clip-fill-no-op.rgb24.ref.pngbin0 -> 152 bytes
-rw-r--r--test/reference/clip-fill-nz-unbounded.argb32.ref.pngbin3970 -> 4197 bytes
-rw-r--r--test/reference/clip-fill-nz-unbounded.rgb24.ref.pngbin3409 -> 3551 bytes
-rw-r--r--test/reference/clip-fill-rule-pixel-aligned.argb32.ref.pngbin0 -> 176 bytes
-rw-r--r--test/reference/clip-fill-rule-pixel-aligned.rgb24.ref.pngbin184 -> 165 bytes
-rw-r--r--test/reference/clip-fill-rule.argb32.ref.pngbin371 -> 437 bytes
-rw-r--r--test/reference/clip-fill-rule.rgb24.ref.pngbin338 -> 393 bytes
-rw-r--r--test/reference/clip-fill.argb32.ref.pngbin0 -> 1031 bytes
-rw-r--r--test/reference/clip-fill.rgb24.ref.pngbin0 -> 1031 bytes
-rw-r--r--test/reference/clip-group-shapes-aligned-rectangles.argb32.ref.pngbin0 -> 378 bytes
-rw-r--r--test/reference/clip-group-shapes-aligned-rectangles.rgb24.ref.pngbin0 -> 378 bytes
-rw-r--r--test/reference/clip-group-shapes-circles.argb32.ref.pngbin0 -> 1525 bytes
-rw-r--r--test/reference/clip-group-shapes-circles.rgb24.ref.pngbin0 -> 1525 bytes
-rw-r--r--test/reference/clip-group-shapes-unaligned-rectangles.argb32.ref.pngbin0 -> 415 bytes
-rw-r--r--test/reference/clip-group-shapes-unaligned-rectangles.rgb24.ref.pngbin0 -> 415 bytes
-rw-r--r--test/reference/clip-image.argb32.ref.pngbin0 -> 2677 bytes
-rw-r--r--test/reference/clip-image.rgb24.ref.pngbin0 -> 2677 bytes
-rw-r--r--test/reference/clip-intersect.argb32.ref.pngbin0 -> 200 bytes
-rw-r--r--test/reference/clip-intersect.rgb24.ref.pngbin0 -> 200 bytes
-rw-r--r--test/reference/clip-mixed-antialias.argb32.ref.pngbin0 -> 1084 bytes
-rw-r--r--test/reference/clip-mixed-antialias.rgb24.ref.pngbin0 -> 1084 bytes
-rw-r--r--test/reference/clip-nesting.argb32.ref.pngbin1080 -> 1044 bytes
-rw-r--r--test/reference/clip-nesting.rgb24.ref.pngbin954 -> 937 bytes
-rw-r--r--test/reference/clip-polygons.argb32.ref.pngbin0 -> 1352 bytes
-rw-r--r--test/reference/clip-polygons.rgb24.ref.pngbin0 -> 1352 bytes
-rw-r--r--test/reference/clip-push-group.argb32.ref.pngbin0 -> 164 bytes
-rw-r--r--test/reference/clip-push-group.rgb24.ref.pngbin0 -> 164 bytes
-rw-r--r--test/reference/clip-rectilinear.argb32.ref.pngbin0 -> 439 bytes
-rw-r--r--test/reference/clip-rectilinear.rgb24.ref.pngbin0 -> 439 bytes
-rw-r--r--test/reference/clip-rotate-image-surface-paint.argb32.ref.pngbin0 -> 202 bytes
-rw-r--r--test/reference/clip-rotate-image-surface-paint.rgb24.ref.pngbin0 -> 202 bytes
-rw-r--r--test/reference/clip-rotate-image-surface-paint.xlib-fallback.rgb24.ref.pngbin0 -> 202 bytes
-rw-r--r--test/reference/clip-rotate-image-surface-paint.xlib-window.rgb24.ref.pngbin0 -> 202 bytes
-rw-r--r--test/reference/clip-rotate-image-surface-paint.xlib.argb32.ref.pngbin0 -> 202 bytes
-rw-r--r--test/reference/clip-rotate-image-surface-paint.xlib.rgb24.ref.pngbin0 -> 202 bytes
-rw-r--r--test/reference/clip-shape.argb32.ref.pngbin0 -> 3073 bytes
-rw-r--r--test/reference/clip-shape.rgb24.ref.pngbin0 -> 3073 bytes
-rw-r--r--test/reference/clip-stroke-no-op.argb32.ref.pngbin0 -> 152 bytes
-rw-r--r--test/reference/clip-stroke-no-op.rgb24.ref.pngbin0 -> 152 bytes
-rw-r--r--test/reference/clip-stroke-unbounded.argb32.ref.pngbin3887 -> 4128 bytes
-rw-r--r--test/reference/clip-stroke-unbounded.rgb24.ref.pngbin3408 -> 3546 bytes
-rw-r--r--test/reference/clip-stroke.argb32.ref.pngbin0 -> 1522 bytes
-rw-r--r--test/reference/clip-stroke.rgb24.ref.pngbin0 -> 1522 bytes
-rw-r--r--test/reference/clip-text.argb32.ref.pngbin0 -> 928 bytes
-rw-r--r--test/reference/clip-text.rgb24.ref.pngbin0 -> 928 bytes
-rw-r--r--test/reference/clip-twice-rectangle.argb32.ref.pngbin0 -> 323 bytes
-rw-r--r--test/reference/clip-twice-rectangle.rgb24.ref.pngbin0 -> 323 bytes
-rw-r--r--test/reference/clip-twice.argb32.ref.pngbin1068 -> 1358 bytes
-rw-r--r--test/reference/clip-twice.rgb24.ref.pngbin1022 -> 1195 bytes
-rw-r--r--test/reference/clip-unbounded.argb32.ref.pngbin0 -> 100 bytes
-rw-r--r--test/reference/clip-xlib-fallback.rgb24.ref.pngbin0 -> 2686 bytes
-rw-r--r--test/reference/clip-xlib-window.rgb24.ref.pngbin0 -> 2686 bytes
-rw-r--r--test/reference/clip-xlib.argb32.ref.pngbin0 -> 2686 bytes
-rw-r--r--test/reference/clip-xlib.rgb24.ref.pngbin0 -> 2686 bytes
-rw-r--r--test/reference/clipped-group.argb32.ref.pngbin0 -> 342 bytes
-rw-r--r--test/reference/clipped-group.rgb24.ref.pngbin0 -> 342 bytes
-rw-r--r--test/reference/clipped-surface.argb32.ref.pngbin0 -> 345 bytes
-rw-r--r--test/reference/clipped-surface.rgb24.ref.pngbin0 -> 345 bytes
-rw-r--r--test/reference/close-path-current-point.argb32.ref.pngbin0 -> 2324 bytes
-rw-r--r--test/reference/close-path-current-point.rgb24.ref.pngbin0 -> 2324 bytes
-rw-r--r--test/reference/close-path.argb32.ref.pngbin0 -> 294 bytes
-rw-r--r--test/reference/close-path.rgb24.ref.pngbin0 -> 294 bytes
-rw-r--r--test/reference/composite-integer-translate-over-repeat.argb32.ref.pngbin0 -> 334 bytes
-rw-r--r--test/reference/composite-integer-translate-over-repeat.rgb24.ref.pngbin0 -> 334 bytes
-rw-r--r--test/reference/composite-integer-translate-over.argb32.ref.pngbin0 -> 13998 bytes
-rw-r--r--test/reference/composite-integer-translate-over.rgb24.ref.pngbin0 -> 13998 bytes
-rw-r--r--test/reference/composite-integer-translate-source.argb32.ref.pngbin0 -> 13998 bytes
-rw-r--r--test/reference/composite-integer-translate-source.rgb24.ref.pngbin0 -> 13998 bytes
-rw-r--r--test/reference/copy-disjoint.argb32.ref.pngbin0 -> 1098 bytes
-rw-r--r--test/reference/copy-disjoint.rgb24.ref.pngbin0 -> 1098 bytes
-rw-r--r--test/reference/copy-path.argb32.ref.pngbin0 -> 616 bytes
-rw-r--r--test/reference/copy-path.rgb24.ref.pngbin0 -> 616 bytes
-rw-r--r--test/reference/create-from-png-stream.argb32.ref.pngbin0 -> 96 bytes
-rw-r--r--test/reference/create-from-png-stream.rgb24.ref.pngbin0 -> 96 bytes
-rw-r--r--test/reference/create-from-png.argb32.ref.pngbin0 -> 96 bytes
-rw-r--r--test/reference/create-from-png.rgb24.ref.pngbin0 -> 96 bytes
-rw-r--r--test/reference/culled-glyphs.argb32.ref.pngbin0 -> 440 bytes
-rw-r--r--test/reference/culled-glyphs.rgb24.ref.pngbin0 -> 440 bytes
-rw-r--r--test/reference/curve-to-as-line-to.argb32.ref.pngbin0 -> 109 bytes
-rw-r--r--test/reference/curve-to-as-line-to.rgb24.ref.pngbin0 -> 109 bytes
-rw-r--r--test/reference/dash-caps-joins.argb32.ref.pngbin0 -> 5157 bytes
-rw-r--r--test/reference/dash-caps-joins.rgb24.ref.pngbin0 -> 5157 bytes
-rw-r--r--test/reference/dash-curve.argb32.ref.pngbin0 -> 41040 bytes
-rw-r--r--test/reference/dash-curve.rgb24.ref.pngbin0 -> 41040 bytes
-rw-r--r--test/reference/dash-infinite-loop.argb32.ref.pngbin0 -> 877 bytes
-rw-r--r--test/reference/dash-infinite-loop.rgb24.ref.pngbin0 -> 877 bytes
-rw-r--r--test/reference/dash-no-dash.argb32.ref.pngbin0 -> 119 bytes
-rw-r--r--test/reference/dash-no-dash.rgb24.ref.pngbin0 -> 119 bytes
-rw-r--r--test/reference/dash-offset-negative.argb32.ref.pngbin0 -> 129 bytes
-rw-r--r--test/reference/dash-offset-negative.rgb24.ref.pngbin0 -> 129 bytes
-rw-r--r--test/reference/dash-offset.argb32.ref.pngbin0 -> 794 bytes
-rw-r--r--test/reference/dash-offset.rgb24.ref.pngbin0 -> 794 bytes
-rw-r--r--test/reference/dash-scale.argb32.ref.pngbin0 -> 8913 bytes
-rw-r--r--test/reference/dash-scale.rgb24.ref.pngbin0 -> 8913 bytes
-rw-r--r--test/reference/dash-state.argb32.ref.pngbin0 -> 8027 bytes
-rw-r--r--test/reference/dash-state.rgb24.ref.pngbin0 -> 8027 bytes
-rw-r--r--test/reference/dash-zero-length.argb32.ref.pngbin0 -> 230 bytes
-rw-r--r--test/reference/dash-zero-length.rgb24.ref.pngbin218 -> 210 bytes
-rw-r--r--test/reference/degenerate-arc.argb32.ref.pngbin0 -> 653 bytes
-rw-r--r--test/reference/degenerate-arc.rgb24.ref.pngbin0 -> 653 bytes
-rw-r--r--test/reference/degenerate-arcs.argb32.ref.pngbin0 -> 120 bytes
-rw-r--r--test/reference/degenerate-arcs.rgb24.ref.pngbin0 -> 120 bytes
-rw-r--r--test/reference/degenerate-curve-to.argb32.ref.pngbin0 -> 280 bytes
-rw-r--r--test/reference/degenerate-curve-to.rgb24.ref.pngbin0 -> 280 bytes
-rw-r--r--test/reference/degenerate-dash.argb32.ref.pngbin0 -> 2086 bytes
-rw-r--r--test/reference/degenerate-dash.rgb24.ref.pngbin0 -> 2086 bytes
-rw-r--r--test/reference/degenerate-linear-gradient.argb32.ref.pngbin0 -> 336 bytes
-rw-r--r--test/reference/degenerate-linear-gradient.rgb24.ref.pngbin0 -> 336 bytes
-rw-r--r--test/reference/degenerate-path.argb32.ref.pngbin253 -> 250 bytes
-rw-r--r--test/reference/degenerate-path.rgb24.ref.pngbin212 -> 219 bytes
-rw-r--r--test/reference/degenerate-pen.argb32.ref.pngbin0 -> 1019 bytes
-rw-r--r--test/reference/degenerate-pen.rgb24.ref.pngbin0 -> 1019 bytes
-rw-r--r--test/reference/degenerate-radial-gradient.argb32.ref.pngbin0 -> 428 bytes
-rw-r--r--test/reference/degenerate-radial-gradient.rgb24.ref.pngbin0 -> 428 bytes
-rw-r--r--test/reference/degenerate-rel-curve-to.argb32.ref.pngbin0 -> 277 bytes
-rw-r--r--test/reference/degenerate-rel-curve-to.rgb24.ref.pngbin0 -> 277 bytes
-rw-r--r--test/reference/device-offset-fractional.argb32.ref.pngbin0 -> 266 bytes
-rw-r--r--test/reference/device-offset-fractional.rgb24.ref.pngbin0 -> 266 bytes
-rw-r--r--test/reference/device-offset-positive.argb32.ref.pngbin0 -> 120 bytes
-rw-r--r--test/reference/device-offset-positive.rgb24.ref.pngbin130 -> 111 bytes
-rw-r--r--test/reference/device-offset-scale.argb32.ref.pngbin0 -> 109 bytes
-rw-r--r--test/reference/device-offset-scale.rgb24.ref.pngbin0 -> 109 bytes
-rw-r--r--test/reference/device-offset.argb32.ref.pngbin0 -> 118 bytes
-rw-r--r--test/reference/device-offset.rgb24.ref.pngbin130 -> 111 bytes
-rw-r--r--test/reference/drunkard-tails.argb32.ref.pngbin0 -> 6116 bytes
-rw-r--r--test/reference/drunkard-tails.rgb24.ref.pngbin0 -> 6116 bytes
-rw-r--r--test/reference/extend-pad-border.argb32.ref.pngbin0 -> 495 bytes
-rw-r--r--test/reference/extend-pad-border.rgb24.ref.pngbin0 -> 495 bytes
-rw-r--r--test/reference/extend-pad-similar.argb32.ref.pngbin0 -> 279 bytes
-rw-r--r--test/reference/extend-pad-similar.rgb24.ref.pngbin0 -> 279 bytes
-rw-r--r--test/reference/extend-pad.argb32.ref.pngbin0 -> 279 bytes
-rw-r--r--test/reference/extend-pad.rgb24.ref.pngbin0 -> 279 bytes
-rw-r--r--test/reference/extend-reflect-similar.argb32.ref.pngbin0 -> 133406 bytes
-rw-r--r--test/reference/extend-reflect-similar.rgb24.ref.pngbin0 -> 133406 bytes
-rw-r--r--test/reference/extend-reflect.argb32.ref.pngbin0 -> 133406 bytes
-rw-r--r--test/reference/extend-reflect.rgb24.ref.pngbin0 -> 133406 bytes
-rw-r--r--test/reference/extend-repeat-similar.argb32.ref.pngbin0 -> 108603 bytes
-rw-r--r--test/reference/extend-repeat-similar.rgb24.ref.pngbin0 -> 108603 bytes
-rw-r--r--test/reference/extend-repeat.argb32.ref.pngbin0 -> 108603 bytes
-rw-r--r--test/reference/extend-repeat.rgb24.ref.pngbin0 -> 108603 bytes
-rw-r--r--test/reference/extended-blend-solid.argb32.ref.pngbin4071 -> 4063 bytes
-rw-r--r--test/reference/extended-blend.argb32.ref.pngbin4071 -> 4063 bytes
-rw-r--r--test/reference/fallback.argb32.ref.pngbin3139 -> 4070 bytes
-rw-r--r--test/reference/fallback.image16.rgb24.ref.pngbin0 -> 2642 bytes
-rw-r--r--test/reference/fallback.rgb24.ref.pngbin2490 -> 3141 bytes
-rw-r--r--test/reference/fill-alpha-pattern.argb32.ref.pngbin0 -> 3381 bytes
-rw-r--r--test/reference/fill-alpha-pattern.rgb24.ref.pngbin0 -> 3381 bytes
-rw-r--r--test/reference/fill-alpha.argb32.ref.pngbin0 -> 2736 bytes
-rw-r--r--test/reference/fill-alpha.rgb24.ref.pngbin0 -> 2736 bytes
-rw-r--r--test/reference/fill-and-stroke-alpha-add.argb32.ref.pngbin0 -> 556 bytes
-rw-r--r--test/reference/fill-and-stroke-alpha-add.rgb24.ref.pngbin0 -> 556 bytes
-rw-r--r--test/reference/fill-and-stroke-alpha.argb32.ref.pngbin0 -> 508 bytes
-rw-r--r--test/reference/fill-and-stroke-alpha.rgb24.ref.pngbin0 -> 508 bytes
-rw-r--r--test/reference/fill-and-stroke.argb32.ref.pngbin269 -> 312 bytes
-rw-r--r--test/reference/fill-and-stroke.rgb24.ref.pngbin252 -> 283 bytes
-rw-r--r--test/reference/fill-degenerate-sort-order.argb32.ref.pngbin1929 -> 2400 bytes
-rw-r--r--test/reference/fill-degenerate-sort-order.rgb24.ref.pngbin1689 -> 2049 bytes
-rw-r--r--test/reference/fill-disjoint.argb32.ref.pngbin0 -> 1098 bytes
-rw-r--r--test/reference/fill-disjoint.rgb24.ref.pngbin0 -> 1098 bytes
-rw-r--r--test/reference/fill-image.argb32.ref.pngbin0 -> 1315 bytes
-rw-r--r--test/reference/fill-image.rgb24.ref.pngbin0 -> 1315 bytes
-rw-r--r--test/reference/fill-missed-stop.argb32.ref.pngbin0 -> 455 bytes
-rw-r--r--test/reference/fill-missed-stop.rgb24.ref.pngbin382 -> 382 bytes
-rw-r--r--test/reference/fill-rule.argb32.ref.pngbin0 -> 2065 bytes
-rw-r--r--test/reference/fill-rule.rgb24.ref.pngbin1591 -> 1803 bytes
-rw-r--r--test/reference/fill-xlib-fallback.rgb24.ref.pngbin0 -> 1458 bytes
-rw-r--r--test/reference/fill-xlib-window.rgb24.ref.pngbin0 -> 1458 bytes
-rw-r--r--test/reference/fill-xlib.argb32.ref.pngbin0 -> 1458 bytes
-rw-r--r--test/reference/fill-xlib.rgb24.ref.pngbin0 -> 1458 bytes
-rw-r--r--test/reference/filter-bilinear-extents.argb32.ref.pngbin0 -> 1210 bytes
-rw-r--r--test/reference/filter-bilinear-extents.rgb24.ref.pngbin0 -> 1210 bytes
-rw-r--r--test/reference/filter-nearest-offset.argb32.ref.pngbin0 -> 201 bytes
-rw-r--r--test/reference/filter-nearest-offset.rgb24.ref.pngbin0 -> 201 bytes
-rw-r--r--test/reference/filter-nearest-transformed.argb32.ref.pngbin0 -> 514 bytes
-rw-r--r--test/reference/filter-nearest-transformed.rgb24.ref.pngbin0 -> 514 bytes
-rw-r--r--test/reference/finer-grained-fallbacks.argb32.ref.pngbin993 -> 1167 bytes
-rw-r--r--test/reference/finer-grained-fallbacks.rgb24.ref.pngbin786 -> 891 bytes
-rw-r--r--test/reference/font-matrix-translation.argb32.ref.pngbin0 -> 865 bytes
-rw-r--r--test/reference/font-matrix-translation.rgb24.ref.pngbin0 -> 865 bytes
-rw-r--r--test/reference/ft-show-glyphs-positioning.argb32.ref.pngbin0 -> 3243 bytes
-rw-r--r--test/reference/ft-show-glyphs-positioning.rgb24.ref.pngbin0 -> 3243 bytes
-rw-r--r--test/reference/ft-show-glyphs-table.argb32.ref.pngbin0 -> 9975 bytes
-rw-r--r--test/reference/ft-show-glyphs-table.rgb24.ref.pngbin0 -> 9975 bytes
-rw-r--r--test/reference/ft-text-antialias-none.argb32.ref.pngbin0 -> 295 bytes
-rw-r--r--test/reference/ft-text-antialias-none.rgb24.ref.pngbin0 -> 295 bytes
-rw-r--r--test/reference/ft-text-vertical-layout-type1.argb32.ref.pngbin0 -> 3062 bytes
-rw-r--r--test/reference/ft-text-vertical-layout-type1.rgb24.ref.pngbin0 -> 3062 bytes
-rw-r--r--test/reference/ft-text-vertical-layout-type3.argb32.ref.pngbin0 -> 3610 bytes
-rw-r--r--test/reference/ft-text-vertical-layout-type3.rgb24.ref.pngbin0 -> 3610 bytes
-rw-r--r--test/reference/get-group-target.argb32.ref.pngbin0 -> 113 bytes
-rw-r--r--test/reference/get-group-target.rgb24.ref.pngbin0 -> 113 bytes
-rw-r--r--test/reference/glyph-cache-pressure.argb32.ref.pngbin0 -> 2858 bytes
-rw-r--r--test/reference/glyph-cache-pressure.rgb24.ref.pngbin0 -> 2858 bytes
-rw-r--r--test/reference/gradient-alpha.argb32.ref.pngbin0 -> 125 bytes
-rw-r--r--test/reference/gradient-constant-alpha.argb32.ref.pngbin0 -> 111 bytes
-rw-r--r--test/reference/gradient-zero-stops.argb32.ref.pngbin0 -> 86 bytes
-rw-r--r--test/reference/gradient-zero-stops.rgb24.ref.pngbin105 -> 86 bytes
-rw-r--r--test/reference/group-clip.argb32.ref.pngbin0 -> 191 bytes
-rw-r--r--test/reference/group-clip.rgb24.ref.pngbin0 -> 191 bytes
-rw-r--r--test/reference/group-paint.argb32.ref.pngbin0 -> 95 bytes
-rw-r--r--test/reference/group-paint.rgb24.ref.pngbin0 -> 95 bytes
-rw-r--r--test/reference/group-unaligned.argb32.ref.pngbin0 -> 427 bytes
-rw-r--r--test/reference/group-unaligned.rgb24.ref.pngbin0 -> 427 bytes
-rw-r--r--test/reference/halo-transform.argb32.ref.pngbin0 -> 15063 bytes
-rw-r--r--test/reference/halo-transform.rgb24.ref.pngbin0 -> 15063 bytes
-rw-r--r--test/reference/halo.argb32.ref.pngbin0 -> 8726 bytes
-rw-r--r--test/reference/halo.rgb24.ref.pngbin0 -> 8726 bytes
-rw-r--r--test/reference/hatchings.argb32.ref.pngbin0 -> 92730 bytes
-rw-r--r--test/reference/hatchings.rgb24.ref.pngbin0 -> 92730 bytes
-rw-r--r--test/reference/horizontal-clip.argb32.ref.pngbin0 -> 113 bytes
-rw-r--r--test/reference/horizontal-clip.rgb24.ref.pngbin0 -> 113 bytes
-rw-r--r--test/reference/huge-linear.argb32.ref.pngbin0 -> 1600 bytes
-rw-r--r--test/reference/huge-linear.rgb24.ref.pngbin0 -> 1600 bytes
-rw-r--r--test/reference/huge-radial.argb32.ref.pngbin0 -> 41702 bytes
-rw-r--r--test/reference/huge-radial.rgb24.ref.pngbin0 -> 41702 bytes
-rw-r--r--test/reference/image-bug-710072-aligned.argb32.ref.pngbin0 -> 151 bytes
-rw-r--r--test/reference/image-bug-710072-aligned.rgb24.ref.pngbin0 -> 151 bytes
-rw-r--r--test/reference/image-bug-710072-aligned.xlib-fallback.rgb24.ref.pngbin0 -> 151 bytes
-rw-r--r--test/reference/image-bug-710072-aligned.xlib-window.rgb24.ref.pngbin0 -> 151 bytes
-rw-r--r--test/reference/image-bug-710072-aligned.xlib.argb32.ref.pngbin0 -> 151 bytes
-rw-r--r--test/reference/image-bug-710072-aligned.xlib.rgb24.ref.pngbin0 -> 151 bytes
-rw-r--r--test/reference/image-bug-710072-unaligned.argb32.ref.pngbin0 -> 212 bytes
-rw-r--r--test/reference/image-bug-710072-unaligned.rgb24.ref.pngbin0 -> 212 bytes
-rw-r--r--test/reference/image-bug-710072-unaligned.xlib-fallback.rgb24.ref.pngbin0 -> 219 bytes
-rw-r--r--test/reference/image-bug-710072-unaligned.xlib-window.rgb24.ref.pngbin0 -> 219 bytes
-rw-r--r--test/reference/image-bug-710072-unaligned.xlib.argb32.ref.pngbin0 -> 219 bytes
-rw-r--r--test/reference/image-bug-710072-unaligned.xlib.rgb24.ref.pngbin0 -> 219 bytes
-rw-r--r--test/reference/image-surface-source.xlib-fallback.rgb24.ref.pngbin0 -> 301 bytes
-rw-r--r--test/reference/image-surface-source.xlib-window.rgb24.ref.pngbin0 -> 301 bytes
-rw-r--r--test/reference/image-surface-source.xlib.argb32.ref.pngbin0 -> 377 bytes
-rw-r--r--test/reference/image-surface-source.xlib.rgb24.ref.pngbin0 -> 301 bytes
-rw-r--r--test/reference/implicit-close.argb32.ref.pngbin0 -> 251 bytes
-rw-r--r--test/reference/implicit-close.rgb24.ref.pngbin0 -> 251 bytes
-rw-r--r--test/reference/infinite-join.argb32.ref.pngbin0 -> 164 bytes
-rw-r--r--test/reference/infinite-join.rgb24.ref.pngbin0 -> 164 bytes
-rw-r--r--test/reference/joins-loop.argb32.ref.pngbin0 -> 4492 bytes
-rw-r--r--test/reference/joins-loop.rgb24.ref.pngbin0 -> 4492 bytes
-rw-r--r--test/reference/joins-retrace.argb32.ref.pngbin0 -> 4997 bytes
-rw-r--r--test/reference/joins-retrace.rgb24.ref.pngbin0 -> 4997 bytes
-rw-r--r--test/reference/joins-star.argb32.ref.pngbin0 -> 4914 bytes
-rw-r--r--test/reference/joins-star.rgb24.ref.pngbin0 -> 4914 bytes
-rw-r--r--test/reference/joins.argb32.ref.pngbin0 -> 6970 bytes
-rw-r--r--test/reference/joins.rgb24.ref.pngbin0 -> 6970 bytes
-rw-r--r--test/reference/large-clip.argb32.ref.pngbin0 -> 305 bytes
-rw-r--r--test/reference/large-clip.rgb24.ref.pngbin0 -> 305 bytes
-rw-r--r--test/reference/large-font.argb32.ref.pngbin0 -> 6117 bytes
-rw-r--r--test/reference/large-font.rgb24.ref.pngbin0 -> 6117 bytes
-rw-r--r--test/reference/large-source-roi.argb32.ref.pngbin0 -> 93 bytes
-rw-r--r--test/reference/large-source-roi.rgb24.ref.pngbin0 -> 93 bytes
-rw-r--r--test/reference/large-source.argb32.ref.pngbin0 -> 112 bytes
-rw-r--r--test/reference/large-source.rgb24.ref.pngbin0 -> 112 bytes
-rw-r--r--test/reference/large-twin-antialias-mixed.argb32.ref.pngbin0 -> 16660 bytes
-rw-r--r--test/reference/large-twin-antialias-mixed.rgb24.ref.pngbin0 -> 16660 bytes
-rw-r--r--test/reference/leaky-dash.argb32.ref.pngbin0 -> 197 bytes
-rw-r--r--test/reference/leaky-dash.rgb24.ref.pngbin0 -> 197 bytes
-rw-r--r--test/reference/leaky-dashed-rectangle.argb32.ref.pngbin0 -> 357 bytes
-rw-r--r--test/reference/leaky-dashed-rectangle.rgb24.ref.pngbin0 -> 357 bytes
-rw-r--r--test/reference/leaky-dashed-stroke.argb32.ref.pngbin0 -> 9387 bytes
-rw-r--r--test/reference/leaky-dashed-stroke.rgb24.ref.pngbin0 -> 9387 bytes
-rw-r--r--test/reference/leaky-polygon.argb32.ref.pngbin0 -> 337 bytes
-rw-r--r--test/reference/leaky-polygon.rgb24.ref.pngbin0 -> 337 bytes
-rw-r--r--test/reference/line-width-large-overlap-flipped.argb32.ref.pngbin0 -> 305 bytes
-rw-r--r--test/reference/line-width-large-overlap-flipped.rgb24.ref.pngbin0 -> 305 bytes
-rw-r--r--test/reference/line-width-large-overlap-flopped.argb32.ref.pngbin0 -> 305 bytes
-rw-r--r--test/reference/line-width-large-overlap-flopped.rgb24.ref.pngbin0 -> 305 bytes
-rw-r--r--test/reference/line-width-large-overlap-offset.argb32.ref.pngbin0 -> 305 bytes
-rw-r--r--test/reference/line-width-large-overlap-offset.rgb24.ref.pngbin0 -> 305 bytes
-rw-r--r--test/reference/line-width-large-overlap-rotated.argb32.ref.pngbin0 -> 427 bytes
-rw-r--r--test/reference/line-width-large-overlap-rotated.rgb24.ref.pngbin0 -> 427 bytes
-rw-r--r--test/reference/line-width-large-overlap.argb32.ref.pngbin0 -> 305 bytes
-rw-r--r--test/reference/line-width-large-overlap.rgb24.ref.pngbin0 -> 305 bytes
-rw-r--r--test/reference/line-width-overlap-flipped.argb32.ref.pngbin0 -> 324 bytes
-rw-r--r--test/reference/line-width-overlap-flipped.rgb24.ref.pngbin0 -> 324 bytes
-rw-r--r--test/reference/line-width-overlap-flopped.argb32.ref.pngbin0 -> 324 bytes
-rw-r--r--test/reference/line-width-overlap-flopped.rgb24.ref.pngbin0 -> 324 bytes
-rw-r--r--test/reference/line-width-overlap-offset.argb32.ref.pngbin0 -> 348 bytes
-rw-r--r--test/reference/line-width-overlap-offset.rgb24.ref.pngbin0 -> 348 bytes
-rw-r--r--test/reference/line-width-overlap-rotated.argb32.ref.pngbin0 -> 828 bytes
-rw-r--r--test/reference/line-width-overlap-rotated.rgb24.ref.pngbin0 -> 828 bytes
-rw-r--r--test/reference/line-width-overlap.argb32.ref.pngbin0 -> 324 bytes
-rw-r--r--test/reference/line-width-overlap.rgb24.ref.pngbin0 -> 324 bytes
-rw-r--r--test/reference/line-width-scale.argb32.ref.pngbin0 -> 5721 bytes
-rw-r--r--test/reference/line-width-scale.rgb24.ref.pngbin0 -> 5721 bytes
-rw-r--r--test/reference/line-width-tolerance.argb32.ref.pngbin0 -> 168 bytes
-rw-r--r--test/reference/line-width-tolerance.rgb24.ref.pngbin0 -> 168 bytes
-rw-r--r--test/reference/line-width.argb32.ref.pngbin0 -> 178 bytes
-rw-r--r--test/reference/line-width.rgb24.ref.pngbin0 -> 178 bytes
-rw-r--r--test/reference/linear-gradient-extend.argb32.ref.pngbin0 -> 371 bytes
-rw-r--r--test/reference/linear-gradient-extend.rgb24.ref.pngbin0 -> 371 bytes
-rw-r--r--test/reference/linear-gradient-large.argb32.ref.pngbin0 -> 4076 bytes
-rw-r--r--test/reference/linear-gradient-large.rgb24.ref.pngbin0 -> 4076 bytes
-rw-r--r--test/reference/linear-gradient-reflect.argb32.ref.pngbin0 -> 185 bytes
-rw-r--r--test/reference/linear-gradient-reflect.rgb24.ref.pngbin0 -> 185 bytes
-rw-r--r--test/reference/linear-gradient-subset.argb32.ref.pngbin0 -> 820 bytes
-rw-r--r--test/reference/linear-gradient-subset.rgb24.ref.pngbin0 -> 820 bytes
-rw-r--r--test/reference/linear-gradient.argb32.ref.pngbin0 -> 974 bytes
-rw-r--r--test/reference/linear-gradient.rgb24.ref.pngbin0 -> 974 bytes
-rw-r--r--test/reference/linear-uniform.argb32.ref.pngbin0 -> 128 bytes
-rw-r--r--test/reference/linear-uniform.rgb24.ref.pngbin0 -> 128 bytes
-rw-r--r--test/reference/long-dashed-lines.argb32.ref.pngbin0 -> 2548 bytes
-rw-r--r--test/reference/long-dashed-lines.rgb24.ref.pngbin0 -> 2548 bytes
-rw-r--r--test/reference/map-all-to-image.argb32.ref.pngbin0 -> 86 bytes
-rw-r--r--test/reference/map-all-to-image.rgb24.ref.pngbin0 -> 86 bytes
-rw-r--r--test/reference/map-all-to-xlib-fallback.rgb24.ref.pngbin0 -> 86 bytes
-rw-r--r--test/reference/map-all-to-xlib-window.rgb24.ref.pngbin0 -> 86 bytes
-rw-r--r--test/reference/map-all-to-xlib.argb32.ref.pngbin0 -> 86 bytes
-rw-r--r--test/reference/map-all-to-xlib.rgb24.ref.pngbin0 -> 86 bytes
-rw-r--r--test/reference/map-bit-to-image.argb32.ref.pngbin0 -> 103 bytes
-rw-r--r--test/reference/map-bit-to-image.rgb24.ref.pngbin0 -> 103 bytes
-rw-r--r--test/reference/map-bit-to-xlib-fallback.rgb24.ref.pngbin0 -> 103 bytes
-rw-r--r--test/reference/map-bit-to-xlib-window.rgb24.ref.pngbin0 -> 103 bytes
-rw-r--r--test/reference/map-bit-to-xlib.argb32.ref.pngbin0 -> 103 bytes
-rw-r--r--test/reference/map-bit-to-xlib.rgb24.ref.pngbin0 -> 103 bytes
-rw-r--r--test/reference/map-to-image-fill.argb32.ref.pngbin0 -> 103 bytes
-rw-r--r--test/reference/map-to-image-fill.rgb24.ref.pngbin0 -> 103 bytes
-rw-r--r--test/reference/map-to-image-fill.xlib-fallback.rgb24.ref.pngbin0 -> 103 bytes
-rw-r--r--test/reference/map-to-image-fill.xlib-window.rgb24.ref.pngbin0 -> 103 bytes
-rw-r--r--test/reference/map-to-image-fill.xlib.argb32.ref.pngbin0 -> 103 bytes
-rw-r--r--test/reference/map-to-image-fill.xlib.rgb24.ref.pngbin0 -> 103 bytes
-rw-r--r--test/reference/mask-alpha.argb32.ref.pngbin596 -> 632 bytes
-rw-r--r--test/reference/mask-alpha.rgb24.ref.pngbin546 -> 589 bytes
-rw-r--r--test/reference/mask-ctm.argb32.ref.pngbin0 -> 110 bytes
-rw-r--r--test/reference/mask-ctm.rgb24.ref.pngbin124 -> 105 bytes
-rw-r--r--test/reference/mask-surface-ctm.argb32.ref.pngbin0 -> 110 bytes
-rw-r--r--test/reference/mask-surface-ctm.rgb24.ref.pngbin124 -> 105 bytes
-rw-r--r--test/reference/mask-transformed-image.argb32.ref.pngbin0 -> 3812 bytes
-rw-r--r--test/reference/mask-transformed-image.rgb24.ref.pngbin0 -> 3812 bytes
-rw-r--r--test/reference/mask-transformed-similar.argb32.ref.pngbin0 -> 3812 bytes
-rw-r--r--test/reference/mask-transformed-similar.rgb24.ref.pngbin0 -> 3812 bytes
-rw-r--r--test/reference/mask-transformed-xlib-fallback.rgb24.ref.pngbin0 -> 3809 bytes
-rw-r--r--test/reference/mask-transformed-xlib-window.rgb24.ref.pngbin0 -> 3809 bytes
-rw-r--r--test/reference/mask-transformed-xlib.argb32.ref.pngbin0 -> 3809 bytes
-rw-r--r--test/reference/mask-transformed-xlib.rgb24.ref.pngbin0 -> 3809 bytes
-rw-r--r--test/reference/mask.argb32.ref.pngbin8193 -> 8579 bytes
-rw-r--r--test/reference/mask.rgb24.ref.pngbin6985 -> 7127 bytes
-rw-r--r--test/reference/mesh-pattern-accuracy.argb32.ref.pngbin0 -> 8086 bytes
-rw-r--r--test/reference/mesh-pattern-accuracy.rgb24.ref.pngbin0 -> 8086 bytes
-rw-r--r--test/reference/mesh-pattern-conical.argb32.ref.pngbin0 -> 8655 bytes
-rw-r--r--test/reference/mesh-pattern-conical.rgb24.ref.pngbin0 -> 8655 bytes
-rw-r--r--test/reference/mesh-pattern-control-points.argb32.ref.pngbin0 -> 10665 bytes
-rw-r--r--test/reference/mesh-pattern-control-points.rgb24.ref.pngbin0 -> 10665 bytes
-rw-r--r--test/reference/mesh-pattern-fold.argb32.ref.pngbin0 -> 52980 bytes
-rw-r--r--test/reference/mesh-pattern-fold.rgb24.ref.pngbin0 -> 52980 bytes
-rw-r--r--test/reference/mesh-pattern-overlap.argb32.ref.pngbin0 -> 9129 bytes
-rw-r--r--test/reference/mesh-pattern-overlap.rgb24.ref.pngbin0 -> 9129 bytes
-rw-r--r--test/reference/mesh-pattern-transformed.argb32.ref.pngbin0 -> 14463 bytes
-rw-r--r--test/reference/mesh-pattern-transformed.rgb24.ref.pngbin0 -> 14463 bytes
-rw-r--r--test/reference/mesh-pattern.argb32.ref.pngbin0 -> 19566 bytes
-rw-r--r--test/reference/mesh-pattern.rgb24.ref.pngbin0 -> 19566 bytes
-rw-r--r--test/reference/mime-data.argb32.ref.pngbin0 -> 185 bytes
-rw-r--r--test/reference/mime-data.rgb24.ref.pngbin0 -> 185 bytes
-rw-r--r--test/reference/miter-precision.argb32.ref.pngbin0 -> 1030 bytes
-rw-r--r--test/reference/miter-precision.rgb24.ref.pngbin0 -> 1030 bytes
-rw-r--r--test/reference/move-to-show-surface.argb32.ref.pngbin0 -> 96 bytes
-rw-r--r--test/reference/move-to-show-surface.rgb24.ref.pngbin0 -> 96 bytes
-rw-r--r--test/reference/negative-stride-image.argb32.ref.pngbin0 -> 81121 bytes
-rw-r--r--test/reference/negative-stride-image.rgb24.ref.pngbin0 -> 81121 bytes
-rw-r--r--test/reference/new-sub-path.argb32.ref.pngbin331 -> 408 bytes
-rw-r--r--test/reference/new-sub-path.rgb24.ref.pngbin303 -> 371 bytes
-rw-r--r--test/reference/nil-surface.argb32.ref.pngbin0 -> 88 bytes
-rw-r--r--test/reference/nil-surface.rgb24.ref.pngbin106 -> 87 bytes
-rw-r--r--test/reference/operator-alpha-alpha.argb32.ref.pngbin0 -> 3441 bytes
-rw-r--r--test/reference/operator-alpha-alpha.rgb24.ref.pngbin0 -> 3441 bytes
-rw-r--r--test/reference/operator-alpha.argb32.ref.pngbin0 -> 280 bytes
-rw-r--r--test/reference/operator-alpha.rgb24.ref.pngbin229 -> 205 bytes
-rw-r--r--test/reference/operator-clear.argb32.ref.pngbin1080 -> 1071 bytes
-rw-r--r--test/reference/operator-clear.rgb24.ref.pngbin948 -> 947 bytes
-rw-r--r--test/reference/operator-source.argb32.ref.pngbin5538 -> 5585 bytes
-rw-r--r--test/reference/operator-source.rgb24.ref.pngbin3876 -> 3954 bytes
-rw-r--r--test/reference/operator.argb32.ref.pngbin0 -> 238 bytes
-rw-r--r--test/reference/operator.rgb24.ref.pngbin217 -> 189 bytes
-rw-r--r--test/reference/over-above-source.argb32.ref.pngbin0 -> 564 bytes
-rw-r--r--test/reference/over-above-source.rgb24.ref.pngbin421 -> 465 bytes
-rw-r--r--test/reference/over-around-source.argb32.ref.pngbin0 -> 618 bytes
-rw-r--r--test/reference/over-around-source.rgb24.ref.pngbin454 -> 501 bytes
-rw-r--r--test/reference/over-below-source.argb32.ref.pngbin0 -> 443 bytes
-rw-r--r--test/reference/over-below-source.rgb24.ref.pngbin372 -> 377 bytes
-rw-r--r--test/reference/over-between-source.argb32.ref.pngbin0 -> 593 bytes
-rw-r--r--test/reference/over-between-source.rgb24.ref.pngbin440 -> 460 bytes
-rw-r--r--test/reference/overlapping-boxes.argb32.ref.pngbin179 -> 210 bytes
-rw-r--r--test/reference/overlapping-boxes.rgb24.ref.pngbin170 -> 201 bytes
-rw-r--r--test/reference/overlapping-dash-caps.argb32.ref.pngbin0 -> 3986 bytes
-rw-r--r--test/reference/overlapping-dash-caps.rgb24.ref.pngbin0 -> 3986 bytes
-rw-r--r--test/reference/overlapping-glyphs.argb32.ref.pngbin2258 -> 2717 bytes
-rw-r--r--test/reference/overlapping-glyphs.rgb24.ref.pngbin1390 -> 1663 bytes
-rw-r--r--test/reference/paint-clip-fill-aa.argb32.ref.pngbin0 -> 327 bytes
-rw-r--r--test/reference/paint-clip-fill-aa.rgb24.ref.pngbin0 -> 327 bytes
-rw-r--r--test/reference/paint-clip-fill-mono.argb32.ref.pngbin0 -> 327 bytes
-rw-r--r--test/reference/paint-clip-fill-mono.rgb24.ref.pngbin0 -> 327 bytes
-rw-r--r--test/reference/paint-repeat.argb32.ref.pngbin0 -> 122 bytes
-rw-r--r--test/reference/paint-repeat.rgb24.ref.pngbin0 -> 122 bytes
-rw-r--r--test/reference/paint-source-alpha.argb32.ref.pngbin0 -> 224 bytes
-rw-r--r--test/reference/paint-source-alpha.rgb24.ref.pngbin0 -> 224 bytes
-rw-r--r--test/reference/paint-with-alpha-clip-mask.argb32.ref.pngbin0 -> 340 bytes
-rw-r--r--test/reference/paint-with-alpha-clip-mask.rgb24.ref.pngbin0 -> 340 bytes
-rw-r--r--test/reference/paint-with-alpha-clip.argb32.ref.pngbin0 -> 290 bytes
-rw-r--r--test/reference/paint-with-alpha-clip.rgb24.ref.pngbin0 -> 290 bytes
-rw-r--r--test/reference/paint-with-alpha-solid-clip.argb32.ref.pngbin0 -> 248 bytes
-rw-r--r--test/reference/paint-with-alpha-solid-clip.rgb24.ref.pngbin0 -> 248 bytes
-rw-r--r--test/reference/paint-with-alpha.argb32.ref.pngbin0 -> 224 bytes
-rw-r--r--test/reference/paint-with-alpha.rgb24.ref.pngbin0 -> 224 bytes
-rw-r--r--test/reference/paint.argb32.ref.pngbin0 -> 93 bytes
-rw-r--r--test/reference/paint.rgb24.ref.pngbin0 -> 93 bytes
-rw-r--r--test/reference/partial-clip-text-bottom.argb32.ref.pngbin0 -> 261 bytes
-rw-r--r--test/reference/partial-clip-text-bottom.rgb24.ref.pngbin0 -> 261 bytes
-rw-r--r--test/reference/partial-clip-text-left.argb32.ref.pngbin0 -> 301 bytes
-rw-r--r--test/reference/partial-clip-text-left.rgb24.ref.pngbin0 -> 301 bytes
-rw-r--r--test/reference/partial-clip-text-right.argb32.ref.pngbin0 -> 155 bytes
-rw-r--r--test/reference/partial-clip-text-right.rgb24.ref.pngbin0 -> 155 bytes
-rw-r--r--test/reference/partial-clip-text-top.argb32.ref.pngbin0 -> 181 bytes
-rw-r--r--test/reference/partial-clip-text-top.rgb24.ref.pngbin0 -> 181 bytes
-rw-r--r--test/reference/partial-coverage-half-reference.argb32.ref.pngbin0 -> 189 bytes
-rw-r--r--test/reference/partial-coverage-half-reference.rgb24.ref.pngbin0 -> 189 bytes
-rw-r--r--test/reference/partial-coverage-reference.argb32.ref.pngbin0 -> 202 bytes
-rw-r--r--test/reference/partial-coverage-reference.rgb24.ref.pngbin0 -> 202 bytes
-rw-r--r--test/reference/partial-coverage-three-quarter-reference.argb32.ref.pngbin0 -> 186 bytes
-rw-r--r--test/reference/partial-coverage-three-quarter-reference.rgb24.ref.pngbin0 -> 186 bytes
-rw-r--r--test/reference/pass-through.argb32.ref.pngbin0 -> 221 bytes
-rw-r--r--test/reference/pass-through.rgb24.ref.pngbin179 -> 158 bytes
-rw-r--r--test/reference/path-append.argb32.ref.pngbin0 -> 6144 bytes
-rw-r--r--test/reference/path-append.rgb24.ref.pngbin0 -> 6144 bytes
-rw-r--r--test/reference/path-stroke-twice.argb32.ref.pngbin0 -> 240 bytes
-rw-r--r--test/reference/path-stroke-twice.rgb24.ref.pngbin0 -> 240 bytes
-rw-r--r--test/reference/pattern-getters.argb32.ref.pngbin0 -> 87 bytes
-rw-r--r--test/reference/pattern-getters.rgb24.ref.pngbin0 -> 87 bytes
-rw-r--r--test/reference/pixman-rotate.argb32.ref.pngbin0 -> 260 bytes
-rw-r--r--test/reference/pixman-rotate.rgb24.ref.pngbin244 -> 225 bytes
-rw-r--r--test/reference/pthread-same-source.argb32.ref.pngbin0 -> 1000 bytes
-rw-r--r--test/reference/pthread-same-source.rgb24.ref.pngbin0 -> 1000 bytes
-rw-r--r--test/reference/pthread-show-text.argb32.ref.pngbin0 -> 30199 bytes
-rw-r--r--test/reference/pthread-show-text.rgb24.ref.pngbin0 -> 30199 bytes
-rw-r--r--test/reference/pthread-similar.argb32.ref.pngbin0 -> 170 bytes
-rw-r--r--test/reference/pthread-similar.rgb24.ref.pngbin0 -> 170 bytes
-rw-r--r--test/reference/push-group-color.argb32.ref.pngbin0 -> 2892 bytes
-rw-r--r--test/reference/push-group-color.rgb24.ref.pngbin0 -> 2892 bytes
-rw-r--r--test/reference/push-group-path-offset.argb32.ref.pngbin0 -> 186 bytes
-rw-r--r--test/reference/push-group-path-offset.rgb24.ref.pngbin0 -> 186 bytes
-rw-r--r--test/reference/push-group.argb32.ref.pngbin0 -> 3062 bytes
-rw-r--r--test/reference/push-group.rgb24.ref.pngbin2684 -> 2899 bytes
-rw-r--r--test/reference/radial-gradient-mask.argb32.ref.pngbin0 -> 286065 bytes
-rw-r--r--test/reference/radial-gradient-mask.rgb24.ref.pngbin0 -> 286065 bytes
-rw-r--r--test/reference/radial-gradient-one-stop.argb32.ref.pngbin0 -> 6306 bytes
-rw-r--r--test/reference/radial-gradient-one-stop.rgb24.ref.pngbin0 -> 6306 bytes
-rw-r--r--test/reference/radial-gradient.argb32.ref.pngbin0 -> 382283 bytes
-rw-r--r--test/reference/radial-gradient.rgb24.ref.pngbin0 -> 382283 bytes
-rw-r--r--test/reference/random-intersections-curves-eo.argb32.ref.pngbin0 -> 245848 bytes
-rw-r--r--test/reference/random-intersections-curves-eo.rgb24.ref.pngbin0 -> 245848 bytes
-rw-r--r--test/reference/random-intersections-curves-nz.argb32.ref.pngbin0 -> 265249 bytes
-rw-r--r--test/reference/random-intersections-curves-nz.rgb24.ref.pngbin0 -> 265249 bytes
-rw-r--r--test/reference/random-intersections-eo.argb32.ref.pngbin0 -> 136632 bytes
-rw-r--r--test/reference/random-intersections-eo.rgb24.ref.pngbin0 -> 136632 bytes
-rw-r--r--test/reference/random-intersections-nonzero.argb32.ref.pngbin0 -> 142139 bytes
-rw-r--r--test/reference/random-intersections-nonzero.rgb24.ref.pngbin0 -> 142139 bytes
-rw-r--r--test/reference/raster-source.argb32.ref.pngbin0 -> 1209 bytes
-rw-r--r--test/reference/raster-source.rgb24.ref.pngbin0 -> 1209 bytes
-rw-r--r--test/reference/record-fill-alpha.ref.pngbin2171 -> 2839 bytes
-rw-r--r--test/reference/record-paint-alpha-clip-mask.ref.pngbin340 -> 333 bytes
-rw-r--r--test/reference/rectangle-rounding-error.argb32.ref.pngbin0 -> 212 bytes
-rw-r--r--test/reference/rectangle-rounding-error.rgb24.ref.pngbin0 -> 212 bytes
-rw-r--r--test/reference/rectilinear-dash.argb32.ref.pngbin0 -> 291 bytes
-rw-r--r--test/reference/rectilinear-dash.rgb24.ref.pngbin0 -> 291 bytes
-rw-r--r--test/reference/rectilinear-fill.argb32.ref.pngbin0 -> 151 bytes
-rw-r--r--test/reference/rectilinear-fill.rgb24.ref.pngbin0 -> 151 bytes
-rw-r--r--test/reference/rectilinear-grid.argb32.ref.pngbin0 -> 569 bytes
-rw-r--r--test/reference/rectilinear-grid.rgb24.ref.pngbin0 -> 569 bytes
-rw-r--r--test/reference/rectilinear-miter-limit.argb32.ref.pngbin0 -> 145 bytes
-rw-r--r--test/reference/rectilinear-miter-limit.rgb24.ref.pngbin0 -> 145 bytes
-rw-r--r--test/reference/rectilinear-stroke.argb32.ref.pngbin0 -> 172 bytes
-rw-r--r--test/reference/rectilinear-stroke.rgb24.ref.pngbin0 -> 172 bytes
-rw-r--r--test/reference/reflected-stroke.argb32.ref.pngbin0 -> 5119 bytes
-rw-r--r--test/reference/reflected-stroke.rgb24.ref.pngbin0 -> 5119 bytes
-rw-r--r--test/reference/rel-path.argb32.ref.pngbin0 -> 197 bytes
-rw-r--r--test/reference/rel-path.rgb24.ref.pngbin183 -> 216 bytes
-rw-r--r--test/reference/rgb24-ignore-alpha.argb32.ref.pngbin0 -> 97 bytes
-rw-r--r--test/reference/rgb24-ignore-alpha.rgb24.ref.pngbin0 -> 97 bytes
-rw-r--r--test/reference/rotate-clip-image-surface-paint.argb32.ref.pngbin0 -> 331 bytes
-rw-r--r--test/reference/rotate-clip-image-surface-paint.rgb24.ref.pngbin0 -> 331 bytes
-rw-r--r--test/reference/rotate-clip-image-surface-paint.xlib-fallback.rgb24.ref.pngbin0 -> 303 bytes
-rw-r--r--test/reference/rotate-clip-image-surface-paint.xlib-window.rgb24.ref.pngbin0 -> 303 bytes
-rw-r--r--test/reference/rotate-clip-image-surface-paint.xlib.argb32.ref.pngbin0 -> 303 bytes
-rw-r--r--test/reference/rotate-clip-image-surface-paint.xlib.rgb24.ref.pngbin0 -> 303 bytes
-rw-r--r--test/reference/rotate-image-surface-paint.argb32.ref.pngbin0 -> 220 bytes
-rw-r--r--test/reference/rotate-image-surface-paint.rgb24.ref.pngbin0 -> 220 bytes
-rw-r--r--test/reference/rotate-image-surface-paint.xlib-fallback.rgb24.ref.pngbin0 -> 220 bytes
-rw-r--r--test/reference/rotate-image-surface-paint.xlib-window.rgb24.ref.pngbin0 -> 220 bytes
-rw-r--r--test/reference/rotate-image-surface-paint.xlib.argb32.ref.pngbin0 -> 220 bytes
-rw-r--r--test/reference/rotate-image-surface-paint.xlib.rgb24.ref.pngbin0 -> 220 bytes
-rw-r--r--test/reference/rotated-clip.argb32.ref.pngbin0 -> 3773 bytes
-rw-r--r--test/reference/rotated-clip.rgb24.ref.pngbin0 -> 3773 bytes
-rw-r--r--test/reference/rounded-rectangle-fill.argb32.ref.pngbin0 -> 787 bytes
-rw-r--r--test/reference/rounded-rectangle-fill.rgb24.ref.pngbin0 -> 787 bytes
-rw-r--r--test/reference/rounded-rectangle-stroke.argb32.ref.pngbin0 -> 951 bytes
-rw-r--r--test/reference/rounded-rectangle-stroke.rgb24.ref.pngbin0 -> 951 bytes
-rw-r--r--test/reference/scale-down-source-surface-paint.argb32.ref.pngbin0 -> 96 bytes
-rw-r--r--test/reference/scale-down-source-surface-paint.rgb24.ref.pngbin0 -> 96 bytes
-rw-r--r--test/reference/scale-offset-image.argb32.ref.pngbin0 -> 9748 bytes
-rw-r--r--test/reference/scale-offset-image.rgb24.ref.pngbin0 -> 9748 bytes
-rw-r--r--test/reference/scale-offset-similar.argb32.ref.pngbin0 -> 9748 bytes
-rw-r--r--test/reference/scale-offset-similar.rgb24.ref.pngbin0 -> 9748 bytes
-rw-r--r--test/reference/scale-offset-xlib-fallback.rgb24.ref.pngbin0 -> 9120 bytes
-rw-r--r--test/reference/scale-offset-xlib-window.rgb24.ref.pngbin0 -> 9120 bytes
-rw-r--r--test/reference/scale-offset-xlib.argb32.ref.pngbin0 -> 9120 bytes
-rw-r--r--test/reference/scale-offset-xlib.rgb24.ref.pngbin0 -> 9120 bytes
-rw-r--r--test/reference/scale-source-surface-paint.argb32.ref.pngbin0 -> 128 bytes
-rw-r--r--test/reference/scale-source-surface-paint.rgb24.ref.pngbin136 -> 117 bytes
-rw-r--r--test/reference/select-font-face.argb32.ref.pngbin0 -> 2250 bytes
-rw-r--r--test/reference/select-font-face.rgb24.ref.pngbin0 -> 2250 bytes
-rw-r--r--test/reference/self-copy.argb32.ref.pngbin0 -> 257 bytes
-rw-r--r--test/reference/self-copy.rgb24.ref.pngbin0 -> 257 bytes
-rw-r--r--test/reference/self-intersecting.argb32.ref.pngbin0 -> 168 bytes
-rw-r--r--test/reference/self-intersecting.rgb24.ref.pngbin0 -> 168 bytes
-rw-r--r--test/reference/set-source.argb32.ref.pngbin0 -> 101 bytes
-rw-r--r--test/reference/set-source.rgb24.ref.pngbin120 -> 101 bytes
-rw-r--r--test/reference/shape-general-convex.argb32.ref.pngbin0 -> 2742 bytes
-rw-r--r--test/reference/shape-general-convex.rgb24.ref.pngbin0 -> 2742 bytes
-rw-r--r--test/reference/shape-sierpinski.argb32.ref.pngbin0 -> 63714 bytes
-rw-r--r--test/reference/shape-sierpinski.rgb24.ref.pngbin0 -> 63714 bytes
-rw-r--r--test/reference/show-glyphs-advance.argb32.ref.pngbin0 -> 1394 bytes
-rw-r--r--test/reference/show-glyphs-advance.rgb24.ref.pngbin0 -> 1394 bytes
-rw-r--r--test/reference/show-glyphs-many.argb32.ref.pngbin0 -> 96 bytes
-rw-r--r--test/reference/show-glyphs-many.rgb24.ref.pngbin0 -> 96 bytes
-rw-r--r--test/reference/show-text-current-point.argb32.ref.pngbin0 -> 2151 bytes
-rw-r--r--test/reference/show-text-current-point.rgb24.ref.pngbin0 -> 2151 bytes
-rw-r--r--test/reference/skew-extreme.argb32.ref.pngbin0 -> 799 bytes
-rw-r--r--test/reference/skew-extreme.rgb24.ref.pngbin0 -> 799 bytes
-rw-r--r--test/reference/smask-fill.argb32.ref.pngbin0 -> 1197 bytes
-rw-r--r--test/reference/smask-fill.rgb24.ref.pngbin0 -> 1197 bytes
-rw-r--r--test/reference/smask-image-mask.argb32.ref.pngbin0 -> 619 bytes
-rw-r--r--test/reference/smask-image-mask.rgb24.ref.pngbin0 -> 619 bytes
-rw-r--r--test/reference/smask-image-mask.xlib-fallback.rgb24.ref.pngbin0 -> 619 bytes
-rw-r--r--test/reference/smask-image-mask.xlib-window.rgb24.ref.pngbin0 -> 619 bytes
-rw-r--r--test/reference/smask-image-mask.xlib.argb32.ref.pngbin0 -> 619 bytes
-rw-r--r--test/reference/smask-image-mask.xlib.rgb24.ref.pngbin0 -> 619 bytes
-rw-r--r--test/reference/smask-mask.argb32.ref.pngbin0 -> 2353 bytes
-rw-r--r--test/reference/smask-mask.rgb24.ref.pngbin0 -> 2353 bytes
-rw-r--r--test/reference/smask-paint.argb32.ref.pngbin0 -> 2469 bytes
-rw-r--r--test/reference/smask-paint.rgb24.ref.pngbin0 -> 2469 bytes
-rw-r--r--test/reference/smask-stroke.argb32.ref.pngbin0 -> 1709 bytes
-rw-r--r--test/reference/smask-stroke.rgb24.ref.pngbin0 -> 1709 bytes
-rw-r--r--test/reference/smask-text.argb32.ref.pngbin0 -> 1661 bytes
-rw-r--r--test/reference/smask-text.rgb24.ref.pngbin0 -> 1661 bytes
-rw-r--r--test/reference/smask.argb32.ref.pngbin0 -> 3414 bytes
-rw-r--r--test/reference/smask.rgb24.ref.pngbin0 -> 3414 bytes
-rw-r--r--test/reference/solid-pattern-cache-stress.argb32.ref.pngbin0 -> 87 bytes
-rw-r--r--test/reference/solid-pattern-cache-stress.rgb24.ref.pngbin0 -> 87 bytes
-rw-r--r--test/reference/source-clip-scale.argb32.ref.pngbin0 -> 136 bytes
-rw-r--r--test/reference/source-clip-scale.rgb24.ref.pngbin0 -> 136 bytes
-rw-r--r--test/reference/source-clip.argb32.ref.pngbin0 -> 111 bytes
-rw-r--r--test/reference/source-clip.rgb24.ref.pngbin0 -> 111 bytes
-rw-r--r--test/reference/source-surface-scale-paint.argb32.ref.pngbin0 -> 120 bytes
-rw-r--r--test/reference/source-surface-scale-paint.rgb24.ref.pngbin133 -> 114 bytes
-rw-r--r--test/reference/spline-decomposition.argb32.ref.pngbin0 -> 19520 bytes
-rw-r--r--test/reference/spline-decomposition.rgb24.ref.pngbin0 -> 19520 bytes
-rw-r--r--test/reference/stride-12-image.argb32.ref.pngbin0 -> 81121 bytes
-rw-r--r--test/reference/stride-12-image.rgb24.ref.pngbin0 -> 81121 bytes
-rw-r--r--test/reference/stride-12-xlib-fallback.rgb24.ref.pngbin0 -> 81121 bytes
-rw-r--r--test/reference/stride-12-xlib-window.rgb24.ref.pngbin0 -> 81121 bytes
-rw-r--r--test/reference/stride-12-xlib.argb32.ref.pngbin0 -> 81121 bytes
-rw-r--r--test/reference/stride-12-xlib.rgb24.ref.pngbin0 -> 81121 bytes
-rw-r--r--test/reference/stroke-ctm-caps.argb32.ref.pngbin0 -> 942 bytes
-rw-r--r--test/reference/stroke-ctm-caps.rgb24.ref.pngbin0 -> 942 bytes
-rw-r--r--test/reference/stroke-image.argb32.ref.pngbin0 -> 1424 bytes
-rw-r--r--test/reference/stroke-image.rgb24.ref.pngbin0 -> 1424 bytes
-rw-r--r--test/reference/stroke-open-box.argb32.ref.pngbin0 -> 148 bytes
-rw-r--r--test/reference/stroke-open-box.rgb24.ref.pngbin0 -> 148 bytes
-rw-r--r--test/reference/stroke-pattern.argb32.ref.pngbin0 -> 1491 bytes
-rw-r--r--test/reference/stroke-pattern.rgb24.ref.pngbin0 -> 1491 bytes
-rw-r--r--test/reference/stroke-xlib-fallback.rgb24.ref.pngbin0 -> 1467 bytes
-rw-r--r--test/reference/stroke-xlib-window.rgb24.ref.pngbin0 -> 1467 bytes
-rw-r--r--test/reference/stroke-xlib.argb32.ref.pngbin0 -> 1467 bytes
-rw-r--r--test/reference/stroke-xlib.rgb24.ref.pngbin0 -> 1467 bytes
-rw-r--r--test/reference/subsurface-image-repeat.argb32.ref.pngbin0 -> 915 bytes
-rw-r--r--test/reference/subsurface-image-repeat.rgb24.ref.pngbin0 -> 915 bytes
-rw-r--r--test/reference/subsurface-image-repeat.xlib-fallback.rgb24.ref.pngbin0 -> 915 bytes
-rw-r--r--test/reference/subsurface-image-repeat.xlib-window.rgb24.ref.pngbin0 -> 915 bytes
-rw-r--r--test/reference/subsurface-image-repeat.xlib.argb32.ref.pngbin0 -> 915 bytes
-rw-r--r--test/reference/subsurface-image-repeat.xlib.rgb24.ref.pngbin0 -> 915 bytes
-rw-r--r--test/reference/subsurface-modify-child.argb32.ref.pngbin0 -> 197 bytes
-rw-r--r--test/reference/subsurface-modify-child.rgb24.ref.pngbin0 -> 197 bytes
-rw-r--r--test/reference/subsurface-modify-parent.argb32.ref.pngbin0 -> 197 bytes
-rw-r--r--test/reference/subsurface-modify-parent.rgb24.ref.pngbin0 -> 197 bytes
-rw-r--r--test/reference/subsurface-pad.argb32.ref.pngbin0 -> 181 bytes
-rw-r--r--test/reference/subsurface-pad.rgb24.ref.pngbin0 -> 181 bytes
-rw-r--r--test/reference/subsurface-reflect.argb32.ref.pngbin0 -> 210 bytes
-rw-r--r--test/reference/subsurface-reflect.rgb24.ref.pngbin0 -> 210 bytes
-rw-r--r--test/reference/subsurface-repeat.argb32.ref.pngbin0 -> 197 bytes
-rw-r--r--test/reference/subsurface-repeat.rgb24.ref.pngbin0 -> 197 bytes
-rw-r--r--test/reference/subsurface-scale.argb32.ref.pngbin0 -> 5921 bytes
-rw-r--r--test/reference/subsurface-scale.rgb24.ref.pngbin0 -> 5921 bytes
-rw-r--r--test/reference/subsurface-similar-repeat.argb32.ref.pngbin0 -> 197 bytes
-rw-r--r--test/reference/subsurface-similar-repeat.rgb24.ref.pngbin0 -> 197 bytes
-rw-r--r--test/reference/subsurface.argb32.ref.pngbin0 -> 1811 bytes
-rw-r--r--test/reference/subsurface.rgb24.ref.pngbin0 -> 1811 bytes
-rw-r--r--test/reference/surface-pattern-big-scale-down.argb32.ref.pngbin0 -> 191 bytes
-rw-r--r--test/reference/surface-pattern-big-scale-down.rgb24.ref.pngbin0 -> 191 bytes
-rw-r--r--test/reference/surface-pattern-operator.argb32.ref.pngbin4807 -> 5217 bytes
-rw-r--r--test/reference/surface-pattern-operator.rgb24.ref.pngbin1866 -> 1942 bytes
-rw-r--r--test/reference/surface-pattern-scale-down-extend-none.argb32.ref.pngbin0 -> 329 bytes
-rw-r--r--test/reference/surface-pattern-scale-down-extend-none.rgb24.ref.pngbin0 -> 329 bytes
-rw-r--r--test/reference/surface-pattern-scale-down-extend-pad.argb32.ref.pngbin0 -> 320 bytes
-rw-r--r--test/reference/surface-pattern-scale-down-extend-pad.rgb24.ref.pngbin0 -> 320 bytes
-rw-r--r--test/reference/surface-pattern-scale-down-extend-reflect.argb32.ref.pngbin0 -> 328 bytes
-rw-r--r--test/reference/surface-pattern-scale-down-extend-reflect.rgb24.ref.pngbin0 -> 328 bytes
-rw-r--r--test/reference/surface-pattern-scale-down-extend-repeat.argb32.ref.pngbin0 -> 330 bytes
-rw-r--r--test/reference/surface-pattern-scale-down-extend-repeat.rgb24.ref.pngbin0 -> 330 bytes
-rw-r--r--test/reference/surface-pattern-scale-down.argb32.ref.pngbin0 -> 1326 bytes
-rw-r--r--test/reference/surface-pattern-scale-down.rgb24.ref.pngbin0 -> 1326 bytes
-rw-r--r--test/reference/surface-pattern-scale-up.argb32.ref.pngbin0 -> 4020 bytes
-rw-r--r--test/reference/surface-pattern-scale-up.rgb24.ref.pngbin0 -> 4020 bytes
-rw-r--r--test/reference/surface-pattern.argb32.ref.pngbin0 -> 11088 bytes
-rw-r--r--test/reference/surface-pattern.rgb24.ref.pngbin0 -> 11088 bytes
-rw-r--r--test/reference/text-antialias-gray.argb32.ref.pngbin0 -> 966 bytes
-rw-r--r--test/reference/text-antialias-gray.rgb24.ref.pngbin0 -> 966 bytes
-rw-r--r--test/reference/text-antialias-none.argb32.ref.pngbin0 -> 265 bytes
-rw-r--r--test/reference/text-antialias-none.rgb24.ref.pngbin0 -> 265 bytes
-rw-r--r--test/reference/text-antialias-subpixel-bgr.argb32.ref.pngbin0 -> 1005 bytes
-rw-r--r--test/reference/text-antialias-subpixel-bgr.rgb24.ref.pngbin0 -> 1005 bytes
-rw-r--r--test/reference/text-antialias-subpixel-rgb.argb32.ref.pngbin0 -> 1013 bytes
-rw-r--r--test/reference/text-antialias-subpixel-rgb.rgb24.ref.pngbin0 -> 1013 bytes
-rw-r--r--test/reference/text-antialias-subpixel-vbgr.argb32.ref.pngbin0 -> 985 bytes
-rw-r--r--test/reference/text-antialias-subpixel-vbgr.rgb24.ref.pngbin0 -> 985 bytes
-rw-r--r--test/reference/text-antialias-subpixel-vrgb.argb32.ref.pngbin0 -> 1009 bytes
-rw-r--r--test/reference/text-antialias-subpixel-vrgb.rgb24.ref.pngbin0 -> 1009 bytes
-rw-r--r--test/reference/text-antialias-subpixel.argb32.ref.pngbin0 -> 1013 bytes
-rw-r--r--test/reference/text-antialias-subpixel.rgb24.ref.pngbin0 -> 1013 bytes
-rw-r--r--test/reference/text-glyph-range.argb32.ref.pngbin0 -> 1928 bytes
-rw-r--r--test/reference/text-glyph-range.rgb24.ref.pngbin0 -> 1928 bytes
-rw-r--r--test/reference/text-pattern.argb32.ref.pngbin0 -> 3455 bytes
-rw-r--r--test/reference/text-pattern.rgb24.ref.pngbin0 -> 2684 bytes
-rw-r--r--test/reference/text-rotate.argb32.ref.pngbin0 -> 16655 bytes
-rw-r--r--test/reference/text-rotate.rgb24.ref.pngbin0 -> 16655 bytes
-rw-r--r--test/reference/text-transform.argb32.ref.pngbin0 -> 5579 bytes
-rw-r--r--test/reference/text-transform.rgb24.ref.pngbin0 -> 5579 bytes
-rw-r--r--test/reference/tiger.argb32.ref.pngbin0 -> 93916 bytes
-rw-r--r--test/reference/tiger.rgb24.ref.pngbin0 -> 93916 bytes
-rw-r--r--test/reference/tighten-bounds.argb32.ref.pngbin8972 -> 9127 bytes
-rw-r--r--test/reference/tighten-bounds.rgb24.ref.pngbin8188 -> 8433 bytes
-rw-r--r--test/reference/transforms.argb32.ref.pngbin0 -> 348 bytes
-rw-r--r--test/reference/transforms.rgb24.ref.pngbin0 -> 348 bytes
-rw-r--r--test/reference/translate-show-surface.argb32.ref.pngbin0 -> 96 bytes
-rw-r--r--test/reference/translate-show-surface.rgb24.ref.pngbin0 -> 96 bytes
-rw-r--r--test/reference/trap-clip.argb32.ref.pngbin0 -> 5810 bytes
-rw-r--r--test/reference/trap-clip.rgb24.ref.pngbin5328 -> 5433 bytes
-rw-r--r--test/reference/twin-antialias-gray.argb32.ref.pngbin0 -> 3990 bytes
-rw-r--r--test/reference/twin-antialias-gray.rgb24.ref.pngbin0 -> 3990 bytes
-rw-r--r--test/reference/twin-antialias-mixed.argb32.ref.pngbin0 -> 2230 bytes
-rw-r--r--test/reference/twin-antialias-mixed.rgb24.ref.pngbin0 -> 2230 bytes
-rw-r--r--test/reference/twin-antialias-none.argb32.ref.pngbin0 -> 690 bytes
-rw-r--r--test/reference/twin-antialias-none.rgb24.ref.pngbin0 -> 690 bytes
-rw-r--r--test/reference/twin-antialias-subpixel.argb32.ref.pngbin0 -> 3990 bytes
-rw-r--r--test/reference/twin-antialias-subpixel.rgb24.ref.pngbin0 -> 3990 bytes
-rw-r--r--test/reference/twin.argb32.ref.pngbin0 -> 3990 bytes
-rw-r--r--test/reference/twin.rgb24.ref.pngbin0 -> 3990 bytes
-rw-r--r--test/reference/unaligned-box.argb32.ref.pngbin0 -> 496 bytes
-rw-r--r--test/reference/unaligned-box.rgb24.ref.pngbin0 -> 496 bytes
-rw-r--r--test/reference/unantialiased-shapes.argb32.ref.pngbin0 -> 3926 bytes
-rw-r--r--test/reference/unantialiased-shapes.rgb24.ref.pngbin0 -> 3926 bytes
-rw-r--r--test/reference/unbounded-operator.argb32.ref.pngbin2618 -> 2666 bytes
-rw-r--r--test/reference/unbounded-operator.rgb24.ref.pngbin1223 -> 1300 bytes
-rw-r--r--test/reference/unclosed-strokes.argb32.ref.pngbin0 -> 1901 bytes
-rw-r--r--test/reference/unclosed-strokes.rgb24.ref.pngbin0 -> 1901 bytes
-rw-r--r--test/reference/user-font-mask.argb32.ref.pngbin0 -> 5476 bytes
-rw-r--r--test/reference/user-font-mask.rgb24.ref.pngbin0 -> 5476 bytes
-rw-r--r--test/reference/user-font-proxy.argb32.ref.pngbin0 -> 16941 bytes
-rw-r--r--test/reference/user-font-proxy.rgb24.ref.pngbin0 -> 16941 bytes
-rw-r--r--test/reference/user-font-rescale.argb32.ref.pngbin0 -> 14883 bytes
-rw-r--r--test/reference/user-font-rescale.rgb24.ref.pngbin0 -> 14883 bytes
-rw-r--r--test/reference/user-font.argb32.ref.pngbin0 -> 6478 bytes
-rw-r--r--test/reference/user-font.rgb24.ref.pngbin0 -> 6478 bytes
-rw-r--r--test/reference/white-in-noop.argb32.ref.pngbin0 -> 95 bytes
-rw-r--r--test/reference/white-in-noop.rgb24.ref.pngbin0 -> 95 bytes
-rw-r--r--test/reference/world-map-fill.argb32.ref.pngbin0 -> 57308 bytes
-rw-r--r--test/reference/world-map-fill.rgb24.ref.pngbin0 -> 57308 bytes
-rw-r--r--test/reference/world-map-stroke.argb32.ref.pngbin0 -> 65152 bytes
-rw-r--r--test/reference/world-map-stroke.rgb24.ref.pngbin0 -> 65152 bytes
-rw-r--r--test/reference/world-map.argb32.ref.pngbin0 -> 70463 bytes
-rw-r--r--test/reference/world-map.rgb24.ref.pngbin0 -> 70463 bytes
-rw-r--r--test/reference/xcb-huge-image-shm.argb32.ref.pngbin0 -> 97 bytes
-rw-r--r--test/reference/xcb-huge-image-shm.rgb24.ref.pngbin0 -> 97 bytes
-rw-r--r--test/reference/xcb-huge-image-shm.xlib-fallback.rgb24.ref.pngbin0 -> 97 bytes
-rw-r--r--test/reference/xcb-huge-image-shm.xlib-window.rgb24.ref.pngbin0 -> 97 bytes
-rw-r--r--test/reference/xcb-huge-image-shm.xlib.argb32.ref.pngbin0 -> 97 bytes
-rw-r--r--test/reference/xcb-huge-image-shm.xlib.rgb24.ref.pngbin0 -> 97 bytes
-rw-r--r--test/reference/xcb-snapshot-assert.argb32.ref.pngbin0 -> 97 bytes
-rw-r--r--test/reference/xcb-snapshot-assert.rgb24.ref.pngbin0 -> 97 bytes
-rw-r--r--test/reference/xcb-stress-cache.argb32.ref.pngbin0 -> 97 bytes
-rw-r--r--test/reference/xcb-stress-cache.rgb24.ref.pngbin0 -> 97 bytes
-rw-r--r--test/reference/xcomposite-projection.argb32.ref.pngbin0 -> 1108 bytes
-rw-r--r--test/reference/xcomposite-projection.rgb24.ref.pngbin0 -> 1108 bytes
-rw-r--r--test/reference/xlib-expose-event.argb32.ref.pngbin0 -> 40717 bytes
-rw-r--r--test/reference/xlib-expose-event.rgb24.ref.pngbin0 -> 40717 bytes
-rw-r--r--test/reference/zero-alpha.argb32.ref.pngbin0 -> 91 bytes
-rw-r--r--test/reference/zero-alpha.rgb24.ref.pngbin0 -> 91 bytes
-rw-r--r--test/reference/zero-mask.argb32.ref.pngbin0 -> 402 bytes
807 files changed, 0 insertions, 0 deletions
diff --git a/test/reference/a1-bug.argb32.ref.png b/test/reference/a1-bug.argb32.ref.png
new file mode 100644
index 00000000..f9ae8a87
--- /dev/null
+++ b/test/reference/a1-bug.argb32.ref.png
Binary files differ
diff --git a/test/reference/a1-bug.rgb24.ref.png b/test/reference/a1-bug.rgb24.ref.png
new file mode 100644
index 00000000..f9ae8a87
--- /dev/null
+++ b/test/reference/a1-bug.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-clip-fill-equal.argb32.ref.png b/test/reference/a1-clip-fill-equal.argb32.ref.png
new file mode 100644
index 00000000..384ba4a0
--- /dev/null
+++ b/test/reference/a1-clip-fill-equal.argb32.ref.png
Binary files differ
diff --git a/test/reference/a1-clip-fill-equal.rgb24.ref.png b/test/reference/a1-clip-fill-equal.rgb24.ref.png
new file mode 100644
index 00000000..384ba4a0
--- /dev/null
+++ b/test/reference/a1-clip-fill-equal.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-clip-fill.argb32.ref.png b/test/reference/a1-clip-fill.argb32.ref.png
new file mode 100644
index 00000000..384ba4a0
--- /dev/null
+++ b/test/reference/a1-clip-fill.argb32.ref.png
Binary files differ
diff --git a/test/reference/a1-clip-fill.rgb24.ref.png b/test/reference/a1-clip-fill.rgb24.ref.png
new file mode 100644
index 00000000..384ba4a0
--- /dev/null
+++ b/test/reference/a1-clip-fill.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-clip-paint.argb32.ref.png b/test/reference/a1-clip-paint.argb32.ref.png
new file mode 100644
index 00000000..384ba4a0
--- /dev/null
+++ b/test/reference/a1-clip-paint.argb32.ref.png
Binary files differ
diff --git a/test/reference/a1-clip-paint.rgb24.ref.png b/test/reference/a1-clip-paint.rgb24.ref.png
new file mode 100644
index 00000000..384ba4a0
--- /dev/null
+++ b/test/reference/a1-clip-paint.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-clip-stroke.argb32.ref.png b/test/reference/a1-clip-stroke.argb32.ref.png
new file mode 100644
index 00000000..384ba4a0
--- /dev/null
+++ b/test/reference/a1-clip-stroke.argb32.ref.png
Binary files differ
diff --git a/test/reference/a1-clip-stroke.rgb24.ref.png b/test/reference/a1-clip-stroke.rgb24.ref.png
new file mode 100644
index 00000000..384ba4a0
--- /dev/null
+++ b/test/reference/a1-clip-stroke.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-fill.argb32.ref.png b/test/reference/a1-fill.argb32.ref.png
new file mode 100644
index 00000000..e40202bf
--- /dev/null
+++ b/test/reference/a1-fill.argb32.ref.png
Binary files differ
diff --git a/test/reference/a1-fill.rgb24.ref.png b/test/reference/a1-fill.rgb24.ref.png
new file mode 100644
index 00000000..e40202bf
--- /dev/null
+++ b/test/reference/a1-fill.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-image-sample.argb32.ref.png b/test/reference/a1-image-sample.argb32.ref.png
new file mode 100644
index 00000000..b8fd4570
--- /dev/null
+++ b/test/reference/a1-image-sample.argb32.ref.png
Binary files differ
diff --git a/test/reference/a1-image-sample.rgb24.ref.png b/test/reference/a1-image-sample.rgb24.ref.png
new file mode 100644
index 00000000..b8fd4570
--- /dev/null
+++ b/test/reference/a1-image-sample.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-image-sample.xlib-fallback.rgb24.ref.png b/test/reference/a1-image-sample.xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..b8fd4570
--- /dev/null
+++ b/test/reference/a1-image-sample.xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-image-sample.xlib-window.rgb24.ref.png b/test/reference/a1-image-sample.xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..b8fd4570
--- /dev/null
+++ b/test/reference/a1-image-sample.xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-image-sample.xlib.argb32.ref.png b/test/reference/a1-image-sample.xlib.argb32.ref.png
new file mode 100644
index 00000000..b8fd4570
--- /dev/null
+++ b/test/reference/a1-image-sample.xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/a1-image-sample.xlib.rgb24.ref.png b/test/reference/a1-image-sample.xlib.rgb24.ref.png
new file mode 100644
index 00000000..b8fd4570
--- /dev/null
+++ b/test/reference/a1-image-sample.xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-line-width.argb32.ref.png b/test/reference/a1-line-width.argb32.ref.png
new file mode 100644
index 00000000..35d9cad6
--- /dev/null
+++ b/test/reference/a1-line-width.argb32.ref.png
Binary files differ
diff --git a/test/reference/a1-line-width.rgb24.ref.png b/test/reference/a1-line-width.rgb24.ref.png
new file mode 100644
index 00000000..35d9cad6
--- /dev/null
+++ b/test/reference/a1-line-width.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-mask-sample.argb32.ref.png b/test/reference/a1-mask-sample.argb32.ref.png
new file mode 100644
index 00000000..b8fd4570
--- /dev/null
+++ b/test/reference/a1-mask-sample.argb32.ref.png
Binary files differ
diff --git a/test/reference/a1-mask-sample.rgb24.ref.png b/test/reference/a1-mask-sample.rgb24.ref.png
new file mode 100644
index 00000000..b8fd4570
--- /dev/null
+++ b/test/reference/a1-mask-sample.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-mask.argb32.ref.png b/test/reference/a1-mask.argb32.ref.png
new file mode 100644
index 00000000..864fc103
--- /dev/null
+++ b/test/reference/a1-mask.argb32.ref.png
Binary files differ
diff --git a/test/reference/a1-mask.rgb24.ref.png b/test/reference/a1-mask.rgb24.ref.png
new file mode 100644
index 00000000..864fc103
--- /dev/null
+++ b/test/reference/a1-mask.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-rasterisation-rectangles.argb32.ref.png b/test/reference/a1-rasterisation-rectangles.argb32.ref.png
new file mode 100644
index 00000000..784cf873
--- /dev/null
+++ b/test/reference/a1-rasterisation-rectangles.argb32.ref.png
Binary files differ
diff --git a/test/reference/a1-rasterisation-rectangles.rgb24.ref.png b/test/reference/a1-rasterisation-rectangles.rgb24.ref.png
new file mode 100644
index 00000000..784cf873
--- /dev/null
+++ b/test/reference/a1-rasterisation-rectangles.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-rasterisation-triangles.argb32.ref.png b/test/reference/a1-rasterisation-triangles.argb32.ref.png
new file mode 100644
index 00000000..784cf873
--- /dev/null
+++ b/test/reference/a1-rasterisation-triangles.argb32.ref.png
Binary files differ
diff --git a/test/reference/a1-rasterisation-triangles.rgb24.ref.png b/test/reference/a1-rasterisation-triangles.rgb24.ref.png
new file mode 100644
index 00000000..784cf873
--- /dev/null
+++ b/test/reference/a1-rasterisation-triangles.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-rectilinear-grid.argb32.ref.png b/test/reference/a1-rectilinear-grid.argb32.ref.png
new file mode 100644
index 00000000..2dfb85e1
--- /dev/null
+++ b/test/reference/a1-rectilinear-grid.argb32.ref.png
Binary files differ
diff --git a/test/reference/a1-rectilinear-grid.rgb24.ref.png b/test/reference/a1-rectilinear-grid.rgb24.ref.png
new file mode 100644
index 00000000..2dfb85e1
--- /dev/null
+++ b/test/reference/a1-rectilinear-grid.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-sample.argb32.ref.png b/test/reference/a1-sample.argb32.ref.png
new file mode 100644
index 00000000..4c6131ce
--- /dev/null
+++ b/test/reference/a1-sample.argb32.ref.png
Binary files differ
diff --git a/test/reference/a1-sample.rgb24.ref.png b/test/reference/a1-sample.rgb24.ref.png
new file mode 100644
index 00000000..4c6131ce
--- /dev/null
+++ b/test/reference/a1-sample.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-tiger.argb32.ref.png b/test/reference/a1-tiger.argb32.ref.png
new file mode 100644
index 00000000..9a62af76
--- /dev/null
+++ b/test/reference/a1-tiger.argb32.ref.png
Binary files differ
diff --git a/test/reference/a1-tiger.rgb24.ref.png b/test/reference/a1-tiger.rgb24.ref.png
new file mode 100644
index 00000000..9a62af76
--- /dev/null
+++ b/test/reference/a1-tiger.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a1-traps-sample.argb32.ref.png b/test/reference/a1-traps-sample.argb32.ref.png
new file mode 100644
index 00000000..384ba4a0
--- /dev/null
+++ b/test/reference/a1-traps-sample.argb32.ref.png
Binary files differ
diff --git a/test/reference/a1-traps-sample.rgb24.ref.png b/test/reference/a1-traps-sample.rgb24.ref.png
new file mode 100644
index 00000000..384ba4a0
--- /dev/null
+++ b/test/reference/a1-traps-sample.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a8-clear.argb32.ref.png b/test/reference/a8-clear.argb32.ref.png
new file mode 100644
index 00000000..98a624eb
--- /dev/null
+++ b/test/reference/a8-clear.argb32.ref.png
Binary files differ
diff --git a/test/reference/a8-clear.rgb24.ref.png b/test/reference/a8-clear.rgb24.ref.png
new file mode 100644
index 00000000..98a624eb
--- /dev/null
+++ b/test/reference/a8-clear.rgb24.ref.png
Binary files differ
diff --git a/test/reference/a8-mask.argb32.ref.png b/test/reference/a8-mask.argb32.ref.png
new file mode 100644
index 00000000..e0503d93
--- /dev/null
+++ b/test/reference/a8-mask.argb32.ref.png
Binary files differ
diff --git a/test/reference/a8-mask.rgb24.ref.png b/test/reference/a8-mask.rgb24.ref.png
new file mode 100644
index 00000000..e0503d93
--- /dev/null
+++ b/test/reference/a8-mask.rgb24.ref.png
Binary files differ
diff --git a/test/reference/aliasing.argb32.ref.png b/test/reference/aliasing.argb32.ref.png
new file mode 100644
index 00000000..c11eb67d
--- /dev/null
+++ b/test/reference/aliasing.argb32.ref.png
Binary files differ
diff --git a/test/reference/aliasing.rgb24.ref.png b/test/reference/aliasing.rgb24.ref.png
new file mode 100644
index 00000000..c11eb67d
--- /dev/null
+++ b/test/reference/aliasing.rgb24.ref.png
Binary files differ
diff --git a/test/reference/alpha-similar.argb32.ref.png b/test/reference/alpha-similar.argb32.ref.png
new file mode 100644
index 00000000..9e1bfaac
--- /dev/null
+++ b/test/reference/alpha-similar.argb32.ref.png
Binary files differ
diff --git a/test/reference/alpha-similar.rgb24.ref.png b/test/reference/alpha-similar.rgb24.ref.png
index 4085d60f..a1f5280a 100644
--- a/test/reference/alpha-similar.rgb24.ref.png
+++ b/test/reference/alpha-similar.rgb24.ref.png
Binary files differ
diff --git a/test/reference/api-special-cases.argb32.ref.png b/test/reference/api-special-cases.argb32.ref.png
new file mode 100644
index 00000000..56b88a93
--- /dev/null
+++ b/test/reference/api-special-cases.argb32.ref.png
Binary files differ
diff --git a/test/reference/api-special-cases.rgb24.ref.png b/test/reference/api-special-cases.rgb24.ref.png
new file mode 100644
index 00000000..56b88a93
--- /dev/null
+++ b/test/reference/api-special-cases.rgb24.ref.png
Binary files differ
diff --git a/test/reference/arc-direction.argb32.ref.png b/test/reference/arc-direction.argb32.ref.png
new file mode 100644
index 00000000..280c09b6
--- /dev/null
+++ b/test/reference/arc-direction.argb32.ref.png
Binary files differ
diff --git a/test/reference/arc-direction.rgb24.ref.png b/test/reference/arc-direction.rgb24.ref.png
new file mode 100644
index 00000000..280c09b6
--- /dev/null
+++ b/test/reference/arc-direction.rgb24.ref.png
Binary files differ
diff --git a/test/reference/arc-infinite-loop.argb32.ref.png b/test/reference/arc-infinite-loop.argb32.ref.png
new file mode 100644
index 00000000..82d645f3
--- /dev/null
+++ b/test/reference/arc-infinite-loop.argb32.ref.png
Binary files differ
diff --git a/test/reference/arc-infinite-loop.rgb24.ref.png b/test/reference/arc-infinite-loop.rgb24.ref.png
new file mode 100644
index 00000000..82d645f3
--- /dev/null
+++ b/test/reference/arc-infinite-loop.rgb24.ref.png
Binary files differ
diff --git a/test/reference/arc-looping-dash.argb32.ref.png b/test/reference/arc-looping-dash.argb32.ref.png
new file mode 100644
index 00000000..516e66ce
--- /dev/null
+++ b/test/reference/arc-looping-dash.argb32.ref.png
Binary files differ
diff --git a/test/reference/arc-looping-dash.rgb24.ref.png b/test/reference/arc-looping-dash.rgb24.ref.png
new file mode 100644
index 00000000..516e66ce
--- /dev/null
+++ b/test/reference/arc-looping-dash.rgb24.ref.png
Binary files differ
diff --git a/test/reference/big-line.argb32.ref.png b/test/reference/big-line.argb32.ref.png
new file mode 100644
index 00000000..1bcde8f5
--- /dev/null
+++ b/test/reference/big-line.argb32.ref.png
Binary files differ
diff --git a/test/reference/big-line.rgb24.ref.png b/test/reference/big-line.rgb24.ref.png
new file mode 100644
index 00000000..1bcde8f5
--- /dev/null
+++ b/test/reference/big-line.rgb24.ref.png
Binary files differ
diff --git a/test/reference/big-little-triangle.argb32.ref.png b/test/reference/big-little-triangle.argb32.ref.png
index a5c81558..1c2522fa 100644
--- a/test/reference/big-little-triangle.argb32.ref.png
+++ b/test/reference/big-little-triangle.argb32.ref.png
Binary files differ
diff --git a/test/reference/big-little-triangle.rgb24.ref.png b/test/reference/big-little-triangle.rgb24.ref.png
index 30b1178c..24fc4725 100644
--- a/test/reference/big-little-triangle.rgb24.ref.png
+++ b/test/reference/big-little-triangle.rgb24.ref.png
Binary files differ
diff --git a/test/reference/bilevel-image.argb32.ref.png b/test/reference/bilevel-image.argb32.ref.png
new file mode 100644
index 00000000..3fb25c2e
--- /dev/null
+++ b/test/reference/bilevel-image.argb32.ref.png
Binary files differ
diff --git a/test/reference/bilevel-image.rgb24.ref.png b/test/reference/bilevel-image.rgb24.ref.png
new file mode 100644
index 00000000..3fb25c2e
--- /dev/null
+++ b/test/reference/bilevel-image.rgb24.ref.png
Binary files differ
diff --git a/test/reference/bilevel-xlib-fallback.rgb24.ref.png b/test/reference/bilevel-xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..3fb25c2e
--- /dev/null
+++ b/test/reference/bilevel-xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/bilevel-xlib-window.rgb24.ref.png b/test/reference/bilevel-xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..3fb25c2e
--- /dev/null
+++ b/test/reference/bilevel-xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/bilevel-xlib.argb32.ref.png b/test/reference/bilevel-xlib.argb32.ref.png
new file mode 100644
index 00000000..3fb25c2e
--- /dev/null
+++ b/test/reference/bilevel-xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/bilevel-xlib.rgb24.ref.png b/test/reference/bilevel-xlib.rgb24.ref.png
new file mode 100644
index 00000000..3fb25c2e
--- /dev/null
+++ b/test/reference/bilevel-xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/bitmap-font.argb32.ref.png b/test/reference/bitmap-font.argb32.ref.png
new file mode 100644
index 00000000..bc2bc52e
--- /dev/null
+++ b/test/reference/bitmap-font.argb32.ref.png
Binary files differ
diff --git a/test/reference/bitmap-font.rgb24.ref.png b/test/reference/bitmap-font.rgb24.ref.png
index 85690642..285d7428 100644
--- a/test/reference/bitmap-font.rgb24.ref.png
+++ b/test/reference/bitmap-font.rgb24.ref.png
Binary files differ
diff --git a/test/reference/bug-40410.argb32.ref.png b/test/reference/bug-40410.argb32.ref.png
new file mode 100644
index 00000000..ae4420a7
--- /dev/null
+++ b/test/reference/bug-40410.argb32.ref.png
Binary files differ
diff --git a/test/reference/bug-40410.rgb24.ref.png b/test/reference/bug-40410.rgb24.ref.png
new file mode 100644
index 00000000..ae4420a7
--- /dev/null
+++ b/test/reference/bug-40410.rgb24.ref.png
Binary files differ
diff --git a/test/reference/bug-bo-rectangular.argb32.ref.png b/test/reference/bug-bo-rectangular.argb32.ref.png
new file mode 100644
index 00000000..ffa4edef
--- /dev/null
+++ b/test/reference/bug-bo-rectangular.argb32.ref.png
Binary files differ
diff --git a/test/reference/bug-bo-rectangular.rgb24.ref.png b/test/reference/bug-bo-rectangular.rgb24.ref.png
new file mode 100644
index 00000000..ffa4edef
--- /dev/null
+++ b/test/reference/bug-bo-rectangular.rgb24.ref.png
Binary files differ
diff --git a/test/reference/bug-bo-ricotz.argb32.ref.png b/test/reference/bug-bo-ricotz.argb32.ref.png
new file mode 100644
index 00000000..0e52b245
--- /dev/null
+++ b/test/reference/bug-bo-ricotz.argb32.ref.png
Binary files differ
diff --git a/test/reference/bug-bo-ricotz.rgb24.ref.png b/test/reference/bug-bo-ricotz.rgb24.ref.png
new file mode 100644
index 00000000..0e52b245
--- /dev/null
+++ b/test/reference/bug-bo-ricotz.rgb24.ref.png
Binary files differ
diff --git a/test/reference/bug-extents.argb32.ref.png b/test/reference/bug-extents.argb32.ref.png
new file mode 100644
index 00000000..2c6875e4
--- /dev/null
+++ b/test/reference/bug-extents.argb32.ref.png
Binary files differ
diff --git a/test/reference/bug-extents.rgb24.ref.png b/test/reference/bug-extents.rgb24.ref.png
new file mode 100644
index 00000000..2c6875e4
--- /dev/null
+++ b/test/reference/bug-extents.rgb24.ref.png
Binary files differ
diff --git a/test/reference/bug-seams.argb32.ref.png b/test/reference/bug-seams.argb32.ref.png
new file mode 100644
index 00000000..99098db8
--- /dev/null
+++ b/test/reference/bug-seams.argb32.ref.png
Binary files differ
diff --git a/test/reference/bug-seams.rgb24.ref.png b/test/reference/bug-seams.rgb24.ref.png
new file mode 100644
index 00000000..99098db8
--- /dev/null
+++ b/test/reference/bug-seams.rgb24.ref.png
Binary files differ
diff --git a/test/reference/caps-joins-alpha.argb32.ref.png b/test/reference/caps-joins-alpha.argb32.ref.png
new file mode 100644
index 00000000..964a70f3
--- /dev/null
+++ b/test/reference/caps-joins-alpha.argb32.ref.png
Binary files differ
diff --git a/test/reference/caps-joins-alpha.rgb24.ref.png b/test/reference/caps-joins-alpha.rgb24.ref.png
new file mode 100644
index 00000000..964a70f3
--- /dev/null
+++ b/test/reference/caps-joins-alpha.rgb24.ref.png
Binary files differ
diff --git a/test/reference/caps-joins-curve.argb32.ref.png b/test/reference/caps-joins-curve.argb32.ref.png
new file mode 100644
index 00000000..35959002
--- /dev/null
+++ b/test/reference/caps-joins-curve.argb32.ref.png
Binary files differ
diff --git a/test/reference/caps-joins-curve.rgb24.ref.png b/test/reference/caps-joins-curve.rgb24.ref.png
new file mode 100644
index 00000000..35959002
--- /dev/null
+++ b/test/reference/caps-joins-curve.rgb24.ref.png
Binary files differ
diff --git a/test/reference/caps-joins.argb32.ref.png b/test/reference/caps-joins.argb32.ref.png
new file mode 100644
index 00000000..4983c023
--- /dev/null
+++ b/test/reference/caps-joins.argb32.ref.png
Binary files differ
diff --git a/test/reference/caps-joins.rgb24.ref.png b/test/reference/caps-joins.rgb24.ref.png
new file mode 100644
index 00000000..4983c023
--- /dev/null
+++ b/test/reference/caps-joins.rgb24.ref.png
Binary files differ
diff --git a/test/reference/caps-sub-paths.argb32.ref.png b/test/reference/caps-sub-paths.argb32.ref.png
new file mode 100644
index 00000000..74433895
--- /dev/null
+++ b/test/reference/caps-sub-paths.argb32.ref.png
Binary files differ
diff --git a/test/reference/caps-sub-paths.rgb24.ref.png b/test/reference/caps-sub-paths.rgb24.ref.png
new file mode 100644
index 00000000..74433895
--- /dev/null
+++ b/test/reference/caps-sub-paths.rgb24.ref.png
Binary files differ
diff --git a/test/reference/caps-tails-curve.argb32.ref.png b/test/reference/caps-tails-curve.argb32.ref.png
new file mode 100644
index 00000000..b0f477df
--- /dev/null
+++ b/test/reference/caps-tails-curve.argb32.ref.png
Binary files differ
diff --git a/test/reference/caps-tails-curve.rgb24.ref.png b/test/reference/caps-tails-curve.rgb24.ref.png
new file mode 100644
index 00000000..b0f477df
--- /dev/null
+++ b/test/reference/caps-tails-curve.rgb24.ref.png
Binary files differ
diff --git a/test/reference/caps.argb32.ref.png b/test/reference/caps.argb32.ref.png
new file mode 100644
index 00000000..bf784fd4
--- /dev/null
+++ b/test/reference/caps.argb32.ref.png
Binary files differ
diff --git a/test/reference/caps.rgb24.ref.png b/test/reference/caps.rgb24.ref.png
new file mode 100644
index 00000000..bf784fd4
--- /dev/null
+++ b/test/reference/caps.rgb24.ref.png
Binary files differ
diff --git a/test/reference/checkerboard.argb32.ref.png b/test/reference/checkerboard.argb32.ref.png
new file mode 100644
index 00000000..1444bc41
--- /dev/null
+++ b/test/reference/checkerboard.argb32.ref.png
Binary files differ
diff --git a/test/reference/checkerboard.rgb24.ref.png b/test/reference/checkerboard.rgb24.ref.png
new file mode 100644
index 00000000..1444bc41
--- /dev/null
+++ b/test/reference/checkerboard.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clear-source.argb32.ref.png b/test/reference/clear-source.argb32.ref.png
new file mode 100644
index 00000000..352bf450
--- /dev/null
+++ b/test/reference/clear-source.argb32.ref.png
Binary files differ
diff --git a/test/reference/clear-source.rgb24.ref.png b/test/reference/clear-source.rgb24.ref.png
new file mode 100644
index 00000000..352bf450
--- /dev/null
+++ b/test/reference/clear-source.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clear.argb32.ref.png b/test/reference/clear.argb32.ref.png
index 2e756e2c..102ac3dd 100644
--- a/test/reference/clear.argb32.ref.png
+++ b/test/reference/clear.argb32.ref.png
Binary files differ
diff --git a/test/reference/clear.rgb24.ref.png b/test/reference/clear.rgb24.ref.png
index dc1e5097..3267affb 100644
--- a/test/reference/clear.rgb24.ref.png
+++ b/test/reference/clear.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-all.argb32.ref.png b/test/reference/clip-all.argb32.ref.png
new file mode 100644
index 00000000..1ed070ca
--- /dev/null
+++ b/test/reference/clip-all.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-all.rgb24.ref.png b/test/reference/clip-all.rgb24.ref.png
new file mode 100644
index 00000000..1ed070ca
--- /dev/null
+++ b/test/reference/clip-all.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-complex-shape-eo-aa.argb32.ref.png b/test/reference/clip-complex-shape-eo-aa.argb32.ref.png
new file mode 100644
index 00000000..bafbb8ad
--- /dev/null
+++ b/test/reference/clip-complex-shape-eo-aa.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-complex-shape-eo-aa.rgb24.ref.png b/test/reference/clip-complex-shape-eo-aa.rgb24.ref.png
new file mode 100644
index 00000000..bafbb8ad
--- /dev/null
+++ b/test/reference/clip-complex-shape-eo-aa.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-complex-shape-eo-mono.argb32.ref.png b/test/reference/clip-complex-shape-eo-mono.argb32.ref.png
new file mode 100644
index 00000000..bafbb8ad
--- /dev/null
+++ b/test/reference/clip-complex-shape-eo-mono.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-complex-shape-eo-mono.rgb24.ref.png b/test/reference/clip-complex-shape-eo-mono.rgb24.ref.png
new file mode 100644
index 00000000..bafbb8ad
--- /dev/null
+++ b/test/reference/clip-complex-shape-eo-mono.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-contexts.argb32.ref.png b/test/reference/clip-contexts.argb32.ref.png
new file mode 100644
index 00000000..0d575a62
--- /dev/null
+++ b/test/reference/clip-contexts.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-contexts.rgb24.ref.png b/test/reference/clip-contexts.rgb24.ref.png
new file mode 100644
index 00000000..0d575a62
--- /dev/null
+++ b/test/reference/clip-contexts.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-disjoint-hatching.argb32.ref.png b/test/reference/clip-disjoint-hatching.argb32.ref.png
new file mode 100644
index 00000000..6b22544f
--- /dev/null
+++ b/test/reference/clip-disjoint-hatching.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-disjoint-hatching.rgb24.ref.png b/test/reference/clip-disjoint-hatching.rgb24.ref.png
new file mode 100644
index 00000000..6b22544f
--- /dev/null
+++ b/test/reference/clip-disjoint-hatching.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-disjoint.argb32.ref.png b/test/reference/clip-disjoint.argb32.ref.png
new file mode 100644
index 00000000..4e18b7c7
--- /dev/null
+++ b/test/reference/clip-disjoint.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-disjoint.rgb24.ref.png b/test/reference/clip-disjoint.rgb24.ref.png
new file mode 100644
index 00000000..4e18b7c7
--- /dev/null
+++ b/test/reference/clip-disjoint.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-empty-group.argb32.ref.png b/test/reference/clip-empty-group.argb32.ref.png
new file mode 100644
index 00000000..a59ca472
--- /dev/null
+++ b/test/reference/clip-empty-group.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-empty-group.rgb24.ref.png b/test/reference/clip-empty-group.rgb24.ref.png
new file mode 100644
index 00000000..a59ca472
--- /dev/null
+++ b/test/reference/clip-empty-group.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-empty-save.argb32.ref.png b/test/reference/clip-empty-save.argb32.ref.png
new file mode 100644
index 00000000..1ed070ca
--- /dev/null
+++ b/test/reference/clip-empty-save.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-empty-save.rgb24.ref.png b/test/reference/clip-empty-save.rgb24.ref.png
new file mode 100644
index 00000000..1ed070ca
--- /dev/null
+++ b/test/reference/clip-empty-save.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-empty.argb32.ref.png b/test/reference/clip-empty.argb32.ref.png
new file mode 100644
index 00000000..1ed070ca
--- /dev/null
+++ b/test/reference/clip-empty.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-empty.rgb24.ref.png b/test/reference/clip-empty.rgb24.ref.png
new file mode 100644
index 00000000..1ed070ca
--- /dev/null
+++ b/test/reference/clip-empty.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-fill-eo-unbounded.argb32.ref.png b/test/reference/clip-fill-eo-unbounded.argb32.ref.png
index 66af0942..e86177ca 100644
--- a/test/reference/clip-fill-eo-unbounded.argb32.ref.png
+++ b/test/reference/clip-fill-eo-unbounded.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-fill-eo-unbounded.rgb24.ref.png b/test/reference/clip-fill-eo-unbounded.rgb24.ref.png
index 272e0e87..cd0c9b7b 100644
--- a/test/reference/clip-fill-eo-unbounded.rgb24.ref.png
+++ b/test/reference/clip-fill-eo-unbounded.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-fill-no-op.argb32.ref.png b/test/reference/clip-fill-no-op.argb32.ref.png
new file mode 100644
index 00000000..2256461a
--- /dev/null
+++ b/test/reference/clip-fill-no-op.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-fill-no-op.rgb24.ref.png b/test/reference/clip-fill-no-op.rgb24.ref.png
new file mode 100644
index 00000000..2256461a
--- /dev/null
+++ b/test/reference/clip-fill-no-op.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-fill-nz-unbounded.argb32.ref.png b/test/reference/clip-fill-nz-unbounded.argb32.ref.png
index 66af0942..e86177ca 100644
--- a/test/reference/clip-fill-nz-unbounded.argb32.ref.png
+++ b/test/reference/clip-fill-nz-unbounded.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-fill-nz-unbounded.rgb24.ref.png b/test/reference/clip-fill-nz-unbounded.rgb24.ref.png
index 272e0e87..cd0c9b7b 100644
--- a/test/reference/clip-fill-nz-unbounded.rgb24.ref.png
+++ b/test/reference/clip-fill-nz-unbounded.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-fill-rule-pixel-aligned.argb32.ref.png b/test/reference/clip-fill-rule-pixel-aligned.argb32.ref.png
new file mode 100644
index 00000000..9b82c4b5
--- /dev/null
+++ b/test/reference/clip-fill-rule-pixel-aligned.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-fill-rule-pixel-aligned.rgb24.ref.png b/test/reference/clip-fill-rule-pixel-aligned.rgb24.ref.png
index 1970c476..0b4f0688 100644
--- a/test/reference/clip-fill-rule-pixel-aligned.rgb24.ref.png
+++ b/test/reference/clip-fill-rule-pixel-aligned.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-fill-rule.argb32.ref.png b/test/reference/clip-fill-rule.argb32.ref.png
index 0af15308..cb23ea61 100644
--- a/test/reference/clip-fill-rule.argb32.ref.png
+++ b/test/reference/clip-fill-rule.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-fill-rule.rgb24.ref.png b/test/reference/clip-fill-rule.rgb24.ref.png
index 7001dbed..5265ddea 100644
--- a/test/reference/clip-fill-rule.rgb24.ref.png
+++ b/test/reference/clip-fill-rule.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-fill.argb32.ref.png b/test/reference/clip-fill.argb32.ref.png
new file mode 100644
index 00000000..da091b99
--- /dev/null
+++ b/test/reference/clip-fill.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-fill.rgb24.ref.png b/test/reference/clip-fill.rgb24.ref.png
new file mode 100644
index 00000000..da091b99
--- /dev/null
+++ b/test/reference/clip-fill.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-group-shapes-aligned-rectangles.argb32.ref.png b/test/reference/clip-group-shapes-aligned-rectangles.argb32.ref.png
new file mode 100644
index 00000000..cba75078
--- /dev/null
+++ b/test/reference/clip-group-shapes-aligned-rectangles.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-group-shapes-aligned-rectangles.rgb24.ref.png b/test/reference/clip-group-shapes-aligned-rectangles.rgb24.ref.png
new file mode 100644
index 00000000..cba75078
--- /dev/null
+++ b/test/reference/clip-group-shapes-aligned-rectangles.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-group-shapes-circles.argb32.ref.png b/test/reference/clip-group-shapes-circles.argb32.ref.png
new file mode 100644
index 00000000..31219b27
--- /dev/null
+++ b/test/reference/clip-group-shapes-circles.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-group-shapes-circles.rgb24.ref.png b/test/reference/clip-group-shapes-circles.rgb24.ref.png
new file mode 100644
index 00000000..31219b27
--- /dev/null
+++ b/test/reference/clip-group-shapes-circles.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-group-shapes-unaligned-rectangles.argb32.ref.png b/test/reference/clip-group-shapes-unaligned-rectangles.argb32.ref.png
new file mode 100644
index 00000000..2ad41182
--- /dev/null
+++ b/test/reference/clip-group-shapes-unaligned-rectangles.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-group-shapes-unaligned-rectangles.rgb24.ref.png b/test/reference/clip-group-shapes-unaligned-rectangles.rgb24.ref.png
new file mode 100644
index 00000000..2ad41182
--- /dev/null
+++ b/test/reference/clip-group-shapes-unaligned-rectangles.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-image.argb32.ref.png b/test/reference/clip-image.argb32.ref.png
new file mode 100644
index 00000000..0f71f736
--- /dev/null
+++ b/test/reference/clip-image.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-image.rgb24.ref.png b/test/reference/clip-image.rgb24.ref.png
new file mode 100644
index 00000000..0f71f736
--- /dev/null
+++ b/test/reference/clip-image.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-intersect.argb32.ref.png b/test/reference/clip-intersect.argb32.ref.png
new file mode 100644
index 00000000..6627b3a5
--- /dev/null
+++ b/test/reference/clip-intersect.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-intersect.rgb24.ref.png b/test/reference/clip-intersect.rgb24.ref.png
new file mode 100644
index 00000000..6627b3a5
--- /dev/null
+++ b/test/reference/clip-intersect.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-mixed-antialias.argb32.ref.png b/test/reference/clip-mixed-antialias.argb32.ref.png
new file mode 100644
index 00000000..243c4dde
--- /dev/null
+++ b/test/reference/clip-mixed-antialias.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-mixed-antialias.rgb24.ref.png b/test/reference/clip-mixed-antialias.rgb24.ref.png
new file mode 100644
index 00000000..243c4dde
--- /dev/null
+++ b/test/reference/clip-mixed-antialias.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-nesting.argb32.ref.png b/test/reference/clip-nesting.argb32.ref.png
index 4d79d678..ce0cc0d0 100644
--- a/test/reference/clip-nesting.argb32.ref.png
+++ b/test/reference/clip-nesting.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-nesting.rgb24.ref.png b/test/reference/clip-nesting.rgb24.ref.png
index 3a7be9a2..52478437 100644
--- a/test/reference/clip-nesting.rgb24.ref.png
+++ b/test/reference/clip-nesting.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-polygons.argb32.ref.png b/test/reference/clip-polygons.argb32.ref.png
new file mode 100644
index 00000000..1b76cd07
--- /dev/null
+++ b/test/reference/clip-polygons.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-polygons.rgb24.ref.png b/test/reference/clip-polygons.rgb24.ref.png
new file mode 100644
index 00000000..1b76cd07
--- /dev/null
+++ b/test/reference/clip-polygons.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-push-group.argb32.ref.png b/test/reference/clip-push-group.argb32.ref.png
new file mode 100644
index 00000000..86724a23
--- /dev/null
+++ b/test/reference/clip-push-group.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-push-group.rgb24.ref.png b/test/reference/clip-push-group.rgb24.ref.png
new file mode 100644
index 00000000..86724a23
--- /dev/null
+++ b/test/reference/clip-push-group.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-rectilinear.argb32.ref.png b/test/reference/clip-rectilinear.argb32.ref.png
new file mode 100644
index 00000000..9d910db5
--- /dev/null
+++ b/test/reference/clip-rectilinear.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-rectilinear.rgb24.ref.png b/test/reference/clip-rectilinear.rgb24.ref.png
new file mode 100644
index 00000000..9d910db5
--- /dev/null
+++ b/test/reference/clip-rectilinear.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-rotate-image-surface-paint.argb32.ref.png b/test/reference/clip-rotate-image-surface-paint.argb32.ref.png
new file mode 100644
index 00000000..1093804d
--- /dev/null
+++ b/test/reference/clip-rotate-image-surface-paint.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-rotate-image-surface-paint.rgb24.ref.png b/test/reference/clip-rotate-image-surface-paint.rgb24.ref.png
new file mode 100644
index 00000000..1093804d
--- /dev/null
+++ b/test/reference/clip-rotate-image-surface-paint.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-rotate-image-surface-paint.xlib-fallback.rgb24.ref.png b/test/reference/clip-rotate-image-surface-paint.xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..1093804d
--- /dev/null
+++ b/test/reference/clip-rotate-image-surface-paint.xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-rotate-image-surface-paint.xlib-window.rgb24.ref.png b/test/reference/clip-rotate-image-surface-paint.xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..1093804d
--- /dev/null
+++ b/test/reference/clip-rotate-image-surface-paint.xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-rotate-image-surface-paint.xlib.argb32.ref.png b/test/reference/clip-rotate-image-surface-paint.xlib.argb32.ref.png
new file mode 100644
index 00000000..1093804d
--- /dev/null
+++ b/test/reference/clip-rotate-image-surface-paint.xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-rotate-image-surface-paint.xlib.rgb24.ref.png b/test/reference/clip-rotate-image-surface-paint.xlib.rgb24.ref.png
new file mode 100644
index 00000000..1093804d
--- /dev/null
+++ b/test/reference/clip-rotate-image-surface-paint.xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-shape.argb32.ref.png b/test/reference/clip-shape.argb32.ref.png
new file mode 100644
index 00000000..8f71b25a
--- /dev/null
+++ b/test/reference/clip-shape.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-shape.rgb24.ref.png b/test/reference/clip-shape.rgb24.ref.png
new file mode 100644
index 00000000..8f71b25a
--- /dev/null
+++ b/test/reference/clip-shape.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-stroke-no-op.argb32.ref.png b/test/reference/clip-stroke-no-op.argb32.ref.png
new file mode 100644
index 00000000..2256461a
--- /dev/null
+++ b/test/reference/clip-stroke-no-op.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-stroke-no-op.rgb24.ref.png b/test/reference/clip-stroke-no-op.rgb24.ref.png
new file mode 100644
index 00000000..2256461a
--- /dev/null
+++ b/test/reference/clip-stroke-no-op.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-stroke-unbounded.argb32.ref.png b/test/reference/clip-stroke-unbounded.argb32.ref.png
index df0ee64d..8bf64c10 100644
--- a/test/reference/clip-stroke-unbounded.argb32.ref.png
+++ b/test/reference/clip-stroke-unbounded.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-stroke-unbounded.rgb24.ref.png b/test/reference/clip-stroke-unbounded.rgb24.ref.png
index 7e53e69d..2dbe36b3 100644
--- a/test/reference/clip-stroke-unbounded.rgb24.ref.png
+++ b/test/reference/clip-stroke-unbounded.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-stroke.argb32.ref.png b/test/reference/clip-stroke.argb32.ref.png
new file mode 100644
index 00000000..c75416ec
--- /dev/null
+++ b/test/reference/clip-stroke.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-stroke.rgb24.ref.png b/test/reference/clip-stroke.rgb24.ref.png
new file mode 100644
index 00000000..c75416ec
--- /dev/null
+++ b/test/reference/clip-stroke.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-text.argb32.ref.png b/test/reference/clip-text.argb32.ref.png
new file mode 100644
index 00000000..c4b013d9
--- /dev/null
+++ b/test/reference/clip-text.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-text.rgb24.ref.png b/test/reference/clip-text.rgb24.ref.png
new file mode 100644
index 00000000..c4b013d9
--- /dev/null
+++ b/test/reference/clip-text.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-twice-rectangle.argb32.ref.png b/test/reference/clip-twice-rectangle.argb32.ref.png
new file mode 100644
index 00000000..d0e65ead
--- /dev/null
+++ b/test/reference/clip-twice-rectangle.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-twice-rectangle.rgb24.ref.png b/test/reference/clip-twice-rectangle.rgb24.ref.png
new file mode 100644
index 00000000..d0e65ead
--- /dev/null
+++ b/test/reference/clip-twice-rectangle.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-twice.argb32.ref.png b/test/reference/clip-twice.argb32.ref.png
index e0bdf323..877e3db2 100644
--- a/test/reference/clip-twice.argb32.ref.png
+++ b/test/reference/clip-twice.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-twice.rgb24.ref.png b/test/reference/clip-twice.rgb24.ref.png
index 97cb6804..325fdff8 100644
--- a/test/reference/clip-twice.rgb24.ref.png
+++ b/test/reference/clip-twice.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-unbounded.argb32.ref.png b/test/reference/clip-unbounded.argb32.ref.png
new file mode 100644
index 00000000..0b659056
--- /dev/null
+++ b/test/reference/clip-unbounded.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-xlib-fallback.rgb24.ref.png b/test/reference/clip-xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..062c721f
--- /dev/null
+++ b/test/reference/clip-xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-xlib-window.rgb24.ref.png b/test/reference/clip-xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..062c721f
--- /dev/null
+++ b/test/reference/clip-xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clip-xlib.argb32.ref.png b/test/reference/clip-xlib.argb32.ref.png
new file mode 100644
index 00000000..062c721f
--- /dev/null
+++ b/test/reference/clip-xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/clip-xlib.rgb24.ref.png b/test/reference/clip-xlib.rgb24.ref.png
new file mode 100644
index 00000000..062c721f
--- /dev/null
+++ b/test/reference/clip-xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clipped-group.argb32.ref.png b/test/reference/clipped-group.argb32.ref.png
new file mode 100644
index 00000000..1ab87732
--- /dev/null
+++ b/test/reference/clipped-group.argb32.ref.png
Binary files differ
diff --git a/test/reference/clipped-group.rgb24.ref.png b/test/reference/clipped-group.rgb24.ref.png
new file mode 100644
index 00000000..1ab87732
--- /dev/null
+++ b/test/reference/clipped-group.rgb24.ref.png
Binary files differ
diff --git a/test/reference/clipped-surface.argb32.ref.png b/test/reference/clipped-surface.argb32.ref.png
new file mode 100644
index 00000000..8e8b0083
--- /dev/null
+++ b/test/reference/clipped-surface.argb32.ref.png
Binary files differ
diff --git a/test/reference/clipped-surface.rgb24.ref.png b/test/reference/clipped-surface.rgb24.ref.png
new file mode 100644
index 00000000..8e8b0083
--- /dev/null
+++ b/test/reference/clipped-surface.rgb24.ref.png
Binary files differ
diff --git a/test/reference/close-path-current-point.argb32.ref.png b/test/reference/close-path-current-point.argb32.ref.png
new file mode 100644
index 00000000..ab3124b7
--- /dev/null
+++ b/test/reference/close-path-current-point.argb32.ref.png
Binary files differ
diff --git a/test/reference/close-path-current-point.rgb24.ref.png b/test/reference/close-path-current-point.rgb24.ref.png
new file mode 100644
index 00000000..ab3124b7
--- /dev/null
+++ b/test/reference/close-path-current-point.rgb24.ref.png
Binary files differ
diff --git a/test/reference/close-path.argb32.ref.png b/test/reference/close-path.argb32.ref.png
new file mode 100644
index 00000000..5506ff8b
--- /dev/null
+++ b/test/reference/close-path.argb32.ref.png
Binary files differ
diff --git a/test/reference/close-path.rgb24.ref.png b/test/reference/close-path.rgb24.ref.png
new file mode 100644
index 00000000..5506ff8b
--- /dev/null
+++ b/test/reference/close-path.rgb24.ref.png
Binary files differ
diff --git a/test/reference/composite-integer-translate-over-repeat.argb32.ref.png b/test/reference/composite-integer-translate-over-repeat.argb32.ref.png
new file mode 100644
index 00000000..c4257498
--- /dev/null
+++ b/test/reference/composite-integer-translate-over-repeat.argb32.ref.png
Binary files differ
diff --git a/test/reference/composite-integer-translate-over-repeat.rgb24.ref.png b/test/reference/composite-integer-translate-over-repeat.rgb24.ref.png
new file mode 100644
index 00000000..c4257498
--- /dev/null
+++ b/test/reference/composite-integer-translate-over-repeat.rgb24.ref.png
Binary files differ
diff --git a/test/reference/composite-integer-translate-over.argb32.ref.png b/test/reference/composite-integer-translate-over.argb32.ref.png
new file mode 100644
index 00000000..7ac3ddf4
--- /dev/null
+++ b/test/reference/composite-integer-translate-over.argb32.ref.png
Binary files differ
diff --git a/test/reference/composite-integer-translate-over.rgb24.ref.png b/test/reference/composite-integer-translate-over.rgb24.ref.png
new file mode 100644
index 00000000..7ac3ddf4
--- /dev/null
+++ b/test/reference/composite-integer-translate-over.rgb24.ref.png
Binary files differ
diff --git a/test/reference/composite-integer-translate-source.argb32.ref.png b/test/reference/composite-integer-translate-source.argb32.ref.png
new file mode 100644
index 00000000..7ac3ddf4
--- /dev/null
+++ b/test/reference/composite-integer-translate-source.argb32.ref.png
Binary files differ
diff --git a/test/reference/composite-integer-translate-source.rgb24.ref.png b/test/reference/composite-integer-translate-source.rgb24.ref.png
new file mode 100644
index 00000000..7ac3ddf4
--- /dev/null
+++ b/test/reference/composite-integer-translate-source.rgb24.ref.png
Binary files differ
diff --git a/test/reference/copy-disjoint.argb32.ref.png b/test/reference/copy-disjoint.argb32.ref.png
new file mode 100644
index 00000000..da9a3b11
--- /dev/null
+++ b/test/reference/copy-disjoint.argb32.ref.png
Binary files differ
diff --git a/test/reference/copy-disjoint.rgb24.ref.png b/test/reference/copy-disjoint.rgb24.ref.png
new file mode 100644
index 00000000..da9a3b11
--- /dev/null
+++ b/test/reference/copy-disjoint.rgb24.ref.png
Binary files differ
diff --git a/test/reference/copy-path.argb32.ref.png b/test/reference/copy-path.argb32.ref.png
new file mode 100644
index 00000000..b50e9e47
--- /dev/null
+++ b/test/reference/copy-path.argb32.ref.png
Binary files differ
diff --git a/test/reference/copy-path.rgb24.ref.png b/test/reference/copy-path.rgb24.ref.png
new file mode 100644
index 00000000..b50e9e47
--- /dev/null
+++ b/test/reference/copy-path.rgb24.ref.png
Binary files differ
diff --git a/test/reference/create-from-png-stream.argb32.ref.png b/test/reference/create-from-png-stream.argb32.ref.png
new file mode 100644
index 00000000..0a145d91
--- /dev/null
+++ b/test/reference/create-from-png-stream.argb32.ref.png
Binary files differ
diff --git a/test/reference/create-from-png-stream.rgb24.ref.png b/test/reference/create-from-png-stream.rgb24.ref.png
new file mode 100644
index 00000000..0a145d91
--- /dev/null
+++ b/test/reference/create-from-png-stream.rgb24.ref.png
Binary files differ
diff --git a/test/reference/create-from-png.argb32.ref.png b/test/reference/create-from-png.argb32.ref.png
new file mode 100644
index 00000000..0a145d91
--- /dev/null
+++ b/test/reference/create-from-png.argb32.ref.png
Binary files differ
diff --git a/test/reference/create-from-png.rgb24.ref.png b/test/reference/create-from-png.rgb24.ref.png
new file mode 100644
index 00000000..0a145d91
--- /dev/null
+++ b/test/reference/create-from-png.rgb24.ref.png
Binary files differ
diff --git a/test/reference/culled-glyphs.argb32.ref.png b/test/reference/culled-glyphs.argb32.ref.png
new file mode 100644
index 00000000..6701295b
--- /dev/null
+++ b/test/reference/culled-glyphs.argb32.ref.png
Binary files differ
diff --git a/test/reference/culled-glyphs.rgb24.ref.png b/test/reference/culled-glyphs.rgb24.ref.png
new file mode 100644
index 00000000..6701295b
--- /dev/null
+++ b/test/reference/culled-glyphs.rgb24.ref.png
Binary files differ
diff --git a/test/reference/curve-to-as-line-to.argb32.ref.png b/test/reference/curve-to-as-line-to.argb32.ref.png
new file mode 100644
index 00000000..d2411832
--- /dev/null
+++ b/test/reference/curve-to-as-line-to.argb32.ref.png
Binary files differ
diff --git a/test/reference/curve-to-as-line-to.rgb24.ref.png b/test/reference/curve-to-as-line-to.rgb24.ref.png
new file mode 100644
index 00000000..d2411832
--- /dev/null
+++ b/test/reference/curve-to-as-line-to.rgb24.ref.png
Binary files differ
diff --git a/test/reference/dash-caps-joins.argb32.ref.png b/test/reference/dash-caps-joins.argb32.ref.png
new file mode 100644
index 00000000..b09b86fc
--- /dev/null
+++ b/test/reference/dash-caps-joins.argb32.ref.png
Binary files differ
diff --git a/test/reference/dash-caps-joins.rgb24.ref.png b/test/reference/dash-caps-joins.rgb24.ref.png
new file mode 100644
index 00000000..b09b86fc
--- /dev/null
+++ b/test/reference/dash-caps-joins.rgb24.ref.png
Binary files differ
diff --git a/test/reference/dash-curve.argb32.ref.png b/test/reference/dash-curve.argb32.ref.png
new file mode 100644
index 00000000..8bebde20
--- /dev/null
+++ b/test/reference/dash-curve.argb32.ref.png
Binary files differ
diff --git a/test/reference/dash-curve.rgb24.ref.png b/test/reference/dash-curve.rgb24.ref.png
new file mode 100644
index 00000000..8bebde20
--- /dev/null
+++ b/test/reference/dash-curve.rgb24.ref.png
Binary files differ
diff --git a/test/reference/dash-infinite-loop.argb32.ref.png b/test/reference/dash-infinite-loop.argb32.ref.png
new file mode 100644
index 00000000..2ae1717a
--- /dev/null
+++ b/test/reference/dash-infinite-loop.argb32.ref.png
Binary files differ
diff --git a/test/reference/dash-infinite-loop.rgb24.ref.png b/test/reference/dash-infinite-loop.rgb24.ref.png
new file mode 100644
index 00000000..2ae1717a
--- /dev/null
+++ b/test/reference/dash-infinite-loop.rgb24.ref.png
Binary files differ
diff --git a/test/reference/dash-no-dash.argb32.ref.png b/test/reference/dash-no-dash.argb32.ref.png
new file mode 100644
index 00000000..c150a4f0
--- /dev/null
+++ b/test/reference/dash-no-dash.argb32.ref.png
Binary files differ
diff --git a/test/reference/dash-no-dash.rgb24.ref.png b/test/reference/dash-no-dash.rgb24.ref.png
new file mode 100644
index 00000000..c150a4f0
--- /dev/null
+++ b/test/reference/dash-no-dash.rgb24.ref.png
Binary files differ
diff --git a/test/reference/dash-offset-negative.argb32.ref.png b/test/reference/dash-offset-negative.argb32.ref.png
new file mode 100644
index 00000000..df22d08b
--- /dev/null
+++ b/test/reference/dash-offset-negative.argb32.ref.png
Binary files differ
diff --git a/test/reference/dash-offset-negative.rgb24.ref.png b/test/reference/dash-offset-negative.rgb24.ref.png
new file mode 100644
index 00000000..df22d08b
--- /dev/null
+++ b/test/reference/dash-offset-negative.rgb24.ref.png
Binary files differ
diff --git a/test/reference/dash-offset.argb32.ref.png b/test/reference/dash-offset.argb32.ref.png
new file mode 100644
index 00000000..52600c43
--- /dev/null
+++ b/test/reference/dash-offset.argb32.ref.png
Binary files differ
diff --git a/test/reference/dash-offset.rgb24.ref.png b/test/reference/dash-offset.rgb24.ref.png
new file mode 100644
index 00000000..52600c43
--- /dev/null
+++ b/test/reference/dash-offset.rgb24.ref.png
Binary files differ
diff --git a/test/reference/dash-scale.argb32.ref.png b/test/reference/dash-scale.argb32.ref.png
new file mode 100644
index 00000000..deef9dcd
--- /dev/null
+++ b/test/reference/dash-scale.argb32.ref.png
Binary files differ
diff --git a/test/reference/dash-scale.rgb24.ref.png b/test/reference/dash-scale.rgb24.ref.png
new file mode 100644
index 00000000..deef9dcd
--- /dev/null
+++ b/test/reference/dash-scale.rgb24.ref.png
Binary files differ
diff --git a/test/reference/dash-state.argb32.ref.png b/test/reference/dash-state.argb32.ref.png
new file mode 100644
index 00000000..31551cfe
--- /dev/null
+++ b/test/reference/dash-state.argb32.ref.png
Binary files differ
diff --git a/test/reference/dash-state.rgb24.ref.png b/test/reference/dash-state.rgb24.ref.png
new file mode 100644
index 00000000..31551cfe
--- /dev/null
+++ b/test/reference/dash-state.rgb24.ref.png
Binary files differ
diff --git a/test/reference/dash-zero-length.argb32.ref.png b/test/reference/dash-zero-length.argb32.ref.png
new file mode 100644
index 00000000..fdc5f5ef
--- /dev/null
+++ b/test/reference/dash-zero-length.argb32.ref.png
Binary files differ
diff --git a/test/reference/dash-zero-length.rgb24.ref.png b/test/reference/dash-zero-length.rgb24.ref.png
index 74d5df27..b14bd8dc 100644
--- a/test/reference/dash-zero-length.rgb24.ref.png
+++ b/test/reference/dash-zero-length.rgb24.ref.png
Binary files differ
diff --git a/test/reference/degenerate-arc.argb32.ref.png b/test/reference/degenerate-arc.argb32.ref.png
new file mode 100644
index 00000000..4da4fd6e
--- /dev/null
+++ b/test/reference/degenerate-arc.argb32.ref.png
Binary files differ
diff --git a/test/reference/degenerate-arc.rgb24.ref.png b/test/reference/degenerate-arc.rgb24.ref.png
new file mode 100644
index 00000000..4da4fd6e
--- /dev/null
+++ b/test/reference/degenerate-arc.rgb24.ref.png
Binary files differ
diff --git a/test/reference/degenerate-arcs.argb32.ref.png b/test/reference/degenerate-arcs.argb32.ref.png
new file mode 100644
index 00000000..fc1869dc
--- /dev/null
+++ b/test/reference/degenerate-arcs.argb32.ref.png
Binary files differ
diff --git a/test/reference/degenerate-arcs.rgb24.ref.png b/test/reference/degenerate-arcs.rgb24.ref.png
new file mode 100644
index 00000000..fc1869dc
--- /dev/null
+++ b/test/reference/degenerate-arcs.rgb24.ref.png
Binary files differ
diff --git a/test/reference/degenerate-curve-to.argb32.ref.png b/test/reference/degenerate-curve-to.argb32.ref.png
new file mode 100644
index 00000000..18ab11ec
--- /dev/null
+++ b/test/reference/degenerate-curve-to.argb32.ref.png
Binary files differ
diff --git a/test/reference/degenerate-curve-to.rgb24.ref.png b/test/reference/degenerate-curve-to.rgb24.ref.png
new file mode 100644
index 00000000..18ab11ec
--- /dev/null
+++ b/test/reference/degenerate-curve-to.rgb24.ref.png
Binary files differ
diff --git a/test/reference/degenerate-dash.argb32.ref.png b/test/reference/degenerate-dash.argb32.ref.png
new file mode 100644
index 00000000..2ddfc8bb
--- /dev/null
+++ b/test/reference/degenerate-dash.argb32.ref.png
Binary files differ
diff --git a/test/reference/degenerate-dash.rgb24.ref.png b/test/reference/degenerate-dash.rgb24.ref.png
new file mode 100644
index 00000000..2ddfc8bb
--- /dev/null
+++ b/test/reference/degenerate-dash.rgb24.ref.png
Binary files differ
diff --git a/test/reference/degenerate-linear-gradient.argb32.ref.png b/test/reference/degenerate-linear-gradient.argb32.ref.png
new file mode 100644
index 00000000..ceed48a7
--- /dev/null
+++ b/test/reference/degenerate-linear-gradient.argb32.ref.png
Binary files differ
diff --git a/test/reference/degenerate-linear-gradient.rgb24.ref.png b/test/reference/degenerate-linear-gradient.rgb24.ref.png
new file mode 100644
index 00000000..ceed48a7
--- /dev/null
+++ b/test/reference/degenerate-linear-gradient.rgb24.ref.png
Binary files differ
diff --git a/test/reference/degenerate-path.argb32.ref.png b/test/reference/degenerate-path.argb32.ref.png
index 5078b8a2..04593971 100644
--- a/test/reference/degenerate-path.argb32.ref.png
+++ b/test/reference/degenerate-path.argb32.ref.png
Binary files differ
diff --git a/test/reference/degenerate-path.rgb24.ref.png b/test/reference/degenerate-path.rgb24.ref.png
index d25513a4..07fda634 100644
--- a/test/reference/degenerate-path.rgb24.ref.png
+++ b/test/reference/degenerate-path.rgb24.ref.png
Binary files differ
diff --git a/test/reference/degenerate-pen.argb32.ref.png b/test/reference/degenerate-pen.argb32.ref.png
new file mode 100644
index 00000000..ea65d227
--- /dev/null
+++ b/test/reference/degenerate-pen.argb32.ref.png
Binary files differ
diff --git a/test/reference/degenerate-pen.rgb24.ref.png b/test/reference/degenerate-pen.rgb24.ref.png
new file mode 100644
index 00000000..ea65d227
--- /dev/null
+++ b/test/reference/degenerate-pen.rgb24.ref.png
Binary files differ
diff --git a/test/reference/degenerate-radial-gradient.argb32.ref.png b/test/reference/degenerate-radial-gradient.argb32.ref.png
new file mode 100644
index 00000000..9a5213b5
--- /dev/null
+++ b/test/reference/degenerate-radial-gradient.argb32.ref.png
Binary files differ
diff --git a/test/reference/degenerate-radial-gradient.rgb24.ref.png b/test/reference/degenerate-radial-gradient.rgb24.ref.png
new file mode 100644
index 00000000..9a5213b5
--- /dev/null
+++ b/test/reference/degenerate-radial-gradient.rgb24.ref.png
Binary files differ
diff --git a/test/reference/degenerate-rel-curve-to.argb32.ref.png b/test/reference/degenerate-rel-curve-to.argb32.ref.png
new file mode 100644
index 00000000..c4293adf
--- /dev/null
+++ b/test/reference/degenerate-rel-curve-to.argb32.ref.png
Binary files differ
diff --git a/test/reference/degenerate-rel-curve-to.rgb24.ref.png b/test/reference/degenerate-rel-curve-to.rgb24.ref.png
new file mode 100644
index 00000000..c4293adf
--- /dev/null
+++ b/test/reference/degenerate-rel-curve-to.rgb24.ref.png
Binary files differ
diff --git a/test/reference/device-offset-fractional.argb32.ref.png b/test/reference/device-offset-fractional.argb32.ref.png
new file mode 100644
index 00000000..b1eef5f2
--- /dev/null
+++ b/test/reference/device-offset-fractional.argb32.ref.png
Binary files differ
diff --git a/test/reference/device-offset-fractional.rgb24.ref.png b/test/reference/device-offset-fractional.rgb24.ref.png
new file mode 100644
index 00000000..b1eef5f2
--- /dev/null
+++ b/test/reference/device-offset-fractional.rgb24.ref.png
Binary files differ
diff --git a/test/reference/device-offset-positive.argb32.ref.png b/test/reference/device-offset-positive.argb32.ref.png
new file mode 100644
index 00000000..1115bca7
--- /dev/null
+++ b/test/reference/device-offset-positive.argb32.ref.png
Binary files differ
diff --git a/test/reference/device-offset-positive.rgb24.ref.png b/test/reference/device-offset-positive.rgb24.ref.png
index 3281f493..dcdd3324 100644
--- a/test/reference/device-offset-positive.rgb24.ref.png
+++ b/test/reference/device-offset-positive.rgb24.ref.png
Binary files differ
diff --git a/test/reference/device-offset-scale.argb32.ref.png b/test/reference/device-offset-scale.argb32.ref.png
new file mode 100644
index 00000000..fdffbf3c
--- /dev/null
+++ b/test/reference/device-offset-scale.argb32.ref.png
Binary files differ
diff --git a/test/reference/device-offset-scale.rgb24.ref.png b/test/reference/device-offset-scale.rgb24.ref.png
new file mode 100644
index 00000000..fdffbf3c
--- /dev/null
+++ b/test/reference/device-offset-scale.rgb24.ref.png
Binary files differ
diff --git a/test/reference/device-offset.argb32.ref.png b/test/reference/device-offset.argb32.ref.png
new file mode 100644
index 00000000..43ced46b
--- /dev/null
+++ b/test/reference/device-offset.argb32.ref.png
Binary files differ
diff --git a/test/reference/device-offset.rgb24.ref.png b/test/reference/device-offset.rgb24.ref.png
index 634388fe..f19acba1 100644
--- a/test/reference/device-offset.rgb24.ref.png
+++ b/test/reference/device-offset.rgb24.ref.png
Binary files differ
diff --git a/test/reference/drunkard-tails.argb32.ref.png b/test/reference/drunkard-tails.argb32.ref.png
new file mode 100644
index 00000000..053e4707
--- /dev/null
+++ b/test/reference/drunkard-tails.argb32.ref.png
Binary files differ
diff --git a/test/reference/drunkard-tails.rgb24.ref.png b/test/reference/drunkard-tails.rgb24.ref.png
new file mode 100644
index 00000000..053e4707
--- /dev/null
+++ b/test/reference/drunkard-tails.rgb24.ref.png
Binary files differ
diff --git a/test/reference/extend-pad-border.argb32.ref.png b/test/reference/extend-pad-border.argb32.ref.png
new file mode 100644
index 00000000..f4fc524a
--- /dev/null
+++ b/test/reference/extend-pad-border.argb32.ref.png
Binary files differ
diff --git a/test/reference/extend-pad-border.rgb24.ref.png b/test/reference/extend-pad-border.rgb24.ref.png
new file mode 100644
index 00000000..f4fc524a
--- /dev/null
+++ b/test/reference/extend-pad-border.rgb24.ref.png
Binary files differ
diff --git a/test/reference/extend-pad-similar.argb32.ref.png b/test/reference/extend-pad-similar.argb32.ref.png
new file mode 100644
index 00000000..93452218
--- /dev/null
+++ b/test/reference/extend-pad-similar.argb32.ref.png
Binary files differ
diff --git a/test/reference/extend-pad-similar.rgb24.ref.png b/test/reference/extend-pad-similar.rgb24.ref.png
new file mode 100644
index 00000000..93452218
--- /dev/null
+++ b/test/reference/extend-pad-similar.rgb24.ref.png
Binary files differ
diff --git a/test/reference/extend-pad.argb32.ref.png b/test/reference/extend-pad.argb32.ref.png
new file mode 100644
index 00000000..93452218
--- /dev/null
+++ b/test/reference/extend-pad.argb32.ref.png
Binary files differ
diff --git a/test/reference/extend-pad.rgb24.ref.png b/test/reference/extend-pad.rgb24.ref.png
new file mode 100644
index 00000000..93452218
--- /dev/null
+++ b/test/reference/extend-pad.rgb24.ref.png
Binary files differ
diff --git a/test/reference/extend-reflect-similar.argb32.ref.png b/test/reference/extend-reflect-similar.argb32.ref.png
new file mode 100644
index 00000000..5fc3448f
--- /dev/null
+++ b/test/reference/extend-reflect-similar.argb32.ref.png
Binary files differ
diff --git a/test/reference/extend-reflect-similar.rgb24.ref.png b/test/reference/extend-reflect-similar.rgb24.ref.png
new file mode 100644
index 00000000..5fc3448f
--- /dev/null
+++ b/test/reference/extend-reflect-similar.rgb24.ref.png
Binary files differ
diff --git a/test/reference/extend-reflect.argb32.ref.png b/test/reference/extend-reflect.argb32.ref.png
new file mode 100644
index 00000000..5fc3448f
--- /dev/null
+++ b/test/reference/extend-reflect.argb32.ref.png
Binary files differ
diff --git a/test/reference/extend-reflect.rgb24.ref.png b/test/reference/extend-reflect.rgb24.ref.png
new file mode 100644
index 00000000..5fc3448f
--- /dev/null
+++ b/test/reference/extend-reflect.rgb24.ref.png
Binary files differ
diff --git a/test/reference/extend-repeat-similar.argb32.ref.png b/test/reference/extend-repeat-similar.argb32.ref.png
new file mode 100644
index 00000000..81f0503d
--- /dev/null
+++ b/test/reference/extend-repeat-similar.argb32.ref.png
Binary files differ
diff --git a/test/reference/extend-repeat-similar.rgb24.ref.png b/test/reference/extend-repeat-similar.rgb24.ref.png
new file mode 100644
index 00000000..81f0503d
--- /dev/null
+++ b/test/reference/extend-repeat-similar.rgb24.ref.png
Binary files differ
diff --git a/test/reference/extend-repeat.argb32.ref.png b/test/reference/extend-repeat.argb32.ref.png
new file mode 100644
index 00000000..81f0503d
--- /dev/null
+++ b/test/reference/extend-repeat.argb32.ref.png
Binary files differ
diff --git a/test/reference/extend-repeat.rgb24.ref.png b/test/reference/extend-repeat.rgb24.ref.png
new file mode 100644
index 00000000..81f0503d
--- /dev/null
+++ b/test/reference/extend-repeat.rgb24.ref.png
Binary files differ
diff --git a/test/reference/extended-blend-solid.argb32.ref.png b/test/reference/extended-blend-solid.argb32.ref.png
index 083fe873..902ef884 100644
--- a/test/reference/extended-blend-solid.argb32.ref.png
+++ b/test/reference/extended-blend-solid.argb32.ref.png
Binary files differ
diff --git a/test/reference/extended-blend.argb32.ref.png b/test/reference/extended-blend.argb32.ref.png
index 083fe873..902ef884 100644
--- a/test/reference/extended-blend.argb32.ref.png
+++ b/test/reference/extended-blend.argb32.ref.png
Binary files differ
diff --git a/test/reference/fallback.argb32.ref.png b/test/reference/fallback.argb32.ref.png
index 6db06bbe..b7ce5736 100644
--- a/test/reference/fallback.argb32.ref.png
+++ b/test/reference/fallback.argb32.ref.png
Binary files differ
diff --git a/test/reference/fallback.image16.rgb24.ref.png b/test/reference/fallback.image16.rgb24.ref.png
new file mode 100644
index 00000000..d90ab0e6
--- /dev/null
+++ b/test/reference/fallback.image16.rgb24.ref.png
Binary files differ
diff --git a/test/reference/fallback.rgb24.ref.png b/test/reference/fallback.rgb24.ref.png
index b42e6bbf..16d3c14e 100644
--- a/test/reference/fallback.rgb24.ref.png
+++ b/test/reference/fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/fill-alpha-pattern.argb32.ref.png b/test/reference/fill-alpha-pattern.argb32.ref.png
new file mode 100644
index 00000000..4344f230
--- /dev/null
+++ b/test/reference/fill-alpha-pattern.argb32.ref.png
Binary files differ
diff --git a/test/reference/fill-alpha-pattern.rgb24.ref.png b/test/reference/fill-alpha-pattern.rgb24.ref.png
new file mode 100644
index 00000000..4344f230
--- /dev/null
+++ b/test/reference/fill-alpha-pattern.rgb24.ref.png
Binary files differ
diff --git a/test/reference/fill-alpha.argb32.ref.png b/test/reference/fill-alpha.argb32.ref.png
new file mode 100644
index 00000000..9de7b504
--- /dev/null
+++ b/test/reference/fill-alpha.argb32.ref.png
Binary files differ
diff --git a/test/reference/fill-alpha.rgb24.ref.png b/test/reference/fill-alpha.rgb24.ref.png
new file mode 100644
index 00000000..9de7b504
--- /dev/null
+++ b/test/reference/fill-alpha.rgb24.ref.png
Binary files differ
diff --git a/test/reference/fill-and-stroke-alpha-add.argb32.ref.png b/test/reference/fill-and-stroke-alpha-add.argb32.ref.png
new file mode 100644
index 00000000..c804c7a7
--- /dev/null
+++ b/test/reference/fill-and-stroke-alpha-add.argb32.ref.png
Binary files differ
diff --git a/test/reference/fill-and-stroke-alpha-add.rgb24.ref.png b/test/reference/fill-and-stroke-alpha-add.rgb24.ref.png
new file mode 100644
index 00000000..c804c7a7
--- /dev/null
+++ b/test/reference/fill-and-stroke-alpha-add.rgb24.ref.png
Binary files differ
diff --git a/test/reference/fill-and-stroke-alpha.argb32.ref.png b/test/reference/fill-and-stroke-alpha.argb32.ref.png
new file mode 100644
index 00000000..e22ebf91
--- /dev/null
+++ b/test/reference/fill-and-stroke-alpha.argb32.ref.png
Binary files differ
diff --git a/test/reference/fill-and-stroke-alpha.rgb24.ref.png b/test/reference/fill-and-stroke-alpha.rgb24.ref.png
new file mode 100644
index 00000000..e22ebf91
--- /dev/null
+++ b/test/reference/fill-and-stroke-alpha.rgb24.ref.png
Binary files differ
diff --git a/test/reference/fill-and-stroke.argb32.ref.png b/test/reference/fill-and-stroke.argb32.ref.png
index f1aa633c..b51f4b03 100644
--- a/test/reference/fill-and-stroke.argb32.ref.png
+++ b/test/reference/fill-and-stroke.argb32.ref.png
Binary files differ
diff --git a/test/reference/fill-and-stroke.rgb24.ref.png b/test/reference/fill-and-stroke.rgb24.ref.png
index 7081d72a..40172935 100644
--- a/test/reference/fill-and-stroke.rgb24.ref.png
+++ b/test/reference/fill-and-stroke.rgb24.ref.png
Binary files differ
diff --git a/test/reference/fill-degenerate-sort-order.argb32.ref.png b/test/reference/fill-degenerate-sort-order.argb32.ref.png
index 57e61db7..38bb1a03 100644
--- a/test/reference/fill-degenerate-sort-order.argb32.ref.png
+++ b/test/reference/fill-degenerate-sort-order.argb32.ref.png
Binary files differ
diff --git a/test/reference/fill-degenerate-sort-order.rgb24.ref.png b/test/reference/fill-degenerate-sort-order.rgb24.ref.png
index 5e807b1d..c392c211 100644
--- a/test/reference/fill-degenerate-sort-order.rgb24.ref.png
+++ b/test/reference/fill-degenerate-sort-order.rgb24.ref.png
Binary files differ
diff --git a/test/reference/fill-disjoint.argb32.ref.png b/test/reference/fill-disjoint.argb32.ref.png
new file mode 100644
index 00000000..da9a3b11
--- /dev/null
+++ b/test/reference/fill-disjoint.argb32.ref.png
Binary files differ
diff --git a/test/reference/fill-disjoint.rgb24.ref.png b/test/reference/fill-disjoint.rgb24.ref.png
new file mode 100644
index 00000000..da9a3b11
--- /dev/null
+++ b/test/reference/fill-disjoint.rgb24.ref.png
Binary files differ
diff --git a/test/reference/fill-image.argb32.ref.png b/test/reference/fill-image.argb32.ref.png
new file mode 100644
index 00000000..068fbb7c
--- /dev/null
+++ b/test/reference/fill-image.argb32.ref.png
Binary files differ
diff --git a/test/reference/fill-image.rgb24.ref.png b/test/reference/fill-image.rgb24.ref.png
new file mode 100644
index 00000000..068fbb7c
--- /dev/null
+++ b/test/reference/fill-image.rgb24.ref.png
Binary files differ
diff --git a/test/reference/fill-missed-stop.argb32.ref.png b/test/reference/fill-missed-stop.argb32.ref.png
new file mode 100644
index 00000000..477eec9a
--- /dev/null
+++ b/test/reference/fill-missed-stop.argb32.ref.png
Binary files differ
diff --git a/test/reference/fill-missed-stop.rgb24.ref.png b/test/reference/fill-missed-stop.rgb24.ref.png
index 3f9d2ad4..2e663f05 100644
--- a/test/reference/fill-missed-stop.rgb24.ref.png
+++ b/test/reference/fill-missed-stop.rgb24.ref.png
Binary files differ
diff --git a/test/reference/fill-rule.argb32.ref.png b/test/reference/fill-rule.argb32.ref.png
new file mode 100644
index 00000000..23e0a3a8
--- /dev/null
+++ b/test/reference/fill-rule.argb32.ref.png
Binary files differ
diff --git a/test/reference/fill-rule.rgb24.ref.png b/test/reference/fill-rule.rgb24.ref.png
index 704172fd..55486e62 100644
--- a/test/reference/fill-rule.rgb24.ref.png
+++ b/test/reference/fill-rule.rgb24.ref.png
Binary files differ
diff --git a/test/reference/fill-xlib-fallback.rgb24.ref.png b/test/reference/fill-xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..1e67073d
--- /dev/null
+++ b/test/reference/fill-xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/fill-xlib-window.rgb24.ref.png b/test/reference/fill-xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..1e67073d
--- /dev/null
+++ b/test/reference/fill-xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/fill-xlib.argb32.ref.png b/test/reference/fill-xlib.argb32.ref.png
new file mode 100644
index 00000000..1e67073d
--- /dev/null
+++ b/test/reference/fill-xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/fill-xlib.rgb24.ref.png b/test/reference/fill-xlib.rgb24.ref.png
new file mode 100644
index 00000000..1e67073d
--- /dev/null
+++ b/test/reference/fill-xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/filter-bilinear-extents.argb32.ref.png b/test/reference/filter-bilinear-extents.argb32.ref.png
new file mode 100644
index 00000000..797e7981
--- /dev/null
+++ b/test/reference/filter-bilinear-extents.argb32.ref.png
Binary files differ
diff --git a/test/reference/filter-bilinear-extents.rgb24.ref.png b/test/reference/filter-bilinear-extents.rgb24.ref.png
new file mode 100644
index 00000000..797e7981
--- /dev/null
+++ b/test/reference/filter-bilinear-extents.rgb24.ref.png
Binary files differ
diff --git a/test/reference/filter-nearest-offset.argb32.ref.png b/test/reference/filter-nearest-offset.argb32.ref.png
new file mode 100644
index 00000000..8cca9a1d
--- /dev/null
+++ b/test/reference/filter-nearest-offset.argb32.ref.png
Binary files differ
diff --git a/test/reference/filter-nearest-offset.rgb24.ref.png b/test/reference/filter-nearest-offset.rgb24.ref.png
new file mode 100644
index 00000000..8cca9a1d
--- /dev/null
+++ b/test/reference/filter-nearest-offset.rgb24.ref.png
Binary files differ
diff --git a/test/reference/filter-nearest-transformed.argb32.ref.png b/test/reference/filter-nearest-transformed.argb32.ref.png
new file mode 100644
index 00000000..24adf8bc
--- /dev/null
+++ b/test/reference/filter-nearest-transformed.argb32.ref.png
Binary files differ
diff --git a/test/reference/filter-nearest-transformed.rgb24.ref.png b/test/reference/filter-nearest-transformed.rgb24.ref.png
new file mode 100644
index 00000000..24adf8bc
--- /dev/null
+++ b/test/reference/filter-nearest-transformed.rgb24.ref.png
Binary files differ
diff --git a/test/reference/finer-grained-fallbacks.argb32.ref.png b/test/reference/finer-grained-fallbacks.argb32.ref.png
index ea507627..8cd99d0e 100644
--- a/test/reference/finer-grained-fallbacks.argb32.ref.png
+++ b/test/reference/finer-grained-fallbacks.argb32.ref.png
Binary files differ
diff --git a/test/reference/finer-grained-fallbacks.rgb24.ref.png b/test/reference/finer-grained-fallbacks.rgb24.ref.png
index 08467b09..5d6cd94f 100644
--- a/test/reference/finer-grained-fallbacks.rgb24.ref.png
+++ b/test/reference/finer-grained-fallbacks.rgb24.ref.png
Binary files differ
diff --git a/test/reference/font-matrix-translation.argb32.ref.png b/test/reference/font-matrix-translation.argb32.ref.png
new file mode 100644
index 00000000..a4a10820
--- /dev/null
+++ b/test/reference/font-matrix-translation.argb32.ref.png
Binary files differ
diff --git a/test/reference/font-matrix-translation.rgb24.ref.png b/test/reference/font-matrix-translation.rgb24.ref.png
new file mode 100644
index 00000000..a4a10820
--- /dev/null
+++ b/test/reference/font-matrix-translation.rgb24.ref.png
Binary files differ
diff --git a/test/reference/ft-show-glyphs-positioning.argb32.ref.png b/test/reference/ft-show-glyphs-positioning.argb32.ref.png
new file mode 100644
index 00000000..af6dcaf9
--- /dev/null
+++ b/test/reference/ft-show-glyphs-positioning.argb32.ref.png
Binary files differ
diff --git a/test/reference/ft-show-glyphs-positioning.rgb24.ref.png b/test/reference/ft-show-glyphs-positioning.rgb24.ref.png
new file mode 100644
index 00000000..af6dcaf9
--- /dev/null
+++ b/test/reference/ft-show-glyphs-positioning.rgb24.ref.png
Binary files differ
diff --git a/test/reference/ft-show-glyphs-table.argb32.ref.png b/test/reference/ft-show-glyphs-table.argb32.ref.png
new file mode 100644
index 00000000..ed691248
--- /dev/null
+++ b/test/reference/ft-show-glyphs-table.argb32.ref.png
Binary files differ
diff --git a/test/reference/ft-show-glyphs-table.rgb24.ref.png b/test/reference/ft-show-glyphs-table.rgb24.ref.png
new file mode 100644
index 00000000..ed691248
--- /dev/null
+++ b/test/reference/ft-show-glyphs-table.rgb24.ref.png
Binary files differ
diff --git a/test/reference/ft-text-antialias-none.argb32.ref.png b/test/reference/ft-text-antialias-none.argb32.ref.png
new file mode 100644
index 00000000..c638c9ea
--- /dev/null
+++ b/test/reference/ft-text-antialias-none.argb32.ref.png
Binary files differ
diff --git a/test/reference/ft-text-antialias-none.rgb24.ref.png b/test/reference/ft-text-antialias-none.rgb24.ref.png
new file mode 100644
index 00000000..c638c9ea
--- /dev/null
+++ b/test/reference/ft-text-antialias-none.rgb24.ref.png
Binary files differ
diff --git a/test/reference/ft-text-vertical-layout-type1.argb32.ref.png b/test/reference/ft-text-vertical-layout-type1.argb32.ref.png
new file mode 100644
index 00000000..4941965b
--- /dev/null
+++ b/test/reference/ft-text-vertical-layout-type1.argb32.ref.png
Binary files differ
diff --git a/test/reference/ft-text-vertical-layout-type1.rgb24.ref.png b/test/reference/ft-text-vertical-layout-type1.rgb24.ref.png
new file mode 100644
index 00000000..4941965b
--- /dev/null
+++ b/test/reference/ft-text-vertical-layout-type1.rgb24.ref.png
Binary files differ
diff --git a/test/reference/ft-text-vertical-layout-type3.argb32.ref.png b/test/reference/ft-text-vertical-layout-type3.argb32.ref.png
new file mode 100644
index 00000000..7f7b428c
--- /dev/null
+++ b/test/reference/ft-text-vertical-layout-type3.argb32.ref.png
Binary files differ
diff --git a/test/reference/ft-text-vertical-layout-type3.rgb24.ref.png b/test/reference/ft-text-vertical-layout-type3.rgb24.ref.png
new file mode 100644
index 00000000..7f7b428c
--- /dev/null
+++ b/test/reference/ft-text-vertical-layout-type3.rgb24.ref.png
Binary files differ
diff --git a/test/reference/get-group-target.argb32.ref.png b/test/reference/get-group-target.argb32.ref.png
new file mode 100644
index 00000000..d162775e
--- /dev/null
+++ b/test/reference/get-group-target.argb32.ref.png
Binary files differ
diff --git a/test/reference/get-group-target.rgb24.ref.png b/test/reference/get-group-target.rgb24.ref.png
new file mode 100644
index 00000000..d162775e
--- /dev/null
+++ b/test/reference/get-group-target.rgb24.ref.png
Binary files differ
diff --git a/test/reference/glyph-cache-pressure.argb32.ref.png b/test/reference/glyph-cache-pressure.argb32.ref.png
new file mode 100644
index 00000000..a6e1b061
--- /dev/null
+++ b/test/reference/glyph-cache-pressure.argb32.ref.png
Binary files differ
diff --git a/test/reference/glyph-cache-pressure.rgb24.ref.png b/test/reference/glyph-cache-pressure.rgb24.ref.png
new file mode 100644
index 00000000..a6e1b061
--- /dev/null
+++ b/test/reference/glyph-cache-pressure.rgb24.ref.png
Binary files differ
diff --git a/test/reference/gradient-alpha.argb32.ref.png b/test/reference/gradient-alpha.argb32.ref.png
new file mode 100644
index 00000000..f64b26a7
--- /dev/null
+++ b/test/reference/gradient-alpha.argb32.ref.png
Binary files differ
diff --git a/test/reference/gradient-constant-alpha.argb32.ref.png b/test/reference/gradient-constant-alpha.argb32.ref.png
new file mode 100644
index 00000000..7f49e2c6
--- /dev/null
+++ b/test/reference/gradient-constant-alpha.argb32.ref.png
Binary files differ
diff --git a/test/reference/gradient-zero-stops.argb32.ref.png b/test/reference/gradient-zero-stops.argb32.ref.png
new file mode 100644
index 00000000..0a50f4ca
--- /dev/null
+++ b/test/reference/gradient-zero-stops.argb32.ref.png
Binary files differ
diff --git a/test/reference/gradient-zero-stops.rgb24.ref.png b/test/reference/gradient-zero-stops.rgb24.ref.png
index eb24e4b6..21465ce4 100644
--- a/test/reference/gradient-zero-stops.rgb24.ref.png
+++ b/test/reference/gradient-zero-stops.rgb24.ref.png
Binary files differ
diff --git a/test/reference/group-clip.argb32.ref.png b/test/reference/group-clip.argb32.ref.png
new file mode 100644
index 00000000..7b8a7532
--- /dev/null
+++ b/test/reference/group-clip.argb32.ref.png
Binary files differ
diff --git a/test/reference/group-clip.rgb24.ref.png b/test/reference/group-clip.rgb24.ref.png
new file mode 100644
index 00000000..7b8a7532
--- /dev/null
+++ b/test/reference/group-clip.rgb24.ref.png
Binary files differ
diff --git a/test/reference/group-paint.argb32.ref.png b/test/reference/group-paint.argb32.ref.png
new file mode 100644
index 00000000..1ed070ca
--- /dev/null
+++ b/test/reference/group-paint.argb32.ref.png
Binary files differ
diff --git a/test/reference/group-paint.rgb24.ref.png b/test/reference/group-paint.rgb24.ref.png
new file mode 100644
index 00000000..1ed070ca
--- /dev/null
+++ b/test/reference/group-paint.rgb24.ref.png
Binary files differ
diff --git a/test/reference/group-unaligned.argb32.ref.png b/test/reference/group-unaligned.argb32.ref.png
new file mode 100644
index 00000000..beb0ae2d
--- /dev/null
+++ b/test/reference/group-unaligned.argb32.ref.png
Binary files differ
diff --git a/test/reference/group-unaligned.rgb24.ref.png b/test/reference/group-unaligned.rgb24.ref.png
new file mode 100644
index 00000000..beb0ae2d
--- /dev/null
+++ b/test/reference/group-unaligned.rgb24.ref.png
Binary files differ
diff --git a/test/reference/halo-transform.argb32.ref.png b/test/reference/halo-transform.argb32.ref.png
new file mode 100644
index 00000000..96c6f422
--- /dev/null
+++ b/test/reference/halo-transform.argb32.ref.png
Binary files differ
diff --git a/test/reference/halo-transform.rgb24.ref.png b/test/reference/halo-transform.rgb24.ref.png
new file mode 100644
index 00000000..96c6f422
--- /dev/null
+++ b/test/reference/halo-transform.rgb24.ref.png
Binary files differ
diff --git a/test/reference/halo.argb32.ref.png b/test/reference/halo.argb32.ref.png
new file mode 100644
index 00000000..191ee479
--- /dev/null
+++ b/test/reference/halo.argb32.ref.png
Binary files differ
diff --git a/test/reference/halo.rgb24.ref.png b/test/reference/halo.rgb24.ref.png
new file mode 100644
index 00000000..191ee479
--- /dev/null
+++ b/test/reference/halo.rgb24.ref.png
Binary files differ
diff --git a/test/reference/hatchings.argb32.ref.png b/test/reference/hatchings.argb32.ref.png
new file mode 100644
index 00000000..46b73808
--- /dev/null
+++ b/test/reference/hatchings.argb32.ref.png
Binary files differ
diff --git a/test/reference/hatchings.rgb24.ref.png b/test/reference/hatchings.rgb24.ref.png
new file mode 100644
index 00000000..46b73808
--- /dev/null
+++ b/test/reference/hatchings.rgb24.ref.png
Binary files differ
diff --git a/test/reference/horizontal-clip.argb32.ref.png b/test/reference/horizontal-clip.argb32.ref.png
new file mode 100644
index 00000000..43dd07f1
--- /dev/null
+++ b/test/reference/horizontal-clip.argb32.ref.png
Binary files differ
diff --git a/test/reference/horizontal-clip.rgb24.ref.png b/test/reference/horizontal-clip.rgb24.ref.png
new file mode 100644
index 00000000..43dd07f1
--- /dev/null
+++ b/test/reference/horizontal-clip.rgb24.ref.png
Binary files differ
diff --git a/test/reference/huge-linear.argb32.ref.png b/test/reference/huge-linear.argb32.ref.png
new file mode 100644
index 00000000..f89217b8
--- /dev/null
+++ b/test/reference/huge-linear.argb32.ref.png
Binary files differ
diff --git a/test/reference/huge-linear.rgb24.ref.png b/test/reference/huge-linear.rgb24.ref.png
new file mode 100644
index 00000000..f89217b8
--- /dev/null
+++ b/test/reference/huge-linear.rgb24.ref.png
Binary files differ
diff --git a/test/reference/huge-radial.argb32.ref.png b/test/reference/huge-radial.argb32.ref.png
new file mode 100644
index 00000000..541bb309
--- /dev/null
+++ b/test/reference/huge-radial.argb32.ref.png
Binary files differ
diff --git a/test/reference/huge-radial.rgb24.ref.png b/test/reference/huge-radial.rgb24.ref.png
new file mode 100644
index 00000000..541bb309
--- /dev/null
+++ b/test/reference/huge-radial.rgb24.ref.png
Binary files differ
diff --git a/test/reference/image-bug-710072-aligned.argb32.ref.png b/test/reference/image-bug-710072-aligned.argb32.ref.png
new file mode 100644
index 00000000..42abd205
--- /dev/null
+++ b/test/reference/image-bug-710072-aligned.argb32.ref.png
Binary files differ
diff --git a/test/reference/image-bug-710072-aligned.rgb24.ref.png b/test/reference/image-bug-710072-aligned.rgb24.ref.png
new file mode 100644
index 00000000..42abd205
--- /dev/null
+++ b/test/reference/image-bug-710072-aligned.rgb24.ref.png
Binary files differ
diff --git a/test/reference/image-bug-710072-aligned.xlib-fallback.rgb24.ref.png b/test/reference/image-bug-710072-aligned.xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..42abd205
--- /dev/null
+++ b/test/reference/image-bug-710072-aligned.xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/image-bug-710072-aligned.xlib-window.rgb24.ref.png b/test/reference/image-bug-710072-aligned.xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..42abd205
--- /dev/null
+++ b/test/reference/image-bug-710072-aligned.xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/image-bug-710072-aligned.xlib.argb32.ref.png b/test/reference/image-bug-710072-aligned.xlib.argb32.ref.png
new file mode 100644
index 00000000..42abd205
--- /dev/null
+++ b/test/reference/image-bug-710072-aligned.xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/image-bug-710072-aligned.xlib.rgb24.ref.png b/test/reference/image-bug-710072-aligned.xlib.rgb24.ref.png
new file mode 100644
index 00000000..42abd205
--- /dev/null
+++ b/test/reference/image-bug-710072-aligned.xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/image-bug-710072-unaligned.argb32.ref.png b/test/reference/image-bug-710072-unaligned.argb32.ref.png
new file mode 100644
index 00000000..13efa30f
--- /dev/null
+++ b/test/reference/image-bug-710072-unaligned.argb32.ref.png
Binary files differ
diff --git a/test/reference/image-bug-710072-unaligned.rgb24.ref.png b/test/reference/image-bug-710072-unaligned.rgb24.ref.png
new file mode 100644
index 00000000..13efa30f
--- /dev/null
+++ b/test/reference/image-bug-710072-unaligned.rgb24.ref.png
Binary files differ
diff --git a/test/reference/image-bug-710072-unaligned.xlib-fallback.rgb24.ref.png b/test/reference/image-bug-710072-unaligned.xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..0a5a6e6c
--- /dev/null
+++ b/test/reference/image-bug-710072-unaligned.xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/image-bug-710072-unaligned.xlib-window.rgb24.ref.png b/test/reference/image-bug-710072-unaligned.xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..0a5a6e6c
--- /dev/null
+++ b/test/reference/image-bug-710072-unaligned.xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/image-bug-710072-unaligned.xlib.argb32.ref.png b/test/reference/image-bug-710072-unaligned.xlib.argb32.ref.png
new file mode 100644
index 00000000..0a5a6e6c
--- /dev/null
+++ b/test/reference/image-bug-710072-unaligned.xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/image-bug-710072-unaligned.xlib.rgb24.ref.png b/test/reference/image-bug-710072-unaligned.xlib.rgb24.ref.png
new file mode 100644
index 00000000..0a5a6e6c
--- /dev/null
+++ b/test/reference/image-bug-710072-unaligned.xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/image-surface-source.xlib-fallback.rgb24.ref.png b/test/reference/image-surface-source.xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..0d68a82c
--- /dev/null
+++ b/test/reference/image-surface-source.xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/image-surface-source.xlib-window.rgb24.ref.png b/test/reference/image-surface-source.xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..0d68a82c
--- /dev/null
+++ b/test/reference/image-surface-source.xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/image-surface-source.xlib.argb32.ref.png b/test/reference/image-surface-source.xlib.argb32.ref.png
new file mode 100644
index 00000000..01829720
--- /dev/null
+++ b/test/reference/image-surface-source.xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/image-surface-source.xlib.rgb24.ref.png b/test/reference/image-surface-source.xlib.rgb24.ref.png
new file mode 100644
index 00000000..0d68a82c
--- /dev/null
+++ b/test/reference/image-surface-source.xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/implicit-close.argb32.ref.png b/test/reference/implicit-close.argb32.ref.png
new file mode 100644
index 00000000..f15f8a3a
--- /dev/null
+++ b/test/reference/implicit-close.argb32.ref.png
Binary files differ
diff --git a/test/reference/implicit-close.rgb24.ref.png b/test/reference/implicit-close.rgb24.ref.png
new file mode 100644
index 00000000..f15f8a3a
--- /dev/null
+++ b/test/reference/implicit-close.rgb24.ref.png
Binary files differ
diff --git a/test/reference/infinite-join.argb32.ref.png b/test/reference/infinite-join.argb32.ref.png
new file mode 100644
index 00000000..54a91124
--- /dev/null
+++ b/test/reference/infinite-join.argb32.ref.png
Binary files differ
diff --git a/test/reference/infinite-join.rgb24.ref.png b/test/reference/infinite-join.rgb24.ref.png
new file mode 100644
index 00000000..54a91124
--- /dev/null
+++ b/test/reference/infinite-join.rgb24.ref.png
Binary files differ
diff --git a/test/reference/joins-loop.argb32.ref.png b/test/reference/joins-loop.argb32.ref.png
new file mode 100644
index 00000000..8e3f25ad
--- /dev/null
+++ b/test/reference/joins-loop.argb32.ref.png
Binary files differ
diff --git a/test/reference/joins-loop.rgb24.ref.png b/test/reference/joins-loop.rgb24.ref.png
new file mode 100644
index 00000000..8e3f25ad
--- /dev/null
+++ b/test/reference/joins-loop.rgb24.ref.png
Binary files differ
diff --git a/test/reference/joins-retrace.argb32.ref.png b/test/reference/joins-retrace.argb32.ref.png
new file mode 100644
index 00000000..22b0ecf9
--- /dev/null
+++ b/test/reference/joins-retrace.argb32.ref.png
Binary files differ
diff --git a/test/reference/joins-retrace.rgb24.ref.png b/test/reference/joins-retrace.rgb24.ref.png
new file mode 100644
index 00000000..22b0ecf9
--- /dev/null
+++ b/test/reference/joins-retrace.rgb24.ref.png
Binary files differ
diff --git a/test/reference/joins-star.argb32.ref.png b/test/reference/joins-star.argb32.ref.png
new file mode 100644
index 00000000..76a541cc
--- /dev/null
+++ b/test/reference/joins-star.argb32.ref.png
Binary files differ
diff --git a/test/reference/joins-star.rgb24.ref.png b/test/reference/joins-star.rgb24.ref.png
new file mode 100644
index 00000000..76a541cc
--- /dev/null
+++ b/test/reference/joins-star.rgb24.ref.png
Binary files differ
diff --git a/test/reference/joins.argb32.ref.png b/test/reference/joins.argb32.ref.png
new file mode 100644
index 00000000..a1d069d3
--- /dev/null
+++ b/test/reference/joins.argb32.ref.png
Binary files differ
diff --git a/test/reference/joins.rgb24.ref.png b/test/reference/joins.rgb24.ref.png
new file mode 100644
index 00000000..a1d069d3
--- /dev/null
+++ b/test/reference/joins.rgb24.ref.png
Binary files differ
diff --git a/test/reference/large-clip.argb32.ref.png b/test/reference/large-clip.argb32.ref.png
new file mode 100644
index 00000000..3c3464be
--- /dev/null
+++ b/test/reference/large-clip.argb32.ref.png
Binary files differ
diff --git a/test/reference/large-clip.rgb24.ref.png b/test/reference/large-clip.rgb24.ref.png
new file mode 100644
index 00000000..3c3464be
--- /dev/null
+++ b/test/reference/large-clip.rgb24.ref.png
Binary files differ
diff --git a/test/reference/large-font.argb32.ref.png b/test/reference/large-font.argb32.ref.png
new file mode 100644
index 00000000..503061a9
--- /dev/null
+++ b/test/reference/large-font.argb32.ref.png
Binary files differ
diff --git a/test/reference/large-font.rgb24.ref.png b/test/reference/large-font.rgb24.ref.png
new file mode 100644
index 00000000..503061a9
--- /dev/null
+++ b/test/reference/large-font.rgb24.ref.png
Binary files differ
diff --git a/test/reference/large-source-roi.argb32.ref.png b/test/reference/large-source-roi.argb32.ref.png
new file mode 100644
index 00000000..216a065e
--- /dev/null
+++ b/test/reference/large-source-roi.argb32.ref.png
Binary files differ
diff --git a/test/reference/large-source-roi.rgb24.ref.png b/test/reference/large-source-roi.rgb24.ref.png
new file mode 100644
index 00000000..216a065e
--- /dev/null
+++ b/test/reference/large-source-roi.rgb24.ref.png
Binary files differ
diff --git a/test/reference/large-source.argb32.ref.png b/test/reference/large-source.argb32.ref.png
new file mode 100644
index 00000000..a54455fb
--- /dev/null
+++ b/test/reference/large-source.argb32.ref.png
Binary files differ
diff --git a/test/reference/large-source.rgb24.ref.png b/test/reference/large-source.rgb24.ref.png
new file mode 100644
index 00000000..a54455fb
--- /dev/null
+++ b/test/reference/large-source.rgb24.ref.png
Binary files differ
diff --git a/test/reference/large-twin-antialias-mixed.argb32.ref.png b/test/reference/large-twin-antialias-mixed.argb32.ref.png
new file mode 100644
index 00000000..ace463b1
--- /dev/null
+++ b/test/reference/large-twin-antialias-mixed.argb32.ref.png
Binary files differ
diff --git a/test/reference/large-twin-antialias-mixed.rgb24.ref.png b/test/reference/large-twin-antialias-mixed.rgb24.ref.png
new file mode 100644
index 00000000..ace463b1
--- /dev/null
+++ b/test/reference/large-twin-antialias-mixed.rgb24.ref.png
Binary files differ
diff --git a/test/reference/leaky-dash.argb32.ref.png b/test/reference/leaky-dash.argb32.ref.png
new file mode 100644
index 00000000..0973ece7
--- /dev/null
+++ b/test/reference/leaky-dash.argb32.ref.png
Binary files differ
diff --git a/test/reference/leaky-dash.rgb24.ref.png b/test/reference/leaky-dash.rgb24.ref.png
new file mode 100644
index 00000000..0973ece7
--- /dev/null
+++ b/test/reference/leaky-dash.rgb24.ref.png
Binary files differ
diff --git a/test/reference/leaky-dashed-rectangle.argb32.ref.png b/test/reference/leaky-dashed-rectangle.argb32.ref.png
new file mode 100644
index 00000000..05f45846
--- /dev/null
+++ b/test/reference/leaky-dashed-rectangle.argb32.ref.png
Binary files differ
diff --git a/test/reference/leaky-dashed-rectangle.rgb24.ref.png b/test/reference/leaky-dashed-rectangle.rgb24.ref.png
new file mode 100644
index 00000000..05f45846
--- /dev/null
+++ b/test/reference/leaky-dashed-rectangle.rgb24.ref.png
Binary files differ
diff --git a/test/reference/leaky-dashed-stroke.argb32.ref.png b/test/reference/leaky-dashed-stroke.argb32.ref.png
new file mode 100644
index 00000000..ae64dae4
--- /dev/null
+++ b/test/reference/leaky-dashed-stroke.argb32.ref.png
Binary files differ
diff --git a/test/reference/leaky-dashed-stroke.rgb24.ref.png b/test/reference/leaky-dashed-stroke.rgb24.ref.png
new file mode 100644
index 00000000..ae64dae4
--- /dev/null
+++ b/test/reference/leaky-dashed-stroke.rgb24.ref.png
Binary files differ
diff --git a/test/reference/leaky-polygon.argb32.ref.png b/test/reference/leaky-polygon.argb32.ref.png
new file mode 100644
index 00000000..d2a06a3c
--- /dev/null
+++ b/test/reference/leaky-polygon.argb32.ref.png
Binary files differ
diff --git a/test/reference/leaky-polygon.rgb24.ref.png b/test/reference/leaky-polygon.rgb24.ref.png
new file mode 100644
index 00000000..d2a06a3c
--- /dev/null
+++ b/test/reference/leaky-polygon.rgb24.ref.png
Binary files differ
diff --git a/test/reference/line-width-large-overlap-flipped.argb32.ref.png b/test/reference/line-width-large-overlap-flipped.argb32.ref.png
new file mode 100644
index 00000000..3c3464be
--- /dev/null
+++ b/test/reference/line-width-large-overlap-flipped.argb32.ref.png
Binary files differ
diff --git a/test/reference/line-width-large-overlap-flipped.rgb24.ref.png b/test/reference/line-width-large-overlap-flipped.rgb24.ref.png
new file mode 100644
index 00000000..3c3464be
--- /dev/null
+++ b/test/reference/line-width-large-overlap-flipped.rgb24.ref.png
Binary files differ
diff --git a/test/reference/line-width-large-overlap-flopped.argb32.ref.png b/test/reference/line-width-large-overlap-flopped.argb32.ref.png
new file mode 100644
index 00000000..3c3464be
--- /dev/null
+++ b/test/reference/line-width-large-overlap-flopped.argb32.ref.png
Binary files differ
diff --git a/test/reference/line-width-large-overlap-flopped.rgb24.ref.png b/test/reference/line-width-large-overlap-flopped.rgb24.ref.png
new file mode 100644
index 00000000..3c3464be
--- /dev/null
+++ b/test/reference/line-width-large-overlap-flopped.rgb24.ref.png
Binary files differ
diff --git a/test/reference/line-width-large-overlap-offset.argb32.ref.png b/test/reference/line-width-large-overlap-offset.argb32.ref.png
new file mode 100644
index 00000000..3c3464be
--- /dev/null
+++ b/test/reference/line-width-large-overlap-offset.argb32.ref.png
Binary files differ
diff --git a/test/reference/line-width-large-overlap-offset.rgb24.ref.png b/test/reference/line-width-large-overlap-offset.rgb24.ref.png
new file mode 100644
index 00000000..3c3464be
--- /dev/null
+++ b/test/reference/line-width-large-overlap-offset.rgb24.ref.png
Binary files differ
diff --git a/test/reference/line-width-large-overlap-rotated.argb32.ref.png b/test/reference/line-width-large-overlap-rotated.argb32.ref.png
new file mode 100644
index 00000000..35dca5cf
--- /dev/null
+++ b/test/reference/line-width-large-overlap-rotated.argb32.ref.png
Binary files differ
diff --git a/test/reference/line-width-large-overlap-rotated.rgb24.ref.png b/test/reference/line-width-large-overlap-rotated.rgb24.ref.png
new file mode 100644
index 00000000..35dca5cf
--- /dev/null
+++ b/test/reference/line-width-large-overlap-rotated.rgb24.ref.png
Binary files differ
diff --git a/test/reference/line-width-large-overlap.argb32.ref.png b/test/reference/line-width-large-overlap.argb32.ref.png
new file mode 100644
index 00000000..3c3464be
--- /dev/null
+++ b/test/reference/line-width-large-overlap.argb32.ref.png
Binary files differ
diff --git a/test/reference/line-width-large-overlap.rgb24.ref.png b/test/reference/line-width-large-overlap.rgb24.ref.png
new file mode 100644
index 00000000..3c3464be
--- /dev/null
+++ b/test/reference/line-width-large-overlap.rgb24.ref.png
Binary files differ
diff --git a/test/reference/line-width-overlap-flipped.argb32.ref.png b/test/reference/line-width-overlap-flipped.argb32.ref.png
new file mode 100644
index 00000000..13d70c8f
--- /dev/null
+++ b/test/reference/line-width-overlap-flipped.argb32.ref.png
Binary files differ
diff --git a/test/reference/line-width-overlap-flipped.rgb24.ref.png b/test/reference/line-width-overlap-flipped.rgb24.ref.png
new file mode 100644
index 00000000..13d70c8f
--- /dev/null
+++ b/test/reference/line-width-overlap-flipped.rgb24.ref.png
Binary files differ
diff --git a/test/reference/line-width-overlap-flopped.argb32.ref.png b/test/reference/line-width-overlap-flopped.argb32.ref.png
new file mode 100644
index 00000000..13d70c8f
--- /dev/null
+++ b/test/reference/line-width-overlap-flopped.argb32.ref.png
Binary files differ
diff --git a/test/reference/line-width-overlap-flopped.rgb24.ref.png b/test/reference/line-width-overlap-flopped.rgb24.ref.png
new file mode 100644
index 00000000..13d70c8f
--- /dev/null
+++ b/test/reference/line-width-overlap-flopped.rgb24.ref.png
Binary files differ
diff --git a/test/reference/line-width-overlap-offset.argb32.ref.png b/test/reference/line-width-overlap-offset.argb32.ref.png
new file mode 100644
index 00000000..eafa50b1
--- /dev/null
+++ b/test/reference/line-width-overlap-offset.argb32.ref.png
Binary files differ
diff --git a/test/reference/line-width-overlap-offset.rgb24.ref.png b/test/reference/line-width-overlap-offset.rgb24.ref.png
new file mode 100644
index 00000000..eafa50b1
--- /dev/null
+++ b/test/reference/line-width-overlap-offset.rgb24.ref.png
Binary files differ
diff --git a/test/reference/line-width-overlap-rotated.argb32.ref.png b/test/reference/line-width-overlap-rotated.argb32.ref.png
new file mode 100644
index 00000000..619a5938
--- /dev/null
+++ b/test/reference/line-width-overlap-rotated.argb32.ref.png
Binary files differ
diff --git a/test/reference/line-width-overlap-rotated.rgb24.ref.png b/test/reference/line-width-overlap-rotated.rgb24.ref.png
new file mode 100644
index 00000000..619a5938
--- /dev/null
+++ b/test/reference/line-width-overlap-rotated.rgb24.ref.png
Binary files differ
diff --git a/test/reference/line-width-overlap.argb32.ref.png b/test/reference/line-width-overlap.argb32.ref.png
new file mode 100644
index 00000000..13d70c8f
--- /dev/null
+++ b/test/reference/line-width-overlap.argb32.ref.png
Binary files differ
diff --git a/test/reference/line-width-overlap.rgb24.ref.png b/test/reference/line-width-overlap.rgb24.ref.png
new file mode 100644
index 00000000..13d70c8f
--- /dev/null
+++ b/test/reference/line-width-overlap.rgb24.ref.png
Binary files differ
diff --git a/test/reference/line-width-scale.argb32.ref.png b/test/reference/line-width-scale.argb32.ref.png
new file mode 100644
index 00000000..5767bc7d
--- /dev/null
+++ b/test/reference/line-width-scale.argb32.ref.png
Binary files differ
diff --git a/test/reference/line-width-scale.rgb24.ref.png b/test/reference/line-width-scale.rgb24.ref.png
new file mode 100644
index 00000000..5767bc7d
--- /dev/null
+++ b/test/reference/line-width-scale.rgb24.ref.png
Binary files differ
diff --git a/test/reference/line-width-tolerance.argb32.ref.png b/test/reference/line-width-tolerance.argb32.ref.png
new file mode 100644
index 00000000..9c4d4398
--- /dev/null
+++ b/test/reference/line-width-tolerance.argb32.ref.png
Binary files differ
diff --git a/test/reference/line-width-tolerance.rgb24.ref.png b/test/reference/line-width-tolerance.rgb24.ref.png
new file mode 100644
index 00000000..9c4d4398
--- /dev/null
+++ b/test/reference/line-width-tolerance.rgb24.ref.png
Binary files differ
diff --git a/test/reference/line-width.argb32.ref.png b/test/reference/line-width.argb32.ref.png
new file mode 100644
index 00000000..2a788285
--- /dev/null
+++ b/test/reference/line-width.argb32.ref.png
Binary files differ
diff --git a/test/reference/line-width.rgb24.ref.png b/test/reference/line-width.rgb24.ref.png
new file mode 100644
index 00000000..2a788285
--- /dev/null
+++ b/test/reference/line-width.rgb24.ref.png
Binary files differ
diff --git a/test/reference/linear-gradient-extend.argb32.ref.png b/test/reference/linear-gradient-extend.argb32.ref.png
new file mode 100644
index 00000000..79ce747d
--- /dev/null
+++ b/test/reference/linear-gradient-extend.argb32.ref.png
Binary files differ
diff --git a/test/reference/linear-gradient-extend.rgb24.ref.png b/test/reference/linear-gradient-extend.rgb24.ref.png
new file mode 100644
index 00000000..79ce747d
--- /dev/null
+++ b/test/reference/linear-gradient-extend.rgb24.ref.png
Binary files differ
diff --git a/test/reference/linear-gradient-large.argb32.ref.png b/test/reference/linear-gradient-large.argb32.ref.png
new file mode 100644
index 00000000..f1f37ab4
--- /dev/null
+++ b/test/reference/linear-gradient-large.argb32.ref.png
Binary files differ
diff --git a/test/reference/linear-gradient-large.rgb24.ref.png b/test/reference/linear-gradient-large.rgb24.ref.png
new file mode 100644
index 00000000..f1f37ab4
--- /dev/null
+++ b/test/reference/linear-gradient-large.rgb24.ref.png
Binary files differ
diff --git a/test/reference/linear-gradient-reflect.argb32.ref.png b/test/reference/linear-gradient-reflect.argb32.ref.png
new file mode 100644
index 00000000..b68dccb5
--- /dev/null
+++ b/test/reference/linear-gradient-reflect.argb32.ref.png
Binary files differ
diff --git a/test/reference/linear-gradient-reflect.rgb24.ref.png b/test/reference/linear-gradient-reflect.rgb24.ref.png
new file mode 100644
index 00000000..b68dccb5
--- /dev/null
+++ b/test/reference/linear-gradient-reflect.rgb24.ref.png
Binary files differ
diff --git a/test/reference/linear-gradient-subset.argb32.ref.png b/test/reference/linear-gradient-subset.argb32.ref.png
new file mode 100644
index 00000000..3d30d0ab
--- /dev/null
+++ b/test/reference/linear-gradient-subset.argb32.ref.png
Binary files differ
diff --git a/test/reference/linear-gradient-subset.rgb24.ref.png b/test/reference/linear-gradient-subset.rgb24.ref.png
new file mode 100644
index 00000000..3d30d0ab
--- /dev/null
+++ b/test/reference/linear-gradient-subset.rgb24.ref.png
Binary files differ
diff --git a/test/reference/linear-gradient.argb32.ref.png b/test/reference/linear-gradient.argb32.ref.png
new file mode 100644
index 00000000..3f78c52e
--- /dev/null
+++ b/test/reference/linear-gradient.argb32.ref.png
Binary files differ
diff --git a/test/reference/linear-gradient.rgb24.ref.png b/test/reference/linear-gradient.rgb24.ref.png
new file mode 100644
index 00000000..3f78c52e
--- /dev/null
+++ b/test/reference/linear-gradient.rgb24.ref.png
Binary files differ
diff --git a/test/reference/linear-uniform.argb32.ref.png b/test/reference/linear-uniform.argb32.ref.png
new file mode 100644
index 00000000..94ca3361
--- /dev/null
+++ b/test/reference/linear-uniform.argb32.ref.png
Binary files differ
diff --git a/test/reference/linear-uniform.rgb24.ref.png b/test/reference/linear-uniform.rgb24.ref.png
new file mode 100644
index 00000000..94ca3361
--- /dev/null
+++ b/test/reference/linear-uniform.rgb24.ref.png
Binary files differ
diff --git a/test/reference/long-dashed-lines.argb32.ref.png b/test/reference/long-dashed-lines.argb32.ref.png
new file mode 100644
index 00000000..9c7208c1
--- /dev/null
+++ b/test/reference/long-dashed-lines.argb32.ref.png
Binary files differ
diff --git a/test/reference/long-dashed-lines.rgb24.ref.png b/test/reference/long-dashed-lines.rgb24.ref.png
new file mode 100644
index 00000000..9c7208c1
--- /dev/null
+++ b/test/reference/long-dashed-lines.rgb24.ref.png
Binary files differ
diff --git a/test/reference/map-all-to-image.argb32.ref.png b/test/reference/map-all-to-image.argb32.ref.png
new file mode 100644
index 00000000..c56d9698
--- /dev/null
+++ b/test/reference/map-all-to-image.argb32.ref.png
Binary files differ
diff --git a/test/reference/map-all-to-image.rgb24.ref.png b/test/reference/map-all-to-image.rgb24.ref.png
new file mode 100644
index 00000000..c56d9698
--- /dev/null
+++ b/test/reference/map-all-to-image.rgb24.ref.png
Binary files differ
diff --git a/test/reference/map-all-to-xlib-fallback.rgb24.ref.png b/test/reference/map-all-to-xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..c56d9698
--- /dev/null
+++ b/test/reference/map-all-to-xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/map-all-to-xlib-window.rgb24.ref.png b/test/reference/map-all-to-xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..c56d9698
--- /dev/null
+++ b/test/reference/map-all-to-xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/map-all-to-xlib.argb32.ref.png b/test/reference/map-all-to-xlib.argb32.ref.png
new file mode 100644
index 00000000..c56d9698
--- /dev/null
+++ b/test/reference/map-all-to-xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/map-all-to-xlib.rgb24.ref.png b/test/reference/map-all-to-xlib.rgb24.ref.png
new file mode 100644
index 00000000..c56d9698
--- /dev/null
+++ b/test/reference/map-all-to-xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/map-bit-to-image.argb32.ref.png b/test/reference/map-bit-to-image.argb32.ref.png
new file mode 100644
index 00000000..b42dcb62
--- /dev/null
+++ b/test/reference/map-bit-to-image.argb32.ref.png
Binary files differ
diff --git a/test/reference/map-bit-to-image.rgb24.ref.png b/test/reference/map-bit-to-image.rgb24.ref.png
new file mode 100644
index 00000000..b42dcb62
--- /dev/null
+++ b/test/reference/map-bit-to-image.rgb24.ref.png
Binary files differ
diff --git a/test/reference/map-bit-to-xlib-fallback.rgb24.ref.png b/test/reference/map-bit-to-xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..b42dcb62
--- /dev/null
+++ b/test/reference/map-bit-to-xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/map-bit-to-xlib-window.rgb24.ref.png b/test/reference/map-bit-to-xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..b42dcb62
--- /dev/null
+++ b/test/reference/map-bit-to-xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/map-bit-to-xlib.argb32.ref.png b/test/reference/map-bit-to-xlib.argb32.ref.png
new file mode 100644
index 00000000..b42dcb62
--- /dev/null
+++ b/test/reference/map-bit-to-xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/map-bit-to-xlib.rgb24.ref.png b/test/reference/map-bit-to-xlib.rgb24.ref.png
new file mode 100644
index 00000000..b42dcb62
--- /dev/null
+++ b/test/reference/map-bit-to-xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/map-to-image-fill.argb32.ref.png b/test/reference/map-to-image-fill.argb32.ref.png
new file mode 100644
index 00000000..c2893e0d
--- /dev/null
+++ b/test/reference/map-to-image-fill.argb32.ref.png
Binary files differ
diff --git a/test/reference/map-to-image-fill.rgb24.ref.png b/test/reference/map-to-image-fill.rgb24.ref.png
new file mode 100644
index 00000000..c2893e0d
--- /dev/null
+++ b/test/reference/map-to-image-fill.rgb24.ref.png
Binary files differ
diff --git a/test/reference/map-to-image-fill.xlib-fallback.rgb24.ref.png b/test/reference/map-to-image-fill.xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..c2893e0d
--- /dev/null
+++ b/test/reference/map-to-image-fill.xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/map-to-image-fill.xlib-window.rgb24.ref.png b/test/reference/map-to-image-fill.xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..c2893e0d
--- /dev/null
+++ b/test/reference/map-to-image-fill.xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/map-to-image-fill.xlib.argb32.ref.png b/test/reference/map-to-image-fill.xlib.argb32.ref.png
new file mode 100644
index 00000000..c2893e0d
--- /dev/null
+++ b/test/reference/map-to-image-fill.xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/map-to-image-fill.xlib.rgb24.ref.png b/test/reference/map-to-image-fill.xlib.rgb24.ref.png
new file mode 100644
index 00000000..c2893e0d
--- /dev/null
+++ b/test/reference/map-to-image-fill.xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/mask-alpha.argb32.ref.png b/test/reference/mask-alpha.argb32.ref.png
index 203b8d1c..20f06634 100644
--- a/test/reference/mask-alpha.argb32.ref.png
+++ b/test/reference/mask-alpha.argb32.ref.png
Binary files differ
diff --git a/test/reference/mask-alpha.rgb24.ref.png b/test/reference/mask-alpha.rgb24.ref.png
index 070ddf85..df7a0c19 100644
--- a/test/reference/mask-alpha.rgb24.ref.png
+++ b/test/reference/mask-alpha.rgb24.ref.png
Binary files differ
diff --git a/test/reference/mask-ctm.argb32.ref.png b/test/reference/mask-ctm.argb32.ref.png
new file mode 100644
index 00000000..07d903d1
--- /dev/null
+++ b/test/reference/mask-ctm.argb32.ref.png
Binary files differ
diff --git a/test/reference/mask-ctm.rgb24.ref.png b/test/reference/mask-ctm.rgb24.ref.png
index 266cb0d1..de3fa097 100644
--- a/test/reference/mask-ctm.rgb24.ref.png
+++ b/test/reference/mask-ctm.rgb24.ref.png
Binary files differ
diff --git a/test/reference/mask-surface-ctm.argb32.ref.png b/test/reference/mask-surface-ctm.argb32.ref.png
new file mode 100644
index 00000000..07d903d1
--- /dev/null
+++ b/test/reference/mask-surface-ctm.argb32.ref.png
Binary files differ
diff --git a/test/reference/mask-surface-ctm.rgb24.ref.png b/test/reference/mask-surface-ctm.rgb24.ref.png
index a2bdc611..de3fa097 100644
--- a/test/reference/mask-surface-ctm.rgb24.ref.png
+++ b/test/reference/mask-surface-ctm.rgb24.ref.png
Binary files differ
diff --git a/test/reference/mask-transformed-image.argb32.ref.png b/test/reference/mask-transformed-image.argb32.ref.png
new file mode 100644
index 00000000..af84b39d
--- /dev/null
+++ b/test/reference/mask-transformed-image.argb32.ref.png
Binary files differ
diff --git a/test/reference/mask-transformed-image.rgb24.ref.png b/test/reference/mask-transformed-image.rgb24.ref.png
new file mode 100644
index 00000000..af84b39d
--- /dev/null
+++ b/test/reference/mask-transformed-image.rgb24.ref.png
Binary files differ
diff --git a/test/reference/mask-transformed-similar.argb32.ref.png b/test/reference/mask-transformed-similar.argb32.ref.png
new file mode 100644
index 00000000..af84b39d
--- /dev/null
+++ b/test/reference/mask-transformed-similar.argb32.ref.png
Binary files differ
diff --git a/test/reference/mask-transformed-similar.rgb24.ref.png b/test/reference/mask-transformed-similar.rgb24.ref.png
new file mode 100644
index 00000000..af84b39d
--- /dev/null
+++ b/test/reference/mask-transformed-similar.rgb24.ref.png
Binary files differ
diff --git a/test/reference/mask-transformed-xlib-fallback.rgb24.ref.png b/test/reference/mask-transformed-xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..09eb43ae
--- /dev/null
+++ b/test/reference/mask-transformed-xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/mask-transformed-xlib-window.rgb24.ref.png b/test/reference/mask-transformed-xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..09eb43ae
--- /dev/null
+++ b/test/reference/mask-transformed-xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/mask-transformed-xlib.argb32.ref.png b/test/reference/mask-transformed-xlib.argb32.ref.png
new file mode 100644
index 00000000..09eb43ae
--- /dev/null
+++ b/test/reference/mask-transformed-xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/mask-transformed-xlib.rgb24.ref.png b/test/reference/mask-transformed-xlib.rgb24.ref.png
new file mode 100644
index 00000000..09eb43ae
--- /dev/null
+++ b/test/reference/mask-transformed-xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/mask.argb32.ref.png b/test/reference/mask.argb32.ref.png
index c6f28289..d965468f 100644
--- a/test/reference/mask.argb32.ref.png
+++ b/test/reference/mask.argb32.ref.png
Binary files differ
diff --git a/test/reference/mask.rgb24.ref.png b/test/reference/mask.rgb24.ref.png
index 7e78a9ac..0617ec25 100644
--- a/test/reference/mask.rgb24.ref.png
+++ b/test/reference/mask.rgb24.ref.png
Binary files differ
diff --git a/test/reference/mesh-pattern-accuracy.argb32.ref.png b/test/reference/mesh-pattern-accuracy.argb32.ref.png
new file mode 100644
index 00000000..dfc19ff4
--- /dev/null
+++ b/test/reference/mesh-pattern-accuracy.argb32.ref.png
Binary files differ
diff --git a/test/reference/mesh-pattern-accuracy.rgb24.ref.png b/test/reference/mesh-pattern-accuracy.rgb24.ref.png
new file mode 100644
index 00000000..dfc19ff4
--- /dev/null
+++ b/test/reference/mesh-pattern-accuracy.rgb24.ref.png
Binary files differ
diff --git a/test/reference/mesh-pattern-conical.argb32.ref.png b/test/reference/mesh-pattern-conical.argb32.ref.png
new file mode 100644
index 00000000..f5dc21dc
--- /dev/null
+++ b/test/reference/mesh-pattern-conical.argb32.ref.png
Binary files differ
diff --git a/test/reference/mesh-pattern-conical.rgb24.ref.png b/test/reference/mesh-pattern-conical.rgb24.ref.png
new file mode 100644
index 00000000..f5dc21dc
--- /dev/null
+++ b/test/reference/mesh-pattern-conical.rgb24.ref.png
Binary files differ
diff --git a/test/reference/mesh-pattern-control-points.argb32.ref.png b/test/reference/mesh-pattern-control-points.argb32.ref.png
new file mode 100644
index 00000000..841fc3ef
--- /dev/null
+++ b/test/reference/mesh-pattern-control-points.argb32.ref.png
Binary files differ
diff --git a/test/reference/mesh-pattern-control-points.rgb24.ref.png b/test/reference/mesh-pattern-control-points.rgb24.ref.png
new file mode 100644
index 00000000..841fc3ef
--- /dev/null
+++ b/test/reference/mesh-pattern-control-points.rgb24.ref.png
Binary files differ
diff --git a/test/reference/mesh-pattern-fold.argb32.ref.png b/test/reference/mesh-pattern-fold.argb32.ref.png
new file mode 100644
index 00000000..6275b82d
--- /dev/null
+++ b/test/reference/mesh-pattern-fold.argb32.ref.png
Binary files differ
diff --git a/test/reference/mesh-pattern-fold.rgb24.ref.png b/test/reference/mesh-pattern-fold.rgb24.ref.png
new file mode 100644
index 00000000..6275b82d
--- /dev/null
+++ b/test/reference/mesh-pattern-fold.rgb24.ref.png
Binary files differ
diff --git a/test/reference/mesh-pattern-overlap.argb32.ref.png b/test/reference/mesh-pattern-overlap.argb32.ref.png
new file mode 100644
index 00000000..1394c9ec
--- /dev/null
+++ b/test/reference/mesh-pattern-overlap.argb32.ref.png
Binary files differ
diff --git a/test/reference/mesh-pattern-overlap.rgb24.ref.png b/test/reference/mesh-pattern-overlap.rgb24.ref.png
new file mode 100644
index 00000000..1394c9ec
--- /dev/null
+++ b/test/reference/mesh-pattern-overlap.rgb24.ref.png
Binary files differ
diff --git a/test/reference/mesh-pattern-transformed.argb32.ref.png b/test/reference/mesh-pattern-transformed.argb32.ref.png
new file mode 100644
index 00000000..9aa482f5
--- /dev/null
+++ b/test/reference/mesh-pattern-transformed.argb32.ref.png
Binary files differ
diff --git a/test/reference/mesh-pattern-transformed.rgb24.ref.png b/test/reference/mesh-pattern-transformed.rgb24.ref.png
new file mode 100644
index 00000000..9aa482f5
--- /dev/null
+++ b/test/reference/mesh-pattern-transformed.rgb24.ref.png
Binary files differ
diff --git a/test/reference/mesh-pattern.argb32.ref.png b/test/reference/mesh-pattern.argb32.ref.png
new file mode 100644
index 00000000..1f76639f
--- /dev/null
+++ b/test/reference/mesh-pattern.argb32.ref.png
Binary files differ
diff --git a/test/reference/mesh-pattern.rgb24.ref.png b/test/reference/mesh-pattern.rgb24.ref.png
new file mode 100644
index 00000000..1f76639f
--- /dev/null
+++ b/test/reference/mesh-pattern.rgb24.ref.png
Binary files differ
diff --git a/test/reference/mime-data.argb32.ref.png b/test/reference/mime-data.argb32.ref.png
new file mode 100644
index 00000000..3a912c54
--- /dev/null
+++ b/test/reference/mime-data.argb32.ref.png
Binary files differ
diff --git a/test/reference/mime-data.rgb24.ref.png b/test/reference/mime-data.rgb24.ref.png
new file mode 100644
index 00000000..3a912c54
--- /dev/null
+++ b/test/reference/mime-data.rgb24.ref.png
Binary files differ
diff --git a/test/reference/miter-precision.argb32.ref.png b/test/reference/miter-precision.argb32.ref.png
new file mode 100644
index 00000000..aa8e2292
--- /dev/null
+++ b/test/reference/miter-precision.argb32.ref.png
Binary files differ
diff --git a/test/reference/miter-precision.rgb24.ref.png b/test/reference/miter-precision.rgb24.ref.png
new file mode 100644
index 00000000..aa8e2292
--- /dev/null
+++ b/test/reference/miter-precision.rgb24.ref.png
Binary files differ
diff --git a/test/reference/move-to-show-surface.argb32.ref.png b/test/reference/move-to-show-surface.argb32.ref.png
new file mode 100644
index 00000000..0a145d91
--- /dev/null
+++ b/test/reference/move-to-show-surface.argb32.ref.png
Binary files differ
diff --git a/test/reference/move-to-show-surface.rgb24.ref.png b/test/reference/move-to-show-surface.rgb24.ref.png
new file mode 100644
index 00000000..0a145d91
--- /dev/null
+++ b/test/reference/move-to-show-surface.rgb24.ref.png
Binary files differ
diff --git a/test/reference/negative-stride-image.argb32.ref.png b/test/reference/negative-stride-image.argb32.ref.png
new file mode 100644
index 00000000..44284566
--- /dev/null
+++ b/test/reference/negative-stride-image.argb32.ref.png
Binary files differ
diff --git a/test/reference/negative-stride-image.rgb24.ref.png b/test/reference/negative-stride-image.rgb24.ref.png
new file mode 100644
index 00000000..44284566
--- /dev/null
+++ b/test/reference/negative-stride-image.rgb24.ref.png
Binary files differ
diff --git a/test/reference/new-sub-path.argb32.ref.png b/test/reference/new-sub-path.argb32.ref.png
index aec47e3c..87a6c91c 100644
--- a/test/reference/new-sub-path.argb32.ref.png
+++ b/test/reference/new-sub-path.argb32.ref.png
Binary files differ
diff --git a/test/reference/new-sub-path.rgb24.ref.png b/test/reference/new-sub-path.rgb24.ref.png
index cdc270ce..eb297bee 100644
--- a/test/reference/new-sub-path.rgb24.ref.png
+++ b/test/reference/new-sub-path.rgb24.ref.png
Binary files differ
diff --git a/test/reference/nil-surface.argb32.ref.png b/test/reference/nil-surface.argb32.ref.png
new file mode 100644
index 00000000..50e35a24
--- /dev/null
+++ b/test/reference/nil-surface.argb32.ref.png
Binary files differ
diff --git a/test/reference/nil-surface.rgb24.ref.png b/test/reference/nil-surface.rgb24.ref.png
index 97b2cfaa..7d5589c1 100644
--- a/test/reference/nil-surface.rgb24.ref.png
+++ b/test/reference/nil-surface.rgb24.ref.png
Binary files differ
diff --git a/test/reference/operator-alpha-alpha.argb32.ref.png b/test/reference/operator-alpha-alpha.argb32.ref.png
new file mode 100644
index 00000000..695d0d01
--- /dev/null
+++ b/test/reference/operator-alpha-alpha.argb32.ref.png
Binary files differ
diff --git a/test/reference/operator-alpha-alpha.rgb24.ref.png b/test/reference/operator-alpha-alpha.rgb24.ref.png
new file mode 100644
index 00000000..695d0d01
--- /dev/null
+++ b/test/reference/operator-alpha-alpha.rgb24.ref.png
Binary files differ
diff --git a/test/reference/operator-alpha.argb32.ref.png b/test/reference/operator-alpha.argb32.ref.png
new file mode 100644
index 00000000..b4f3b71f
--- /dev/null
+++ b/test/reference/operator-alpha.argb32.ref.png
Binary files differ
diff --git a/test/reference/operator-alpha.rgb24.ref.png b/test/reference/operator-alpha.rgb24.ref.png
index 3263550e..bc7be3ae 100644
--- a/test/reference/operator-alpha.rgb24.ref.png
+++ b/test/reference/operator-alpha.rgb24.ref.png
Binary files differ
diff --git a/test/reference/operator-clear.argb32.ref.png b/test/reference/operator-clear.argb32.ref.png
index 26297404..41f63bdb 100644
--- a/test/reference/operator-clear.argb32.ref.png
+++ b/test/reference/operator-clear.argb32.ref.png
Binary files differ
diff --git a/test/reference/operator-clear.rgb24.ref.png b/test/reference/operator-clear.rgb24.ref.png
index 0a730a13..3d58ab34 100644
--- a/test/reference/operator-clear.rgb24.ref.png
+++ b/test/reference/operator-clear.rgb24.ref.png
Binary files differ
diff --git a/test/reference/operator-source.argb32.ref.png b/test/reference/operator-source.argb32.ref.png
index 31615f4e..49011eda 100644
--- a/test/reference/operator-source.argb32.ref.png
+++ b/test/reference/operator-source.argb32.ref.png
Binary files differ
diff --git a/test/reference/operator-source.rgb24.ref.png b/test/reference/operator-source.rgb24.ref.png
index c876aba8..18aa82bb 100644
--- a/test/reference/operator-source.rgb24.ref.png
+++ b/test/reference/operator-source.rgb24.ref.png
Binary files differ
diff --git a/test/reference/operator.argb32.ref.png b/test/reference/operator.argb32.ref.png
new file mode 100644
index 00000000..34fce987
--- /dev/null
+++ b/test/reference/operator.argb32.ref.png
Binary files differ
diff --git a/test/reference/operator.rgb24.ref.png b/test/reference/operator.rgb24.ref.png
index 3a6309c6..aa6103df 100644
--- a/test/reference/operator.rgb24.ref.png
+++ b/test/reference/operator.rgb24.ref.png
Binary files differ
diff --git a/test/reference/over-above-source.argb32.ref.png b/test/reference/over-above-source.argb32.ref.png
new file mode 100644
index 00000000..8c2ce1d3
--- /dev/null
+++ b/test/reference/over-above-source.argb32.ref.png
Binary files differ
diff --git a/test/reference/over-above-source.rgb24.ref.png b/test/reference/over-above-source.rgb24.ref.png
index ec37387e..240de27e 100644
--- a/test/reference/over-above-source.rgb24.ref.png
+++ b/test/reference/over-above-source.rgb24.ref.png
Binary files differ
diff --git a/test/reference/over-around-source.argb32.ref.png b/test/reference/over-around-source.argb32.ref.png
new file mode 100644
index 00000000..e045a62a
--- /dev/null
+++ b/test/reference/over-around-source.argb32.ref.png
Binary files differ
diff --git a/test/reference/over-around-source.rgb24.ref.png b/test/reference/over-around-source.rgb24.ref.png
index 717f6e5b..fc464497 100644
--- a/test/reference/over-around-source.rgb24.ref.png
+++ b/test/reference/over-around-source.rgb24.ref.png
Binary files differ
diff --git a/test/reference/over-below-source.argb32.ref.png b/test/reference/over-below-source.argb32.ref.png
new file mode 100644
index 00000000..9079c2c6
--- /dev/null
+++ b/test/reference/over-below-source.argb32.ref.png
Binary files differ
diff --git a/test/reference/over-below-source.rgb24.ref.png b/test/reference/over-below-source.rgb24.ref.png
index 74176fa1..c90bdc21 100644
--- a/test/reference/over-below-source.rgb24.ref.png
+++ b/test/reference/over-below-source.rgb24.ref.png
Binary files differ
diff --git a/test/reference/over-between-source.argb32.ref.png b/test/reference/over-between-source.argb32.ref.png
new file mode 100644
index 00000000..d4ef2aba
--- /dev/null
+++ b/test/reference/over-between-source.argb32.ref.png
Binary files differ
diff --git a/test/reference/over-between-source.rgb24.ref.png b/test/reference/over-between-source.rgb24.ref.png
index 4cc7d8f0..fa0f8d16 100644
--- a/test/reference/over-between-source.rgb24.ref.png
+++ b/test/reference/over-between-source.rgb24.ref.png
Binary files differ
diff --git a/test/reference/overlapping-boxes.argb32.ref.png b/test/reference/overlapping-boxes.argb32.ref.png
index 1c684381..c8161c0a 100644
--- a/test/reference/overlapping-boxes.argb32.ref.png
+++ b/test/reference/overlapping-boxes.argb32.ref.png
Binary files differ
diff --git a/test/reference/overlapping-boxes.rgb24.ref.png b/test/reference/overlapping-boxes.rgb24.ref.png
index 0edeafa0..83ca3fa6 100644
--- a/test/reference/overlapping-boxes.rgb24.ref.png
+++ b/test/reference/overlapping-boxes.rgb24.ref.png
Binary files differ
diff --git a/test/reference/overlapping-dash-caps.argb32.ref.png b/test/reference/overlapping-dash-caps.argb32.ref.png
new file mode 100644
index 00000000..367d6835
--- /dev/null
+++ b/test/reference/overlapping-dash-caps.argb32.ref.png
Binary files differ
diff --git a/test/reference/overlapping-dash-caps.rgb24.ref.png b/test/reference/overlapping-dash-caps.rgb24.ref.png
new file mode 100644
index 00000000..367d6835
--- /dev/null
+++ b/test/reference/overlapping-dash-caps.rgb24.ref.png
Binary files differ
diff --git a/test/reference/overlapping-glyphs.argb32.ref.png b/test/reference/overlapping-glyphs.argb32.ref.png
index 8f6d383b..4ec4ee54 100644
--- a/test/reference/overlapping-glyphs.argb32.ref.png
+++ b/test/reference/overlapping-glyphs.argb32.ref.png
Binary files differ
diff --git a/test/reference/overlapping-glyphs.rgb24.ref.png b/test/reference/overlapping-glyphs.rgb24.ref.png
index eea57b21..5217c157 100644
--- a/test/reference/overlapping-glyphs.rgb24.ref.png
+++ b/test/reference/overlapping-glyphs.rgb24.ref.png
Binary files differ
diff --git a/test/reference/paint-clip-fill-aa.argb32.ref.png b/test/reference/paint-clip-fill-aa.argb32.ref.png
new file mode 100644
index 00000000..768322a3
--- /dev/null
+++ b/test/reference/paint-clip-fill-aa.argb32.ref.png
Binary files differ
diff --git a/test/reference/paint-clip-fill-aa.rgb24.ref.png b/test/reference/paint-clip-fill-aa.rgb24.ref.png
new file mode 100644
index 00000000..768322a3
--- /dev/null
+++ b/test/reference/paint-clip-fill-aa.rgb24.ref.png
Binary files differ
diff --git a/test/reference/paint-clip-fill-mono.argb32.ref.png b/test/reference/paint-clip-fill-mono.argb32.ref.png
new file mode 100644
index 00000000..768322a3
--- /dev/null
+++ b/test/reference/paint-clip-fill-mono.argb32.ref.png
Binary files differ
diff --git a/test/reference/paint-clip-fill-mono.rgb24.ref.png b/test/reference/paint-clip-fill-mono.rgb24.ref.png
new file mode 100644
index 00000000..768322a3
--- /dev/null
+++ b/test/reference/paint-clip-fill-mono.rgb24.ref.png
Binary files differ
diff --git a/test/reference/paint-repeat.argb32.ref.png b/test/reference/paint-repeat.argb32.ref.png
new file mode 100644
index 00000000..8cdd9b4b
--- /dev/null
+++ b/test/reference/paint-repeat.argb32.ref.png
Binary files differ
diff --git a/test/reference/paint-repeat.rgb24.ref.png b/test/reference/paint-repeat.rgb24.ref.png
new file mode 100644
index 00000000..8cdd9b4b
--- /dev/null
+++ b/test/reference/paint-repeat.rgb24.ref.png
Binary files differ
diff --git a/test/reference/paint-source-alpha.argb32.ref.png b/test/reference/paint-source-alpha.argb32.ref.png
new file mode 100644
index 00000000..65d9c179
--- /dev/null
+++ b/test/reference/paint-source-alpha.argb32.ref.png
Binary files differ
diff --git a/test/reference/paint-source-alpha.rgb24.ref.png b/test/reference/paint-source-alpha.rgb24.ref.png
new file mode 100644
index 00000000..65d9c179
--- /dev/null
+++ b/test/reference/paint-source-alpha.rgb24.ref.png
Binary files differ
diff --git a/test/reference/paint-with-alpha-clip-mask.argb32.ref.png b/test/reference/paint-with-alpha-clip-mask.argb32.ref.png
new file mode 100644
index 00000000..50546727
--- /dev/null
+++ b/test/reference/paint-with-alpha-clip-mask.argb32.ref.png
Binary files differ
diff --git a/test/reference/paint-with-alpha-clip-mask.rgb24.ref.png b/test/reference/paint-with-alpha-clip-mask.rgb24.ref.png
new file mode 100644
index 00000000..50546727
--- /dev/null
+++ b/test/reference/paint-with-alpha-clip-mask.rgb24.ref.png
Binary files differ
diff --git a/test/reference/paint-with-alpha-clip.argb32.ref.png b/test/reference/paint-with-alpha-clip.argb32.ref.png
new file mode 100644
index 00000000..4bad4e8c
--- /dev/null
+++ b/test/reference/paint-with-alpha-clip.argb32.ref.png
Binary files differ
diff --git a/test/reference/paint-with-alpha-clip.rgb24.ref.png b/test/reference/paint-with-alpha-clip.rgb24.ref.png
new file mode 100644
index 00000000..4bad4e8c
--- /dev/null
+++ b/test/reference/paint-with-alpha-clip.rgb24.ref.png
Binary files differ
diff --git a/test/reference/paint-with-alpha-solid-clip.argb32.ref.png b/test/reference/paint-with-alpha-solid-clip.argb32.ref.png
new file mode 100644
index 00000000..59d226d1
--- /dev/null
+++ b/test/reference/paint-with-alpha-solid-clip.argb32.ref.png
Binary files differ
diff --git a/test/reference/paint-with-alpha-solid-clip.rgb24.ref.png b/test/reference/paint-with-alpha-solid-clip.rgb24.ref.png
new file mode 100644
index 00000000..59d226d1
--- /dev/null
+++ b/test/reference/paint-with-alpha-solid-clip.rgb24.ref.png
Binary files differ
diff --git a/test/reference/paint-with-alpha.argb32.ref.png b/test/reference/paint-with-alpha.argb32.ref.png
new file mode 100644
index 00000000..65d9c179
--- /dev/null
+++ b/test/reference/paint-with-alpha.argb32.ref.png
Binary files differ
diff --git a/test/reference/paint-with-alpha.rgb24.ref.png b/test/reference/paint-with-alpha.rgb24.ref.png
new file mode 100644
index 00000000..65d9c179
--- /dev/null
+++ b/test/reference/paint-with-alpha.rgb24.ref.png
Binary files differ
diff --git a/test/reference/paint.argb32.ref.png b/test/reference/paint.argb32.ref.png
new file mode 100644
index 00000000..22cc7a1a
--- /dev/null
+++ b/test/reference/paint.argb32.ref.png
Binary files differ
diff --git a/test/reference/paint.rgb24.ref.png b/test/reference/paint.rgb24.ref.png
new file mode 100644
index 00000000..22cc7a1a
--- /dev/null
+++ b/test/reference/paint.rgb24.ref.png
Binary files differ
diff --git a/test/reference/partial-clip-text-bottom.argb32.ref.png b/test/reference/partial-clip-text-bottom.argb32.ref.png
new file mode 100644
index 00000000..6a299d48
--- /dev/null
+++ b/test/reference/partial-clip-text-bottom.argb32.ref.png
Binary files differ
diff --git a/test/reference/partial-clip-text-bottom.rgb24.ref.png b/test/reference/partial-clip-text-bottom.rgb24.ref.png
new file mode 100644
index 00000000..6a299d48
--- /dev/null
+++ b/test/reference/partial-clip-text-bottom.rgb24.ref.png
Binary files differ
diff --git a/test/reference/partial-clip-text-left.argb32.ref.png b/test/reference/partial-clip-text-left.argb32.ref.png
new file mode 100644
index 00000000..54a1a858
--- /dev/null
+++ b/test/reference/partial-clip-text-left.argb32.ref.png
Binary files differ
diff --git a/test/reference/partial-clip-text-left.rgb24.ref.png b/test/reference/partial-clip-text-left.rgb24.ref.png
new file mode 100644
index 00000000..54a1a858
--- /dev/null
+++ b/test/reference/partial-clip-text-left.rgb24.ref.png
Binary files differ
diff --git a/test/reference/partial-clip-text-right.argb32.ref.png b/test/reference/partial-clip-text-right.argb32.ref.png
new file mode 100644
index 00000000..2fbdca03
--- /dev/null
+++ b/test/reference/partial-clip-text-right.argb32.ref.png
Binary files differ
diff --git a/test/reference/partial-clip-text-right.rgb24.ref.png b/test/reference/partial-clip-text-right.rgb24.ref.png
new file mode 100644
index 00000000..2fbdca03
--- /dev/null
+++ b/test/reference/partial-clip-text-right.rgb24.ref.png
Binary files differ
diff --git a/test/reference/partial-clip-text-top.argb32.ref.png b/test/reference/partial-clip-text-top.argb32.ref.png
new file mode 100644
index 00000000..d18475be
--- /dev/null
+++ b/test/reference/partial-clip-text-top.argb32.ref.png
Binary files differ
diff --git a/test/reference/partial-clip-text-top.rgb24.ref.png b/test/reference/partial-clip-text-top.rgb24.ref.png
new file mode 100644
index 00000000..d18475be
--- /dev/null
+++ b/test/reference/partial-clip-text-top.rgb24.ref.png
Binary files differ
diff --git a/test/reference/partial-coverage-half-reference.argb32.ref.png b/test/reference/partial-coverage-half-reference.argb32.ref.png
new file mode 100644
index 00000000..17f4ff06
--- /dev/null
+++ b/test/reference/partial-coverage-half-reference.argb32.ref.png
Binary files differ
diff --git a/test/reference/partial-coverage-half-reference.rgb24.ref.png b/test/reference/partial-coverage-half-reference.rgb24.ref.png
new file mode 100644
index 00000000..17f4ff06
--- /dev/null
+++ b/test/reference/partial-coverage-half-reference.rgb24.ref.png
Binary files differ
diff --git a/test/reference/partial-coverage-reference.argb32.ref.png b/test/reference/partial-coverage-reference.argb32.ref.png
new file mode 100644
index 00000000..9e4a6fe4
--- /dev/null
+++ b/test/reference/partial-coverage-reference.argb32.ref.png
Binary files differ
diff --git a/test/reference/partial-coverage-reference.rgb24.ref.png b/test/reference/partial-coverage-reference.rgb24.ref.png
new file mode 100644
index 00000000..9e4a6fe4
--- /dev/null
+++ b/test/reference/partial-coverage-reference.rgb24.ref.png
Binary files differ
diff --git a/test/reference/partial-coverage-three-quarter-reference.argb32.ref.png b/test/reference/partial-coverage-three-quarter-reference.argb32.ref.png
new file mode 100644
index 00000000..ea16dc4b
--- /dev/null
+++ b/test/reference/partial-coverage-three-quarter-reference.argb32.ref.png
Binary files differ
diff --git a/test/reference/partial-coverage-three-quarter-reference.rgb24.ref.png b/test/reference/partial-coverage-three-quarter-reference.rgb24.ref.png
new file mode 100644
index 00000000..ea16dc4b
--- /dev/null
+++ b/test/reference/partial-coverage-three-quarter-reference.rgb24.ref.png
Binary files differ
diff --git a/test/reference/pass-through.argb32.ref.png b/test/reference/pass-through.argb32.ref.png
new file mode 100644
index 00000000..058a1920
--- /dev/null
+++ b/test/reference/pass-through.argb32.ref.png
Binary files differ
diff --git a/test/reference/pass-through.rgb24.ref.png b/test/reference/pass-through.rgb24.ref.png
index b074ede2..1be631aa 100644
--- a/test/reference/pass-through.rgb24.ref.png
+++ b/test/reference/pass-through.rgb24.ref.png
Binary files differ
diff --git a/test/reference/path-append.argb32.ref.png b/test/reference/path-append.argb32.ref.png
new file mode 100644
index 00000000..f097af03
--- /dev/null
+++ b/test/reference/path-append.argb32.ref.png
Binary files differ
diff --git a/test/reference/path-append.rgb24.ref.png b/test/reference/path-append.rgb24.ref.png
new file mode 100644
index 00000000..f097af03
--- /dev/null
+++ b/test/reference/path-append.rgb24.ref.png
Binary files differ
diff --git a/test/reference/path-stroke-twice.argb32.ref.png b/test/reference/path-stroke-twice.argb32.ref.png
new file mode 100644
index 00000000..743c6ce5
--- /dev/null
+++ b/test/reference/path-stroke-twice.argb32.ref.png
Binary files differ
diff --git a/test/reference/path-stroke-twice.rgb24.ref.png b/test/reference/path-stroke-twice.rgb24.ref.png
new file mode 100644
index 00000000..743c6ce5
--- /dev/null
+++ b/test/reference/path-stroke-twice.rgb24.ref.png
Binary files differ
diff --git a/test/reference/pattern-getters.argb32.ref.png b/test/reference/pattern-getters.argb32.ref.png
new file mode 100644
index 00000000..3cc39a8b
--- /dev/null
+++ b/test/reference/pattern-getters.argb32.ref.png
Binary files differ
diff --git a/test/reference/pattern-getters.rgb24.ref.png b/test/reference/pattern-getters.rgb24.ref.png
new file mode 100644
index 00000000..3cc39a8b
--- /dev/null
+++ b/test/reference/pattern-getters.rgb24.ref.png
Binary files differ
diff --git a/test/reference/pixman-rotate.argb32.ref.png b/test/reference/pixman-rotate.argb32.ref.png
new file mode 100644
index 00000000..7e47a4d8
--- /dev/null
+++ b/test/reference/pixman-rotate.argb32.ref.png
Binary files differ
diff --git a/test/reference/pixman-rotate.rgb24.ref.png b/test/reference/pixman-rotate.rgb24.ref.png
index 60d9b1c3..397acbe7 100644
--- a/test/reference/pixman-rotate.rgb24.ref.png
+++ b/test/reference/pixman-rotate.rgb24.ref.png
Binary files differ
diff --git a/test/reference/pthread-same-source.argb32.ref.png b/test/reference/pthread-same-source.argb32.ref.png
new file mode 100644
index 00000000..cfb519d3
--- /dev/null
+++ b/test/reference/pthread-same-source.argb32.ref.png
Binary files differ
diff --git a/test/reference/pthread-same-source.rgb24.ref.png b/test/reference/pthread-same-source.rgb24.ref.png
new file mode 100644
index 00000000..cfb519d3
--- /dev/null
+++ b/test/reference/pthread-same-source.rgb24.ref.png
Binary files differ
diff --git a/test/reference/pthread-show-text.argb32.ref.png b/test/reference/pthread-show-text.argb32.ref.png
new file mode 100644
index 00000000..90d0af34
--- /dev/null
+++ b/test/reference/pthread-show-text.argb32.ref.png
Binary files differ
diff --git a/test/reference/pthread-show-text.rgb24.ref.png b/test/reference/pthread-show-text.rgb24.ref.png
new file mode 100644
index 00000000..90d0af34
--- /dev/null
+++ b/test/reference/pthread-show-text.rgb24.ref.png
Binary files differ
diff --git a/test/reference/pthread-similar.argb32.ref.png b/test/reference/pthread-similar.argb32.ref.png
new file mode 100644
index 00000000..a22210db
--- /dev/null
+++ b/test/reference/pthread-similar.argb32.ref.png
Binary files differ
diff --git a/test/reference/pthread-similar.rgb24.ref.png b/test/reference/pthread-similar.rgb24.ref.png
new file mode 100644
index 00000000..a22210db
--- /dev/null
+++ b/test/reference/pthread-similar.rgb24.ref.png
Binary files differ
diff --git a/test/reference/push-group-color.argb32.ref.png b/test/reference/push-group-color.argb32.ref.png
new file mode 100644
index 00000000..56151968
--- /dev/null
+++ b/test/reference/push-group-color.argb32.ref.png
Binary files differ
diff --git a/test/reference/push-group-color.rgb24.ref.png b/test/reference/push-group-color.rgb24.ref.png
new file mode 100644
index 00000000..56151968
--- /dev/null
+++ b/test/reference/push-group-color.rgb24.ref.png
Binary files differ
diff --git a/test/reference/push-group-path-offset.argb32.ref.png b/test/reference/push-group-path-offset.argb32.ref.png
new file mode 100644
index 00000000..b836a919
--- /dev/null
+++ b/test/reference/push-group-path-offset.argb32.ref.png
Binary files differ
diff --git a/test/reference/push-group-path-offset.rgb24.ref.png b/test/reference/push-group-path-offset.rgb24.ref.png
new file mode 100644
index 00000000..b836a919
--- /dev/null
+++ b/test/reference/push-group-path-offset.rgb24.ref.png
Binary files differ
diff --git a/test/reference/push-group.argb32.ref.png b/test/reference/push-group.argb32.ref.png
new file mode 100644
index 00000000..60f5eec1
--- /dev/null
+++ b/test/reference/push-group.argb32.ref.png
Binary files differ
diff --git a/test/reference/push-group.rgb24.ref.png b/test/reference/push-group.rgb24.ref.png
index d88ff396..19f0a2b7 100644
--- a/test/reference/push-group.rgb24.ref.png
+++ b/test/reference/push-group.rgb24.ref.png
Binary files differ
diff --git a/test/reference/radial-gradient-mask.argb32.ref.png b/test/reference/radial-gradient-mask.argb32.ref.png
new file mode 100644
index 00000000..4db39aa3
--- /dev/null
+++ b/test/reference/radial-gradient-mask.argb32.ref.png
Binary files differ
diff --git a/test/reference/radial-gradient-mask.rgb24.ref.png b/test/reference/radial-gradient-mask.rgb24.ref.png
new file mode 100644
index 00000000..4db39aa3
--- /dev/null
+++ b/test/reference/radial-gradient-mask.rgb24.ref.png
Binary files differ
diff --git a/test/reference/radial-gradient-one-stop.argb32.ref.png b/test/reference/radial-gradient-one-stop.argb32.ref.png
new file mode 100644
index 00000000..fb35be61
--- /dev/null
+++ b/test/reference/radial-gradient-one-stop.argb32.ref.png
Binary files differ
diff --git a/test/reference/radial-gradient-one-stop.rgb24.ref.png b/test/reference/radial-gradient-one-stop.rgb24.ref.png
new file mode 100644
index 00000000..fb35be61
--- /dev/null
+++ b/test/reference/radial-gradient-one-stop.rgb24.ref.png
Binary files differ
diff --git a/test/reference/radial-gradient.argb32.ref.png b/test/reference/radial-gradient.argb32.ref.png
new file mode 100644
index 00000000..a2cbbc82
--- /dev/null
+++ b/test/reference/radial-gradient.argb32.ref.png
Binary files differ
diff --git a/test/reference/radial-gradient.rgb24.ref.png b/test/reference/radial-gradient.rgb24.ref.png
new file mode 100644
index 00000000..a2cbbc82
--- /dev/null
+++ b/test/reference/radial-gradient.rgb24.ref.png
Binary files differ
diff --git a/test/reference/random-intersections-curves-eo.argb32.ref.png b/test/reference/random-intersections-curves-eo.argb32.ref.png
new file mode 100644
index 00000000..c8b0c538
--- /dev/null
+++ b/test/reference/random-intersections-curves-eo.argb32.ref.png
Binary files differ
diff --git a/test/reference/random-intersections-curves-eo.rgb24.ref.png b/test/reference/random-intersections-curves-eo.rgb24.ref.png
new file mode 100644
index 00000000..c8b0c538
--- /dev/null
+++ b/test/reference/random-intersections-curves-eo.rgb24.ref.png
Binary files differ
diff --git a/test/reference/random-intersections-curves-nz.argb32.ref.png b/test/reference/random-intersections-curves-nz.argb32.ref.png
new file mode 100644
index 00000000..2678590c
--- /dev/null
+++ b/test/reference/random-intersections-curves-nz.argb32.ref.png
Binary files differ
diff --git a/test/reference/random-intersections-curves-nz.rgb24.ref.png b/test/reference/random-intersections-curves-nz.rgb24.ref.png
new file mode 100644
index 00000000..2678590c
--- /dev/null
+++ b/test/reference/random-intersections-curves-nz.rgb24.ref.png
Binary files differ
diff --git a/test/reference/random-intersections-eo.argb32.ref.png b/test/reference/random-intersections-eo.argb32.ref.png
new file mode 100644
index 00000000..0e8460ed
--- /dev/null
+++ b/test/reference/random-intersections-eo.argb32.ref.png
Binary files differ
diff --git a/test/reference/random-intersections-eo.rgb24.ref.png b/test/reference/random-intersections-eo.rgb24.ref.png
new file mode 100644
index 00000000..0e8460ed
--- /dev/null
+++ b/test/reference/random-intersections-eo.rgb24.ref.png
Binary files differ
diff --git a/test/reference/random-intersections-nonzero.argb32.ref.png b/test/reference/random-intersections-nonzero.argb32.ref.png
new file mode 100644
index 00000000..dfc2f335
--- /dev/null
+++ b/test/reference/random-intersections-nonzero.argb32.ref.png
Binary files differ
diff --git a/test/reference/random-intersections-nonzero.rgb24.ref.png b/test/reference/random-intersections-nonzero.rgb24.ref.png
new file mode 100644
index 00000000..dfc2f335
--- /dev/null
+++ b/test/reference/random-intersections-nonzero.rgb24.ref.png
Binary files differ
diff --git a/test/reference/raster-source.argb32.ref.png b/test/reference/raster-source.argb32.ref.png
new file mode 100644
index 00000000..ac5e5606
--- /dev/null
+++ b/test/reference/raster-source.argb32.ref.png
Binary files differ
diff --git a/test/reference/raster-source.rgb24.ref.png b/test/reference/raster-source.rgb24.ref.png
new file mode 100644
index 00000000..ac5e5606
--- /dev/null
+++ b/test/reference/raster-source.rgb24.ref.png
Binary files differ
diff --git a/test/reference/record-fill-alpha.ref.png b/test/reference/record-fill-alpha.ref.png
index 50cc034e..630c0246 100644
--- a/test/reference/record-fill-alpha.ref.png
+++ b/test/reference/record-fill-alpha.ref.png
Binary files differ
diff --git a/test/reference/record-paint-alpha-clip-mask.ref.png b/test/reference/record-paint-alpha-clip-mask.ref.png
index 9c2ab2ca..3bc8cd5d 100644
--- a/test/reference/record-paint-alpha-clip-mask.ref.png
+++ b/test/reference/record-paint-alpha-clip-mask.ref.png
Binary files differ
diff --git a/test/reference/rectangle-rounding-error.argb32.ref.png b/test/reference/rectangle-rounding-error.argb32.ref.png
new file mode 100644
index 00000000..6cc1b21a
--- /dev/null
+++ b/test/reference/rectangle-rounding-error.argb32.ref.png
Binary files differ
diff --git a/test/reference/rectangle-rounding-error.rgb24.ref.png b/test/reference/rectangle-rounding-error.rgb24.ref.png
new file mode 100644
index 00000000..6cc1b21a
--- /dev/null
+++ b/test/reference/rectangle-rounding-error.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rectilinear-dash.argb32.ref.png b/test/reference/rectilinear-dash.argb32.ref.png
new file mode 100644
index 00000000..33e7851e
--- /dev/null
+++ b/test/reference/rectilinear-dash.argb32.ref.png
Binary files differ
diff --git a/test/reference/rectilinear-dash.rgb24.ref.png b/test/reference/rectilinear-dash.rgb24.ref.png
new file mode 100644
index 00000000..33e7851e
--- /dev/null
+++ b/test/reference/rectilinear-dash.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rectilinear-fill.argb32.ref.png b/test/reference/rectilinear-fill.argb32.ref.png
new file mode 100644
index 00000000..dbaf3836
--- /dev/null
+++ b/test/reference/rectilinear-fill.argb32.ref.png
Binary files differ
diff --git a/test/reference/rectilinear-fill.rgb24.ref.png b/test/reference/rectilinear-fill.rgb24.ref.png
new file mode 100644
index 00000000..dbaf3836
--- /dev/null
+++ b/test/reference/rectilinear-fill.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rectilinear-grid.argb32.ref.png b/test/reference/rectilinear-grid.argb32.ref.png
new file mode 100644
index 00000000..8d47ef56
--- /dev/null
+++ b/test/reference/rectilinear-grid.argb32.ref.png
Binary files differ
diff --git a/test/reference/rectilinear-grid.rgb24.ref.png b/test/reference/rectilinear-grid.rgb24.ref.png
new file mode 100644
index 00000000..8d47ef56
--- /dev/null
+++ b/test/reference/rectilinear-grid.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rectilinear-miter-limit.argb32.ref.png b/test/reference/rectilinear-miter-limit.argb32.ref.png
new file mode 100644
index 00000000..d64d581e
--- /dev/null
+++ b/test/reference/rectilinear-miter-limit.argb32.ref.png
Binary files differ
diff --git a/test/reference/rectilinear-miter-limit.rgb24.ref.png b/test/reference/rectilinear-miter-limit.rgb24.ref.png
new file mode 100644
index 00000000..d64d581e
--- /dev/null
+++ b/test/reference/rectilinear-miter-limit.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rectilinear-stroke.argb32.ref.png b/test/reference/rectilinear-stroke.argb32.ref.png
new file mode 100644
index 00000000..260909b6
--- /dev/null
+++ b/test/reference/rectilinear-stroke.argb32.ref.png
Binary files differ
diff --git a/test/reference/rectilinear-stroke.rgb24.ref.png b/test/reference/rectilinear-stroke.rgb24.ref.png
new file mode 100644
index 00000000..260909b6
--- /dev/null
+++ b/test/reference/rectilinear-stroke.rgb24.ref.png
Binary files differ
diff --git a/test/reference/reflected-stroke.argb32.ref.png b/test/reference/reflected-stroke.argb32.ref.png
new file mode 100644
index 00000000..9a7d6bc4
--- /dev/null
+++ b/test/reference/reflected-stroke.argb32.ref.png
Binary files differ
diff --git a/test/reference/reflected-stroke.rgb24.ref.png b/test/reference/reflected-stroke.rgb24.ref.png
new file mode 100644
index 00000000..9a7d6bc4
--- /dev/null
+++ b/test/reference/reflected-stroke.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rel-path.argb32.ref.png b/test/reference/rel-path.argb32.ref.png
new file mode 100644
index 00000000..67fe178a
--- /dev/null
+++ b/test/reference/rel-path.argb32.ref.png
Binary files differ
diff --git a/test/reference/rel-path.rgb24.ref.png b/test/reference/rel-path.rgb24.ref.png
index 2eebde69..78d8a088 100644
--- a/test/reference/rel-path.rgb24.ref.png
+++ b/test/reference/rel-path.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rgb24-ignore-alpha.argb32.ref.png b/test/reference/rgb24-ignore-alpha.argb32.ref.png
new file mode 100644
index 00000000..922eddda
--- /dev/null
+++ b/test/reference/rgb24-ignore-alpha.argb32.ref.png
Binary files differ
diff --git a/test/reference/rgb24-ignore-alpha.rgb24.ref.png b/test/reference/rgb24-ignore-alpha.rgb24.ref.png
new file mode 100644
index 00000000..922eddda
--- /dev/null
+++ b/test/reference/rgb24-ignore-alpha.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rotate-clip-image-surface-paint.argb32.ref.png b/test/reference/rotate-clip-image-surface-paint.argb32.ref.png
new file mode 100644
index 00000000..7f74b2b3
--- /dev/null
+++ b/test/reference/rotate-clip-image-surface-paint.argb32.ref.png
Binary files differ
diff --git a/test/reference/rotate-clip-image-surface-paint.rgb24.ref.png b/test/reference/rotate-clip-image-surface-paint.rgb24.ref.png
new file mode 100644
index 00000000..7f74b2b3
--- /dev/null
+++ b/test/reference/rotate-clip-image-surface-paint.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rotate-clip-image-surface-paint.xlib-fallback.rgb24.ref.png b/test/reference/rotate-clip-image-surface-paint.xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..9d991d97
--- /dev/null
+++ b/test/reference/rotate-clip-image-surface-paint.xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rotate-clip-image-surface-paint.xlib-window.rgb24.ref.png b/test/reference/rotate-clip-image-surface-paint.xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..9d991d97
--- /dev/null
+++ b/test/reference/rotate-clip-image-surface-paint.xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rotate-clip-image-surface-paint.xlib.argb32.ref.png b/test/reference/rotate-clip-image-surface-paint.xlib.argb32.ref.png
new file mode 100644
index 00000000..9d991d97
--- /dev/null
+++ b/test/reference/rotate-clip-image-surface-paint.xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/rotate-clip-image-surface-paint.xlib.rgb24.ref.png b/test/reference/rotate-clip-image-surface-paint.xlib.rgb24.ref.png
new file mode 100644
index 00000000..9d991d97
--- /dev/null
+++ b/test/reference/rotate-clip-image-surface-paint.xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rotate-image-surface-paint.argb32.ref.png b/test/reference/rotate-image-surface-paint.argb32.ref.png
new file mode 100644
index 00000000..06a48200
--- /dev/null
+++ b/test/reference/rotate-image-surface-paint.argb32.ref.png
Binary files differ
diff --git a/test/reference/rotate-image-surface-paint.rgb24.ref.png b/test/reference/rotate-image-surface-paint.rgb24.ref.png
new file mode 100644
index 00000000..06a48200
--- /dev/null
+++ b/test/reference/rotate-image-surface-paint.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rotate-image-surface-paint.xlib-fallback.rgb24.ref.png b/test/reference/rotate-image-surface-paint.xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..06a48200
--- /dev/null
+++ b/test/reference/rotate-image-surface-paint.xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rotate-image-surface-paint.xlib-window.rgb24.ref.png b/test/reference/rotate-image-surface-paint.xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..06a48200
--- /dev/null
+++ b/test/reference/rotate-image-surface-paint.xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rotate-image-surface-paint.xlib.argb32.ref.png b/test/reference/rotate-image-surface-paint.xlib.argb32.ref.png
new file mode 100644
index 00000000..06a48200
--- /dev/null
+++ b/test/reference/rotate-image-surface-paint.xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/rotate-image-surface-paint.xlib.rgb24.ref.png b/test/reference/rotate-image-surface-paint.xlib.rgb24.ref.png
new file mode 100644
index 00000000..06a48200
--- /dev/null
+++ b/test/reference/rotate-image-surface-paint.xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rotated-clip.argb32.ref.png b/test/reference/rotated-clip.argb32.ref.png
new file mode 100644
index 00000000..dd6cd5fc
--- /dev/null
+++ b/test/reference/rotated-clip.argb32.ref.png
Binary files differ
diff --git a/test/reference/rotated-clip.rgb24.ref.png b/test/reference/rotated-clip.rgb24.ref.png
new file mode 100644
index 00000000..dd6cd5fc
--- /dev/null
+++ b/test/reference/rotated-clip.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rounded-rectangle-fill.argb32.ref.png b/test/reference/rounded-rectangle-fill.argb32.ref.png
new file mode 100644
index 00000000..3232c078
--- /dev/null
+++ b/test/reference/rounded-rectangle-fill.argb32.ref.png
Binary files differ
diff --git a/test/reference/rounded-rectangle-fill.rgb24.ref.png b/test/reference/rounded-rectangle-fill.rgb24.ref.png
new file mode 100644
index 00000000..3232c078
--- /dev/null
+++ b/test/reference/rounded-rectangle-fill.rgb24.ref.png
Binary files differ
diff --git a/test/reference/rounded-rectangle-stroke.argb32.ref.png b/test/reference/rounded-rectangle-stroke.argb32.ref.png
new file mode 100644
index 00000000..3f2a1fb2
--- /dev/null
+++ b/test/reference/rounded-rectangle-stroke.argb32.ref.png
Binary files differ
diff --git a/test/reference/rounded-rectangle-stroke.rgb24.ref.png b/test/reference/rounded-rectangle-stroke.rgb24.ref.png
new file mode 100644
index 00000000..3f2a1fb2
--- /dev/null
+++ b/test/reference/rounded-rectangle-stroke.rgb24.ref.png
Binary files differ
diff --git a/test/reference/scale-down-source-surface-paint.argb32.ref.png b/test/reference/scale-down-source-surface-paint.argb32.ref.png
new file mode 100644
index 00000000..74770948
--- /dev/null
+++ b/test/reference/scale-down-source-surface-paint.argb32.ref.png
Binary files differ
diff --git a/test/reference/scale-down-source-surface-paint.rgb24.ref.png b/test/reference/scale-down-source-surface-paint.rgb24.ref.png
new file mode 100644
index 00000000..74770948
--- /dev/null
+++ b/test/reference/scale-down-source-surface-paint.rgb24.ref.png
Binary files differ
diff --git a/test/reference/scale-offset-image.argb32.ref.png b/test/reference/scale-offset-image.argb32.ref.png
new file mode 100644
index 00000000..ab1ced83
--- /dev/null
+++ b/test/reference/scale-offset-image.argb32.ref.png
Binary files differ
diff --git a/test/reference/scale-offset-image.rgb24.ref.png b/test/reference/scale-offset-image.rgb24.ref.png
new file mode 100644
index 00000000..ab1ced83
--- /dev/null
+++ b/test/reference/scale-offset-image.rgb24.ref.png
Binary files differ
diff --git a/test/reference/scale-offset-similar.argb32.ref.png b/test/reference/scale-offset-similar.argb32.ref.png
new file mode 100644
index 00000000..ab1ced83
--- /dev/null
+++ b/test/reference/scale-offset-similar.argb32.ref.png
Binary files differ
diff --git a/test/reference/scale-offset-similar.rgb24.ref.png b/test/reference/scale-offset-similar.rgb24.ref.png
new file mode 100644
index 00000000..ab1ced83
--- /dev/null
+++ b/test/reference/scale-offset-similar.rgb24.ref.png
Binary files differ
diff --git a/test/reference/scale-offset-xlib-fallback.rgb24.ref.png b/test/reference/scale-offset-xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..dbb1225e
--- /dev/null
+++ b/test/reference/scale-offset-xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/scale-offset-xlib-window.rgb24.ref.png b/test/reference/scale-offset-xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..dbb1225e
--- /dev/null
+++ b/test/reference/scale-offset-xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/scale-offset-xlib.argb32.ref.png b/test/reference/scale-offset-xlib.argb32.ref.png
new file mode 100644
index 00000000..dbb1225e
--- /dev/null
+++ b/test/reference/scale-offset-xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/scale-offset-xlib.rgb24.ref.png b/test/reference/scale-offset-xlib.rgb24.ref.png
new file mode 100644
index 00000000..dbb1225e
--- /dev/null
+++ b/test/reference/scale-offset-xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/scale-source-surface-paint.argb32.ref.png b/test/reference/scale-source-surface-paint.argb32.ref.png
new file mode 100644
index 00000000..e159d15e
--- /dev/null
+++ b/test/reference/scale-source-surface-paint.argb32.ref.png
Binary files differ
diff --git a/test/reference/scale-source-surface-paint.rgb24.ref.png b/test/reference/scale-source-surface-paint.rgb24.ref.png
index b9e2f435..3491a7c0 100644
--- a/test/reference/scale-source-surface-paint.rgb24.ref.png
+++ b/test/reference/scale-source-surface-paint.rgb24.ref.png
Binary files differ
diff --git a/test/reference/select-font-face.argb32.ref.png b/test/reference/select-font-face.argb32.ref.png
new file mode 100644
index 00000000..1334a9a0
--- /dev/null
+++ b/test/reference/select-font-face.argb32.ref.png
Binary files differ
diff --git a/test/reference/select-font-face.rgb24.ref.png b/test/reference/select-font-face.rgb24.ref.png
new file mode 100644
index 00000000..1334a9a0
--- /dev/null
+++ b/test/reference/select-font-face.rgb24.ref.png
Binary files differ
diff --git a/test/reference/self-copy.argb32.ref.png b/test/reference/self-copy.argb32.ref.png
new file mode 100644
index 00000000..d8221d8a
--- /dev/null
+++ b/test/reference/self-copy.argb32.ref.png
Binary files differ
diff --git a/test/reference/self-copy.rgb24.ref.png b/test/reference/self-copy.rgb24.ref.png
new file mode 100644
index 00000000..d8221d8a
--- /dev/null
+++ b/test/reference/self-copy.rgb24.ref.png
Binary files differ
diff --git a/test/reference/self-intersecting.argb32.ref.png b/test/reference/self-intersecting.argb32.ref.png
new file mode 100644
index 00000000..d554d83e
--- /dev/null
+++ b/test/reference/self-intersecting.argb32.ref.png
Binary files differ
diff --git a/test/reference/self-intersecting.rgb24.ref.png b/test/reference/self-intersecting.rgb24.ref.png
new file mode 100644
index 00000000..d554d83e
--- /dev/null
+++ b/test/reference/self-intersecting.rgb24.ref.png
Binary files differ
diff --git a/test/reference/set-source.argb32.ref.png b/test/reference/set-source.argb32.ref.png
new file mode 100644
index 00000000..222b3723
--- /dev/null
+++ b/test/reference/set-source.argb32.ref.png
Binary files differ
diff --git a/test/reference/set-source.rgb24.ref.png b/test/reference/set-source.rgb24.ref.png
index b158c746..5e13c82e 100644
--- a/test/reference/set-source.rgb24.ref.png
+++ b/test/reference/set-source.rgb24.ref.png
Binary files differ
diff --git a/test/reference/shape-general-convex.argb32.ref.png b/test/reference/shape-general-convex.argb32.ref.png
new file mode 100644
index 00000000..b4d4df73
--- /dev/null
+++ b/test/reference/shape-general-convex.argb32.ref.png
Binary files differ
diff --git a/test/reference/shape-general-convex.rgb24.ref.png b/test/reference/shape-general-convex.rgb24.ref.png
new file mode 100644
index 00000000..b4d4df73
--- /dev/null
+++ b/test/reference/shape-general-convex.rgb24.ref.png
Binary files differ
diff --git a/test/reference/shape-sierpinski.argb32.ref.png b/test/reference/shape-sierpinski.argb32.ref.png
new file mode 100644
index 00000000..ac985576
--- /dev/null
+++ b/test/reference/shape-sierpinski.argb32.ref.png
Binary files differ
diff --git a/test/reference/shape-sierpinski.rgb24.ref.png b/test/reference/shape-sierpinski.rgb24.ref.png
new file mode 100644
index 00000000..ac985576
--- /dev/null
+++ b/test/reference/shape-sierpinski.rgb24.ref.png
Binary files differ
diff --git a/test/reference/show-glyphs-advance.argb32.ref.png b/test/reference/show-glyphs-advance.argb32.ref.png
new file mode 100644
index 00000000..e65ad05d
--- /dev/null
+++ b/test/reference/show-glyphs-advance.argb32.ref.png
Binary files differ
diff --git a/test/reference/show-glyphs-advance.rgb24.ref.png b/test/reference/show-glyphs-advance.rgb24.ref.png
new file mode 100644
index 00000000..e65ad05d
--- /dev/null
+++ b/test/reference/show-glyphs-advance.rgb24.ref.png
Binary files differ
diff --git a/test/reference/show-glyphs-many.argb32.ref.png b/test/reference/show-glyphs-many.argb32.ref.png
new file mode 100644
index 00000000..b638015d
--- /dev/null
+++ b/test/reference/show-glyphs-many.argb32.ref.png
Binary files differ
diff --git a/test/reference/show-glyphs-many.rgb24.ref.png b/test/reference/show-glyphs-many.rgb24.ref.png
new file mode 100644
index 00000000..b638015d
--- /dev/null
+++ b/test/reference/show-glyphs-many.rgb24.ref.png
Binary files differ
diff --git a/test/reference/show-text-current-point.argb32.ref.png b/test/reference/show-text-current-point.argb32.ref.png
new file mode 100644
index 00000000..d60d4ac0
--- /dev/null
+++ b/test/reference/show-text-current-point.argb32.ref.png
Binary files differ
diff --git a/test/reference/show-text-current-point.rgb24.ref.png b/test/reference/show-text-current-point.rgb24.ref.png
new file mode 100644
index 00000000..d60d4ac0
--- /dev/null
+++ b/test/reference/show-text-current-point.rgb24.ref.png
Binary files differ
diff --git a/test/reference/skew-extreme.argb32.ref.png b/test/reference/skew-extreme.argb32.ref.png
new file mode 100644
index 00000000..5ccd8c03
--- /dev/null
+++ b/test/reference/skew-extreme.argb32.ref.png
Binary files differ
diff --git a/test/reference/skew-extreme.rgb24.ref.png b/test/reference/skew-extreme.rgb24.ref.png
new file mode 100644
index 00000000..5ccd8c03
--- /dev/null
+++ b/test/reference/skew-extreme.rgb24.ref.png
Binary files differ
diff --git a/test/reference/smask-fill.argb32.ref.png b/test/reference/smask-fill.argb32.ref.png
new file mode 100644
index 00000000..84e17558
--- /dev/null
+++ b/test/reference/smask-fill.argb32.ref.png
Binary files differ
diff --git a/test/reference/smask-fill.rgb24.ref.png b/test/reference/smask-fill.rgb24.ref.png
new file mode 100644
index 00000000..84e17558
--- /dev/null
+++ b/test/reference/smask-fill.rgb24.ref.png
Binary files differ
diff --git a/test/reference/smask-image-mask.argb32.ref.png b/test/reference/smask-image-mask.argb32.ref.png
new file mode 100644
index 00000000..12063bda
--- /dev/null
+++ b/test/reference/smask-image-mask.argb32.ref.png
Binary files differ
diff --git a/test/reference/smask-image-mask.rgb24.ref.png b/test/reference/smask-image-mask.rgb24.ref.png
new file mode 100644
index 00000000..12063bda
--- /dev/null
+++ b/test/reference/smask-image-mask.rgb24.ref.png
Binary files differ
diff --git a/test/reference/smask-image-mask.xlib-fallback.rgb24.ref.png b/test/reference/smask-image-mask.xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..12063bda
--- /dev/null
+++ b/test/reference/smask-image-mask.xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/smask-image-mask.xlib-window.rgb24.ref.png b/test/reference/smask-image-mask.xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..12063bda
--- /dev/null
+++ b/test/reference/smask-image-mask.xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/smask-image-mask.xlib.argb32.ref.png b/test/reference/smask-image-mask.xlib.argb32.ref.png
new file mode 100644
index 00000000..12063bda
--- /dev/null
+++ b/test/reference/smask-image-mask.xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/smask-image-mask.xlib.rgb24.ref.png b/test/reference/smask-image-mask.xlib.rgb24.ref.png
new file mode 100644
index 00000000..12063bda
--- /dev/null
+++ b/test/reference/smask-image-mask.xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/smask-mask.argb32.ref.png b/test/reference/smask-mask.argb32.ref.png
new file mode 100644
index 00000000..80329c26
--- /dev/null
+++ b/test/reference/smask-mask.argb32.ref.png
Binary files differ
diff --git a/test/reference/smask-mask.rgb24.ref.png b/test/reference/smask-mask.rgb24.ref.png
new file mode 100644
index 00000000..80329c26
--- /dev/null
+++ b/test/reference/smask-mask.rgb24.ref.png
Binary files differ
diff --git a/test/reference/smask-paint.argb32.ref.png b/test/reference/smask-paint.argb32.ref.png
new file mode 100644
index 00000000..95af29af
--- /dev/null
+++ b/test/reference/smask-paint.argb32.ref.png
Binary files differ
diff --git a/test/reference/smask-paint.rgb24.ref.png b/test/reference/smask-paint.rgb24.ref.png
new file mode 100644
index 00000000..95af29af
--- /dev/null
+++ b/test/reference/smask-paint.rgb24.ref.png
Binary files differ
diff --git a/test/reference/smask-stroke.argb32.ref.png b/test/reference/smask-stroke.argb32.ref.png
new file mode 100644
index 00000000..d7b56e57
--- /dev/null
+++ b/test/reference/smask-stroke.argb32.ref.png
Binary files differ
diff --git a/test/reference/smask-stroke.rgb24.ref.png b/test/reference/smask-stroke.rgb24.ref.png
new file mode 100644
index 00000000..d7b56e57
--- /dev/null
+++ b/test/reference/smask-stroke.rgb24.ref.png
Binary files differ
diff --git a/test/reference/smask-text.argb32.ref.png b/test/reference/smask-text.argb32.ref.png
new file mode 100644
index 00000000..66ef289c
--- /dev/null
+++ b/test/reference/smask-text.argb32.ref.png
Binary files differ
diff --git a/test/reference/smask-text.rgb24.ref.png b/test/reference/smask-text.rgb24.ref.png
new file mode 100644
index 00000000..66ef289c
--- /dev/null
+++ b/test/reference/smask-text.rgb24.ref.png
Binary files differ
diff --git a/test/reference/smask.argb32.ref.png b/test/reference/smask.argb32.ref.png
new file mode 100644
index 00000000..3b5703e0
--- /dev/null
+++ b/test/reference/smask.argb32.ref.png
Binary files differ
diff --git a/test/reference/smask.rgb24.ref.png b/test/reference/smask.rgb24.ref.png
new file mode 100644
index 00000000..3b5703e0
--- /dev/null
+++ b/test/reference/smask.rgb24.ref.png
Binary files differ
diff --git a/test/reference/solid-pattern-cache-stress.argb32.ref.png b/test/reference/solid-pattern-cache-stress.argb32.ref.png
new file mode 100644
index 00000000..08a2ce15
--- /dev/null
+++ b/test/reference/solid-pattern-cache-stress.argb32.ref.png
Binary files differ
diff --git a/test/reference/solid-pattern-cache-stress.rgb24.ref.png b/test/reference/solid-pattern-cache-stress.rgb24.ref.png
new file mode 100644
index 00000000..08a2ce15
--- /dev/null
+++ b/test/reference/solid-pattern-cache-stress.rgb24.ref.png
Binary files differ
diff --git a/test/reference/source-clip-scale.argb32.ref.png b/test/reference/source-clip-scale.argb32.ref.png
new file mode 100644
index 00000000..4b63ad9b
--- /dev/null
+++ b/test/reference/source-clip-scale.argb32.ref.png
Binary files differ
diff --git a/test/reference/source-clip-scale.rgb24.ref.png b/test/reference/source-clip-scale.rgb24.ref.png
new file mode 100644
index 00000000..4b63ad9b
--- /dev/null
+++ b/test/reference/source-clip-scale.rgb24.ref.png
Binary files differ
diff --git a/test/reference/source-clip.argb32.ref.png b/test/reference/source-clip.argb32.ref.png
new file mode 100644
index 00000000..821bc6ca
--- /dev/null
+++ b/test/reference/source-clip.argb32.ref.png
Binary files differ
diff --git a/test/reference/source-clip.rgb24.ref.png b/test/reference/source-clip.rgb24.ref.png
new file mode 100644
index 00000000..821bc6ca
--- /dev/null
+++ b/test/reference/source-clip.rgb24.ref.png
Binary files differ
diff --git a/test/reference/source-surface-scale-paint.argb32.ref.png b/test/reference/source-surface-scale-paint.argb32.ref.png
new file mode 100644
index 00000000..087ef752
--- /dev/null
+++ b/test/reference/source-surface-scale-paint.argb32.ref.png
Binary files differ
diff --git a/test/reference/source-surface-scale-paint.rgb24.ref.png b/test/reference/source-surface-scale-paint.rgb24.ref.png
index 7ca74593..322af211 100644
--- a/test/reference/source-surface-scale-paint.rgb24.ref.png
+++ b/test/reference/source-surface-scale-paint.rgb24.ref.png
Binary files differ
diff --git a/test/reference/spline-decomposition.argb32.ref.png b/test/reference/spline-decomposition.argb32.ref.png
new file mode 100644
index 00000000..e93e6210
--- /dev/null
+++ b/test/reference/spline-decomposition.argb32.ref.png
Binary files differ
diff --git a/test/reference/spline-decomposition.rgb24.ref.png b/test/reference/spline-decomposition.rgb24.ref.png
new file mode 100644
index 00000000..e93e6210
--- /dev/null
+++ b/test/reference/spline-decomposition.rgb24.ref.png
Binary files differ
diff --git a/test/reference/stride-12-image.argb32.ref.png b/test/reference/stride-12-image.argb32.ref.png
new file mode 100644
index 00000000..44284566
--- /dev/null
+++ b/test/reference/stride-12-image.argb32.ref.png
Binary files differ
diff --git a/test/reference/stride-12-image.rgb24.ref.png b/test/reference/stride-12-image.rgb24.ref.png
new file mode 100644
index 00000000..44284566
--- /dev/null
+++ b/test/reference/stride-12-image.rgb24.ref.png
Binary files differ
diff --git a/test/reference/stride-12-xlib-fallback.rgb24.ref.png b/test/reference/stride-12-xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..44284566
--- /dev/null
+++ b/test/reference/stride-12-xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/stride-12-xlib-window.rgb24.ref.png b/test/reference/stride-12-xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..44284566
--- /dev/null
+++ b/test/reference/stride-12-xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/stride-12-xlib.argb32.ref.png b/test/reference/stride-12-xlib.argb32.ref.png
new file mode 100644
index 00000000..44284566
--- /dev/null
+++ b/test/reference/stride-12-xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/stride-12-xlib.rgb24.ref.png b/test/reference/stride-12-xlib.rgb24.ref.png
new file mode 100644
index 00000000..44284566
--- /dev/null
+++ b/test/reference/stride-12-xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/stroke-ctm-caps.argb32.ref.png b/test/reference/stroke-ctm-caps.argb32.ref.png
new file mode 100644
index 00000000..3a77d3ea
--- /dev/null
+++ b/test/reference/stroke-ctm-caps.argb32.ref.png
Binary files differ
diff --git a/test/reference/stroke-ctm-caps.rgb24.ref.png b/test/reference/stroke-ctm-caps.rgb24.ref.png
new file mode 100644
index 00000000..3a77d3ea
--- /dev/null
+++ b/test/reference/stroke-ctm-caps.rgb24.ref.png
Binary files differ
diff --git a/test/reference/stroke-image.argb32.ref.png b/test/reference/stroke-image.argb32.ref.png
new file mode 100644
index 00000000..03a07eb4
--- /dev/null
+++ b/test/reference/stroke-image.argb32.ref.png
Binary files differ
diff --git a/test/reference/stroke-image.rgb24.ref.png b/test/reference/stroke-image.rgb24.ref.png
new file mode 100644
index 00000000..03a07eb4
--- /dev/null
+++ b/test/reference/stroke-image.rgb24.ref.png
Binary files differ
diff --git a/test/reference/stroke-open-box.argb32.ref.png b/test/reference/stroke-open-box.argb32.ref.png
new file mode 100644
index 00000000..b5f5bd58
--- /dev/null
+++ b/test/reference/stroke-open-box.argb32.ref.png
Binary files differ
diff --git a/test/reference/stroke-open-box.rgb24.ref.png b/test/reference/stroke-open-box.rgb24.ref.png
new file mode 100644
index 00000000..b5f5bd58
--- /dev/null
+++ b/test/reference/stroke-open-box.rgb24.ref.png
Binary files differ
diff --git a/test/reference/stroke-pattern.argb32.ref.png b/test/reference/stroke-pattern.argb32.ref.png
new file mode 100644
index 00000000..38ff6ad8
--- /dev/null
+++ b/test/reference/stroke-pattern.argb32.ref.png
Binary files differ
diff --git a/test/reference/stroke-pattern.rgb24.ref.png b/test/reference/stroke-pattern.rgb24.ref.png
new file mode 100644
index 00000000..38ff6ad8
--- /dev/null
+++ b/test/reference/stroke-pattern.rgb24.ref.png
Binary files differ
diff --git a/test/reference/stroke-xlib-fallback.rgb24.ref.png b/test/reference/stroke-xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..75737d57
--- /dev/null
+++ b/test/reference/stroke-xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/stroke-xlib-window.rgb24.ref.png b/test/reference/stroke-xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..75737d57
--- /dev/null
+++ b/test/reference/stroke-xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/stroke-xlib.argb32.ref.png b/test/reference/stroke-xlib.argb32.ref.png
new file mode 100644
index 00000000..75737d57
--- /dev/null
+++ b/test/reference/stroke-xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/stroke-xlib.rgb24.ref.png b/test/reference/stroke-xlib.rgb24.ref.png
new file mode 100644
index 00000000..75737d57
--- /dev/null
+++ b/test/reference/stroke-xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/subsurface-image-repeat.argb32.ref.png b/test/reference/subsurface-image-repeat.argb32.ref.png
new file mode 100644
index 00000000..3dd6306a
--- /dev/null
+++ b/test/reference/subsurface-image-repeat.argb32.ref.png
Binary files differ
diff --git a/test/reference/subsurface-image-repeat.rgb24.ref.png b/test/reference/subsurface-image-repeat.rgb24.ref.png
new file mode 100644
index 00000000..3dd6306a
--- /dev/null
+++ b/test/reference/subsurface-image-repeat.rgb24.ref.png
Binary files differ
diff --git a/test/reference/subsurface-image-repeat.xlib-fallback.rgb24.ref.png b/test/reference/subsurface-image-repeat.xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..3dd6306a
--- /dev/null
+++ b/test/reference/subsurface-image-repeat.xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/subsurface-image-repeat.xlib-window.rgb24.ref.png b/test/reference/subsurface-image-repeat.xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..3dd6306a
--- /dev/null
+++ b/test/reference/subsurface-image-repeat.xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/subsurface-image-repeat.xlib.argb32.ref.png b/test/reference/subsurface-image-repeat.xlib.argb32.ref.png
new file mode 100644
index 00000000..3dd6306a
--- /dev/null
+++ b/test/reference/subsurface-image-repeat.xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/subsurface-image-repeat.xlib.rgb24.ref.png b/test/reference/subsurface-image-repeat.xlib.rgb24.ref.png
new file mode 100644
index 00000000..3dd6306a
--- /dev/null
+++ b/test/reference/subsurface-image-repeat.xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/subsurface-modify-child.argb32.ref.png b/test/reference/subsurface-modify-child.argb32.ref.png
new file mode 100644
index 00000000..c37e22e3
--- /dev/null
+++ b/test/reference/subsurface-modify-child.argb32.ref.png
Binary files differ
diff --git a/test/reference/subsurface-modify-child.rgb24.ref.png b/test/reference/subsurface-modify-child.rgb24.ref.png
new file mode 100644
index 00000000..c37e22e3
--- /dev/null
+++ b/test/reference/subsurface-modify-child.rgb24.ref.png
Binary files differ
diff --git a/test/reference/subsurface-modify-parent.argb32.ref.png b/test/reference/subsurface-modify-parent.argb32.ref.png
new file mode 100644
index 00000000..c37e22e3
--- /dev/null
+++ b/test/reference/subsurface-modify-parent.argb32.ref.png
Binary files differ
diff --git a/test/reference/subsurface-modify-parent.rgb24.ref.png b/test/reference/subsurface-modify-parent.rgb24.ref.png
new file mode 100644
index 00000000..c37e22e3
--- /dev/null
+++ b/test/reference/subsurface-modify-parent.rgb24.ref.png
Binary files differ
diff --git a/test/reference/subsurface-pad.argb32.ref.png b/test/reference/subsurface-pad.argb32.ref.png
new file mode 100644
index 00000000..eeb9f8f5
--- /dev/null
+++ b/test/reference/subsurface-pad.argb32.ref.png
Binary files differ
diff --git a/test/reference/subsurface-pad.rgb24.ref.png b/test/reference/subsurface-pad.rgb24.ref.png
new file mode 100644
index 00000000..eeb9f8f5
--- /dev/null
+++ b/test/reference/subsurface-pad.rgb24.ref.png
Binary files differ
diff --git a/test/reference/subsurface-reflect.argb32.ref.png b/test/reference/subsurface-reflect.argb32.ref.png
new file mode 100644
index 00000000..55643f44
--- /dev/null
+++ b/test/reference/subsurface-reflect.argb32.ref.png
Binary files differ
diff --git a/test/reference/subsurface-reflect.rgb24.ref.png b/test/reference/subsurface-reflect.rgb24.ref.png
new file mode 100644
index 00000000..55643f44
--- /dev/null
+++ b/test/reference/subsurface-reflect.rgb24.ref.png
Binary files differ
diff --git a/test/reference/subsurface-repeat.argb32.ref.png b/test/reference/subsurface-repeat.argb32.ref.png
new file mode 100644
index 00000000..c37e22e3
--- /dev/null
+++ b/test/reference/subsurface-repeat.argb32.ref.png
Binary files differ
diff --git a/test/reference/subsurface-repeat.rgb24.ref.png b/test/reference/subsurface-repeat.rgb24.ref.png
new file mode 100644
index 00000000..c37e22e3
--- /dev/null
+++ b/test/reference/subsurface-repeat.rgb24.ref.png
Binary files differ
diff --git a/test/reference/subsurface-scale.argb32.ref.png b/test/reference/subsurface-scale.argb32.ref.png
new file mode 100644
index 00000000..69bb0fb9
--- /dev/null
+++ b/test/reference/subsurface-scale.argb32.ref.png
Binary files differ
diff --git a/test/reference/subsurface-scale.rgb24.ref.png b/test/reference/subsurface-scale.rgb24.ref.png
new file mode 100644
index 00000000..69bb0fb9
--- /dev/null
+++ b/test/reference/subsurface-scale.rgb24.ref.png
Binary files differ
diff --git a/test/reference/subsurface-similar-repeat.argb32.ref.png b/test/reference/subsurface-similar-repeat.argb32.ref.png
new file mode 100644
index 00000000..c37e22e3
--- /dev/null
+++ b/test/reference/subsurface-similar-repeat.argb32.ref.png
Binary files differ
diff --git a/test/reference/subsurface-similar-repeat.rgb24.ref.png b/test/reference/subsurface-similar-repeat.rgb24.ref.png
new file mode 100644
index 00000000..c37e22e3
--- /dev/null
+++ b/test/reference/subsurface-similar-repeat.rgb24.ref.png
Binary files differ
diff --git a/test/reference/subsurface.argb32.ref.png b/test/reference/subsurface.argb32.ref.png
new file mode 100644
index 00000000..feeb5dc8
--- /dev/null
+++ b/test/reference/subsurface.argb32.ref.png
Binary files differ
diff --git a/test/reference/subsurface.rgb24.ref.png b/test/reference/subsurface.rgb24.ref.png
new file mode 100644
index 00000000..feeb5dc8
--- /dev/null
+++ b/test/reference/subsurface.rgb24.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern-big-scale-down.argb32.ref.png b/test/reference/surface-pattern-big-scale-down.argb32.ref.png
new file mode 100644
index 00000000..c0509907
--- /dev/null
+++ b/test/reference/surface-pattern-big-scale-down.argb32.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern-big-scale-down.rgb24.ref.png b/test/reference/surface-pattern-big-scale-down.rgb24.ref.png
new file mode 100644
index 00000000..c0509907
--- /dev/null
+++ b/test/reference/surface-pattern-big-scale-down.rgb24.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern-operator.argb32.ref.png b/test/reference/surface-pattern-operator.argb32.ref.png
index 9abc2528..81780304 100644
--- a/test/reference/surface-pattern-operator.argb32.ref.png
+++ b/test/reference/surface-pattern-operator.argb32.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern-operator.rgb24.ref.png b/test/reference/surface-pattern-operator.rgb24.ref.png
index dd9315af..2378bdd9 100644
--- a/test/reference/surface-pattern-operator.rgb24.ref.png
+++ b/test/reference/surface-pattern-operator.rgb24.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern-scale-down-extend-none.argb32.ref.png b/test/reference/surface-pattern-scale-down-extend-none.argb32.ref.png
new file mode 100644
index 00000000..9df14cc5
--- /dev/null
+++ b/test/reference/surface-pattern-scale-down-extend-none.argb32.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern-scale-down-extend-none.rgb24.ref.png b/test/reference/surface-pattern-scale-down-extend-none.rgb24.ref.png
new file mode 100644
index 00000000..9df14cc5
--- /dev/null
+++ b/test/reference/surface-pattern-scale-down-extend-none.rgb24.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern-scale-down-extend-pad.argb32.ref.png b/test/reference/surface-pattern-scale-down-extend-pad.argb32.ref.png
new file mode 100644
index 00000000..2ee94190
--- /dev/null
+++ b/test/reference/surface-pattern-scale-down-extend-pad.argb32.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern-scale-down-extend-pad.rgb24.ref.png b/test/reference/surface-pattern-scale-down-extend-pad.rgb24.ref.png
new file mode 100644
index 00000000..2ee94190
--- /dev/null
+++ b/test/reference/surface-pattern-scale-down-extend-pad.rgb24.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern-scale-down-extend-reflect.argb32.ref.png b/test/reference/surface-pattern-scale-down-extend-reflect.argb32.ref.png
new file mode 100644
index 00000000..f2e93a7d
--- /dev/null
+++ b/test/reference/surface-pattern-scale-down-extend-reflect.argb32.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern-scale-down-extend-reflect.rgb24.ref.png b/test/reference/surface-pattern-scale-down-extend-reflect.rgb24.ref.png
new file mode 100644
index 00000000..f2e93a7d
--- /dev/null
+++ b/test/reference/surface-pattern-scale-down-extend-reflect.rgb24.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern-scale-down-extend-repeat.argb32.ref.png b/test/reference/surface-pattern-scale-down-extend-repeat.argb32.ref.png
new file mode 100644
index 00000000..c5cff0fe
--- /dev/null
+++ b/test/reference/surface-pattern-scale-down-extend-repeat.argb32.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern-scale-down-extend-repeat.rgb24.ref.png b/test/reference/surface-pattern-scale-down-extend-repeat.rgb24.ref.png
new file mode 100644
index 00000000..c5cff0fe
--- /dev/null
+++ b/test/reference/surface-pattern-scale-down-extend-repeat.rgb24.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern-scale-down.argb32.ref.png b/test/reference/surface-pattern-scale-down.argb32.ref.png
new file mode 100644
index 00000000..8bb58a2a
--- /dev/null
+++ b/test/reference/surface-pattern-scale-down.argb32.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern-scale-down.rgb24.ref.png b/test/reference/surface-pattern-scale-down.rgb24.ref.png
new file mode 100644
index 00000000..8bb58a2a
--- /dev/null
+++ b/test/reference/surface-pattern-scale-down.rgb24.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern-scale-up.argb32.ref.png b/test/reference/surface-pattern-scale-up.argb32.ref.png
new file mode 100644
index 00000000..e8d84e2b
--- /dev/null
+++ b/test/reference/surface-pattern-scale-up.argb32.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern-scale-up.rgb24.ref.png b/test/reference/surface-pattern-scale-up.rgb24.ref.png
new file mode 100644
index 00000000..e8d84e2b
--- /dev/null
+++ b/test/reference/surface-pattern-scale-up.rgb24.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern.argb32.ref.png b/test/reference/surface-pattern.argb32.ref.png
new file mode 100644
index 00000000..079ebfba
--- /dev/null
+++ b/test/reference/surface-pattern.argb32.ref.png
Binary files differ
diff --git a/test/reference/surface-pattern.rgb24.ref.png b/test/reference/surface-pattern.rgb24.ref.png
new file mode 100644
index 00000000..079ebfba
--- /dev/null
+++ b/test/reference/surface-pattern.rgb24.ref.png
Binary files differ
diff --git a/test/reference/text-antialias-gray.argb32.ref.png b/test/reference/text-antialias-gray.argb32.ref.png
new file mode 100644
index 00000000..06b805ea
--- /dev/null
+++ b/test/reference/text-antialias-gray.argb32.ref.png
Binary files differ
diff --git a/test/reference/text-antialias-gray.rgb24.ref.png b/test/reference/text-antialias-gray.rgb24.ref.png
new file mode 100644
index 00000000..06b805ea
--- /dev/null
+++ b/test/reference/text-antialias-gray.rgb24.ref.png
Binary files differ
diff --git a/test/reference/text-antialias-none.argb32.ref.png b/test/reference/text-antialias-none.argb32.ref.png
new file mode 100644
index 00000000..86c09cd3
--- /dev/null
+++ b/test/reference/text-antialias-none.argb32.ref.png
Binary files differ
diff --git a/test/reference/text-antialias-none.rgb24.ref.png b/test/reference/text-antialias-none.rgb24.ref.png
new file mode 100644
index 00000000..86c09cd3
--- /dev/null
+++ b/test/reference/text-antialias-none.rgb24.ref.png
Binary files differ
diff --git a/test/reference/text-antialias-subpixel-bgr.argb32.ref.png b/test/reference/text-antialias-subpixel-bgr.argb32.ref.png
new file mode 100644
index 00000000..a221472d
--- /dev/null
+++ b/test/reference/text-antialias-subpixel-bgr.argb32.ref.png
Binary files differ
diff --git a/test/reference/text-antialias-subpixel-bgr.rgb24.ref.png b/test/reference/text-antialias-subpixel-bgr.rgb24.ref.png
new file mode 100644
index 00000000..a221472d
--- /dev/null
+++ b/test/reference/text-antialias-subpixel-bgr.rgb24.ref.png
Binary files differ
diff --git a/test/reference/text-antialias-subpixel-rgb.argb32.ref.png b/test/reference/text-antialias-subpixel-rgb.argb32.ref.png
new file mode 100644
index 00000000..af5e0aef
--- /dev/null
+++ b/test/reference/text-antialias-subpixel-rgb.argb32.ref.png
Binary files differ
diff --git a/test/reference/text-antialias-subpixel-rgb.rgb24.ref.png b/test/reference/text-antialias-subpixel-rgb.rgb24.ref.png
new file mode 100644
index 00000000..af5e0aef
--- /dev/null
+++ b/test/reference/text-antialias-subpixel-rgb.rgb24.ref.png
Binary files differ
diff --git a/test/reference/text-antialias-subpixel-vbgr.argb32.ref.png b/test/reference/text-antialias-subpixel-vbgr.argb32.ref.png
new file mode 100644
index 00000000..905579b6
--- /dev/null
+++ b/test/reference/text-antialias-subpixel-vbgr.argb32.ref.png
Binary files differ
diff --git a/test/reference/text-antialias-subpixel-vbgr.rgb24.ref.png b/test/reference/text-antialias-subpixel-vbgr.rgb24.ref.png
new file mode 100644
index 00000000..905579b6
--- /dev/null
+++ b/test/reference/text-antialias-subpixel-vbgr.rgb24.ref.png
Binary files differ
diff --git a/test/reference/text-antialias-subpixel-vrgb.argb32.ref.png b/test/reference/text-antialias-subpixel-vrgb.argb32.ref.png
new file mode 100644
index 00000000..f7c5befa
--- /dev/null
+++ b/test/reference/text-antialias-subpixel-vrgb.argb32.ref.png
Binary files differ
diff --git a/test/reference/text-antialias-subpixel-vrgb.rgb24.ref.png b/test/reference/text-antialias-subpixel-vrgb.rgb24.ref.png
new file mode 100644
index 00000000..f7c5befa
--- /dev/null
+++ b/test/reference/text-antialias-subpixel-vrgb.rgb24.ref.png
Binary files differ
diff --git a/test/reference/text-antialias-subpixel.argb32.ref.png b/test/reference/text-antialias-subpixel.argb32.ref.png
new file mode 100644
index 00000000..af5e0aef
--- /dev/null
+++ b/test/reference/text-antialias-subpixel.argb32.ref.png
Binary files differ
diff --git a/test/reference/text-antialias-subpixel.rgb24.ref.png b/test/reference/text-antialias-subpixel.rgb24.ref.png
new file mode 100644
index 00000000..af5e0aef
--- /dev/null
+++ b/test/reference/text-antialias-subpixel.rgb24.ref.png
Binary files differ
diff --git a/test/reference/text-glyph-range.argb32.ref.png b/test/reference/text-glyph-range.argb32.ref.png
new file mode 100644
index 00000000..648fef5b
--- /dev/null
+++ b/test/reference/text-glyph-range.argb32.ref.png
Binary files differ
diff --git a/test/reference/text-glyph-range.rgb24.ref.png b/test/reference/text-glyph-range.rgb24.ref.png
new file mode 100644
index 00000000..648fef5b
--- /dev/null
+++ b/test/reference/text-glyph-range.rgb24.ref.png
Binary files differ
diff --git a/test/reference/text-pattern.argb32.ref.png b/test/reference/text-pattern.argb32.ref.png
new file mode 100644
index 00000000..95410fa2
--- /dev/null
+++ b/test/reference/text-pattern.argb32.ref.png
Binary files differ
diff --git a/test/reference/text-pattern.rgb24.ref.png b/test/reference/text-pattern.rgb24.ref.png
new file mode 100644
index 00000000..a6b9e4cf
--- /dev/null
+++ b/test/reference/text-pattern.rgb24.ref.png
Binary files differ
diff --git a/test/reference/text-rotate.argb32.ref.png b/test/reference/text-rotate.argb32.ref.png
new file mode 100644
index 00000000..b455aab6
--- /dev/null
+++ b/test/reference/text-rotate.argb32.ref.png
Binary files differ
diff --git a/test/reference/text-rotate.rgb24.ref.png b/test/reference/text-rotate.rgb24.ref.png
new file mode 100644
index 00000000..b455aab6
--- /dev/null
+++ b/test/reference/text-rotate.rgb24.ref.png
Binary files differ
diff --git a/test/reference/text-transform.argb32.ref.png b/test/reference/text-transform.argb32.ref.png
new file mode 100644
index 00000000..4603bc52
--- /dev/null
+++ b/test/reference/text-transform.argb32.ref.png
Binary files differ
diff --git a/test/reference/text-transform.rgb24.ref.png b/test/reference/text-transform.rgb24.ref.png
new file mode 100644
index 00000000..4603bc52
--- /dev/null
+++ b/test/reference/text-transform.rgb24.ref.png
Binary files differ
diff --git a/test/reference/tiger.argb32.ref.png b/test/reference/tiger.argb32.ref.png
new file mode 100644
index 00000000..85ae151f
--- /dev/null
+++ b/test/reference/tiger.argb32.ref.png
Binary files differ
diff --git a/test/reference/tiger.rgb24.ref.png b/test/reference/tiger.rgb24.ref.png
new file mode 100644
index 00000000..85ae151f
--- /dev/null
+++ b/test/reference/tiger.rgb24.ref.png
Binary files differ
diff --git a/test/reference/tighten-bounds.argb32.ref.png b/test/reference/tighten-bounds.argb32.ref.png
index 3fbd8a41..97026047 100644
--- a/test/reference/tighten-bounds.argb32.ref.png
+++ b/test/reference/tighten-bounds.argb32.ref.png
Binary files differ
diff --git a/test/reference/tighten-bounds.rgb24.ref.png b/test/reference/tighten-bounds.rgb24.ref.png
index 5f0161f8..33ed7179 100644
--- a/test/reference/tighten-bounds.rgb24.ref.png
+++ b/test/reference/tighten-bounds.rgb24.ref.png
Binary files differ
diff --git a/test/reference/transforms.argb32.ref.png b/test/reference/transforms.argb32.ref.png
new file mode 100644
index 00000000..390bad48
--- /dev/null
+++ b/test/reference/transforms.argb32.ref.png
Binary files differ
diff --git a/test/reference/transforms.rgb24.ref.png b/test/reference/transforms.rgb24.ref.png
new file mode 100644
index 00000000..390bad48
--- /dev/null
+++ b/test/reference/transforms.rgb24.ref.png
Binary files differ
diff --git a/test/reference/translate-show-surface.argb32.ref.png b/test/reference/translate-show-surface.argb32.ref.png
new file mode 100644
index 00000000..0a145d91
--- /dev/null
+++ b/test/reference/translate-show-surface.argb32.ref.png
Binary files differ
diff --git a/test/reference/translate-show-surface.rgb24.ref.png b/test/reference/translate-show-surface.rgb24.ref.png
new file mode 100644
index 00000000..0a145d91
--- /dev/null
+++ b/test/reference/translate-show-surface.rgb24.ref.png
Binary files differ
diff --git a/test/reference/trap-clip.argb32.ref.png b/test/reference/trap-clip.argb32.ref.png
new file mode 100644
index 00000000..b1380647
--- /dev/null
+++ b/test/reference/trap-clip.argb32.ref.png
Binary files differ
diff --git a/test/reference/trap-clip.rgb24.ref.png b/test/reference/trap-clip.rgb24.ref.png
index 1e737a06..45f4d693 100644
--- a/test/reference/trap-clip.rgb24.ref.png
+++ b/test/reference/trap-clip.rgb24.ref.png
Binary files differ
diff --git a/test/reference/twin-antialias-gray.argb32.ref.png b/test/reference/twin-antialias-gray.argb32.ref.png
new file mode 100644
index 00000000..6b091afd
--- /dev/null
+++ b/test/reference/twin-antialias-gray.argb32.ref.png
Binary files differ
diff --git a/test/reference/twin-antialias-gray.rgb24.ref.png b/test/reference/twin-antialias-gray.rgb24.ref.png
new file mode 100644
index 00000000..6b091afd
--- /dev/null
+++ b/test/reference/twin-antialias-gray.rgb24.ref.png
Binary files differ
diff --git a/test/reference/twin-antialias-mixed.argb32.ref.png b/test/reference/twin-antialias-mixed.argb32.ref.png
new file mode 100644
index 00000000..d6c406fa
--- /dev/null
+++ b/test/reference/twin-antialias-mixed.argb32.ref.png
Binary files differ
diff --git a/test/reference/twin-antialias-mixed.rgb24.ref.png b/test/reference/twin-antialias-mixed.rgb24.ref.png
new file mode 100644
index 00000000..d6c406fa
--- /dev/null
+++ b/test/reference/twin-antialias-mixed.rgb24.ref.png
Binary files differ
diff --git a/test/reference/twin-antialias-none.argb32.ref.png b/test/reference/twin-antialias-none.argb32.ref.png
new file mode 100644
index 00000000..cb9628e0
--- /dev/null
+++ b/test/reference/twin-antialias-none.argb32.ref.png
Binary files differ
diff --git a/test/reference/twin-antialias-none.rgb24.ref.png b/test/reference/twin-antialias-none.rgb24.ref.png
new file mode 100644
index 00000000..cb9628e0
--- /dev/null
+++ b/test/reference/twin-antialias-none.rgb24.ref.png
Binary files differ
diff --git a/test/reference/twin-antialias-subpixel.argb32.ref.png b/test/reference/twin-antialias-subpixel.argb32.ref.png
new file mode 100644
index 00000000..6b091afd
--- /dev/null
+++ b/test/reference/twin-antialias-subpixel.argb32.ref.png
Binary files differ
diff --git a/test/reference/twin-antialias-subpixel.rgb24.ref.png b/test/reference/twin-antialias-subpixel.rgb24.ref.png
new file mode 100644
index 00000000..6b091afd
--- /dev/null
+++ b/test/reference/twin-antialias-subpixel.rgb24.ref.png
Binary files differ
diff --git a/test/reference/twin.argb32.ref.png b/test/reference/twin.argb32.ref.png
new file mode 100644
index 00000000..6b091afd
--- /dev/null
+++ b/test/reference/twin.argb32.ref.png
Binary files differ
diff --git a/test/reference/twin.rgb24.ref.png b/test/reference/twin.rgb24.ref.png
new file mode 100644
index 00000000..6b091afd
--- /dev/null
+++ b/test/reference/twin.rgb24.ref.png
Binary files differ
diff --git a/test/reference/unaligned-box.argb32.ref.png b/test/reference/unaligned-box.argb32.ref.png
new file mode 100644
index 00000000..ec7c4899
--- /dev/null
+++ b/test/reference/unaligned-box.argb32.ref.png
Binary files differ
diff --git a/test/reference/unaligned-box.rgb24.ref.png b/test/reference/unaligned-box.rgb24.ref.png
new file mode 100644
index 00000000..ec7c4899
--- /dev/null
+++ b/test/reference/unaligned-box.rgb24.ref.png
Binary files differ
diff --git a/test/reference/unantialiased-shapes.argb32.ref.png b/test/reference/unantialiased-shapes.argb32.ref.png
new file mode 100644
index 00000000..d9f466e5
--- /dev/null
+++ b/test/reference/unantialiased-shapes.argb32.ref.png
Binary files differ
diff --git a/test/reference/unantialiased-shapes.rgb24.ref.png b/test/reference/unantialiased-shapes.rgb24.ref.png
new file mode 100644
index 00000000..d9f466e5
--- /dev/null
+++ b/test/reference/unantialiased-shapes.rgb24.ref.png
Binary files differ
diff --git a/test/reference/unbounded-operator.argb32.ref.png b/test/reference/unbounded-operator.argb32.ref.png
index c91a4b75..08f43561 100644
--- a/test/reference/unbounded-operator.argb32.ref.png
+++ b/test/reference/unbounded-operator.argb32.ref.png
Binary files differ
diff --git a/test/reference/unbounded-operator.rgb24.ref.png b/test/reference/unbounded-operator.rgb24.ref.png
index d383d66d..80d20dc5 100644
--- a/test/reference/unbounded-operator.rgb24.ref.png
+++ b/test/reference/unbounded-operator.rgb24.ref.png
Binary files differ
diff --git a/test/reference/unclosed-strokes.argb32.ref.png b/test/reference/unclosed-strokes.argb32.ref.png
new file mode 100644
index 00000000..8af84726
--- /dev/null
+++ b/test/reference/unclosed-strokes.argb32.ref.png
Binary files differ
diff --git a/test/reference/unclosed-strokes.rgb24.ref.png b/test/reference/unclosed-strokes.rgb24.ref.png
new file mode 100644
index 00000000..8af84726
--- /dev/null
+++ b/test/reference/unclosed-strokes.rgb24.ref.png
Binary files differ
diff --git a/test/reference/user-font-mask.argb32.ref.png b/test/reference/user-font-mask.argb32.ref.png
new file mode 100644
index 00000000..02a9a5ec
--- /dev/null
+++ b/test/reference/user-font-mask.argb32.ref.png
Binary files differ
diff --git a/test/reference/user-font-mask.rgb24.ref.png b/test/reference/user-font-mask.rgb24.ref.png
new file mode 100644
index 00000000..02a9a5ec
--- /dev/null
+++ b/test/reference/user-font-mask.rgb24.ref.png
Binary files differ
diff --git a/test/reference/user-font-proxy.argb32.ref.png b/test/reference/user-font-proxy.argb32.ref.png
new file mode 100644
index 00000000..5acbca52
--- /dev/null
+++ b/test/reference/user-font-proxy.argb32.ref.png
Binary files differ
diff --git a/test/reference/user-font-proxy.rgb24.ref.png b/test/reference/user-font-proxy.rgb24.ref.png
new file mode 100644
index 00000000..5acbca52
--- /dev/null
+++ b/test/reference/user-font-proxy.rgb24.ref.png
Binary files differ
diff --git a/test/reference/user-font-rescale.argb32.ref.png b/test/reference/user-font-rescale.argb32.ref.png
new file mode 100644
index 00000000..09390601
--- /dev/null
+++ b/test/reference/user-font-rescale.argb32.ref.png
Binary files differ
diff --git a/test/reference/user-font-rescale.rgb24.ref.png b/test/reference/user-font-rescale.rgb24.ref.png
new file mode 100644
index 00000000..09390601
--- /dev/null
+++ b/test/reference/user-font-rescale.rgb24.ref.png
Binary files differ
diff --git a/test/reference/user-font.argb32.ref.png b/test/reference/user-font.argb32.ref.png
new file mode 100644
index 00000000..b234a880
--- /dev/null
+++ b/test/reference/user-font.argb32.ref.png
Binary files differ
diff --git a/test/reference/user-font.rgb24.ref.png b/test/reference/user-font.rgb24.ref.png
new file mode 100644
index 00000000..b234a880
--- /dev/null
+++ b/test/reference/user-font.rgb24.ref.png
Binary files differ
diff --git a/test/reference/white-in-noop.argb32.ref.png b/test/reference/white-in-noop.argb32.ref.png
new file mode 100644
index 00000000..f42bb8d5
--- /dev/null
+++ b/test/reference/white-in-noop.argb32.ref.png
Binary files differ
diff --git a/test/reference/white-in-noop.rgb24.ref.png b/test/reference/white-in-noop.rgb24.ref.png
new file mode 100644
index 00000000..f42bb8d5
--- /dev/null
+++ b/test/reference/white-in-noop.rgb24.ref.png
Binary files differ
diff --git a/test/reference/world-map-fill.argb32.ref.png b/test/reference/world-map-fill.argb32.ref.png
new file mode 100644
index 00000000..fad82ee7
--- /dev/null
+++ b/test/reference/world-map-fill.argb32.ref.png
Binary files differ
diff --git a/test/reference/world-map-fill.rgb24.ref.png b/test/reference/world-map-fill.rgb24.ref.png
new file mode 100644
index 00000000..fad82ee7
--- /dev/null
+++ b/test/reference/world-map-fill.rgb24.ref.png
Binary files differ
diff --git a/test/reference/world-map-stroke.argb32.ref.png b/test/reference/world-map-stroke.argb32.ref.png
new file mode 100644
index 00000000..5c6e7d52
--- /dev/null
+++ b/test/reference/world-map-stroke.argb32.ref.png
Binary files differ
diff --git a/test/reference/world-map-stroke.rgb24.ref.png b/test/reference/world-map-stroke.rgb24.ref.png
new file mode 100644
index 00000000..5c6e7d52
--- /dev/null
+++ b/test/reference/world-map-stroke.rgb24.ref.png
Binary files differ
diff --git a/test/reference/world-map.argb32.ref.png b/test/reference/world-map.argb32.ref.png
new file mode 100644
index 00000000..12743675
--- /dev/null
+++ b/test/reference/world-map.argb32.ref.png
Binary files differ
diff --git a/test/reference/world-map.rgb24.ref.png b/test/reference/world-map.rgb24.ref.png
new file mode 100644
index 00000000..12743675
--- /dev/null
+++ b/test/reference/world-map.rgb24.ref.png
Binary files differ
diff --git a/test/reference/xcb-huge-image-shm.argb32.ref.png b/test/reference/xcb-huge-image-shm.argb32.ref.png
new file mode 100644
index 00000000..a0b24c8a
--- /dev/null
+++ b/test/reference/xcb-huge-image-shm.argb32.ref.png
Binary files differ
diff --git a/test/reference/xcb-huge-image-shm.rgb24.ref.png b/test/reference/xcb-huge-image-shm.rgb24.ref.png
new file mode 100644
index 00000000..a0b24c8a
--- /dev/null
+++ b/test/reference/xcb-huge-image-shm.rgb24.ref.png
Binary files differ
diff --git a/test/reference/xcb-huge-image-shm.xlib-fallback.rgb24.ref.png b/test/reference/xcb-huge-image-shm.xlib-fallback.rgb24.ref.png
new file mode 100644
index 00000000..a0b24c8a
--- /dev/null
+++ b/test/reference/xcb-huge-image-shm.xlib-fallback.rgb24.ref.png
Binary files differ
diff --git a/test/reference/xcb-huge-image-shm.xlib-window.rgb24.ref.png b/test/reference/xcb-huge-image-shm.xlib-window.rgb24.ref.png
new file mode 100644
index 00000000..a0b24c8a
--- /dev/null
+++ b/test/reference/xcb-huge-image-shm.xlib-window.rgb24.ref.png
Binary files differ
diff --git a/test/reference/xcb-huge-image-shm.xlib.argb32.ref.png b/test/reference/xcb-huge-image-shm.xlib.argb32.ref.png
new file mode 100644
index 00000000..a0b24c8a
--- /dev/null
+++ b/test/reference/xcb-huge-image-shm.xlib.argb32.ref.png
Binary files differ
diff --git a/test/reference/xcb-huge-image-shm.xlib.rgb24.ref.png b/test/reference/xcb-huge-image-shm.xlib.rgb24.ref.png
new file mode 100644
index 00000000..a0b24c8a
--- /dev/null
+++ b/test/reference/xcb-huge-image-shm.xlib.rgb24.ref.png
Binary files differ
diff --git a/test/reference/xcb-snapshot-assert.argb32.ref.png b/test/reference/xcb-snapshot-assert.argb32.ref.png
new file mode 100644
index 00000000..850ce59b
--- /dev/null
+++ b/test/reference/xcb-snapshot-assert.argb32.ref.png
Binary files differ
diff --git a/test/reference/xcb-snapshot-assert.rgb24.ref.png b/test/reference/xcb-snapshot-assert.rgb24.ref.png
new file mode 100644
index 00000000..850ce59b
--- /dev/null
+++ b/test/reference/xcb-snapshot-assert.rgb24.ref.png
Binary files differ
diff --git a/test/reference/xcb-stress-cache.argb32.ref.png b/test/reference/xcb-stress-cache.argb32.ref.png
new file mode 100644
index 00000000..850ce59b
--- /dev/null
+++ b/test/reference/xcb-stress-cache.argb32.ref.png
Binary files differ
diff --git a/test/reference/xcb-stress-cache.rgb24.ref.png b/test/reference/xcb-stress-cache.rgb24.ref.png
new file mode 100644
index 00000000..850ce59b
--- /dev/null
+++ b/test/reference/xcb-stress-cache.rgb24.ref.png
Binary files differ
diff --git a/test/reference/xcomposite-projection.argb32.ref.png b/test/reference/xcomposite-projection.argb32.ref.png
new file mode 100644
index 00000000..abbea086
--- /dev/null
+++ b/test/reference/xcomposite-projection.argb32.ref.png
Binary files differ
diff --git a/test/reference/xcomposite-projection.rgb24.ref.png b/test/reference/xcomposite-projection.rgb24.ref.png
new file mode 100644
index 00000000..abbea086
--- /dev/null
+++ b/test/reference/xcomposite-projection.rgb24.ref.png
Binary files differ
diff --git a/test/reference/xlib-expose-event.argb32.ref.png b/test/reference/xlib-expose-event.argb32.ref.png
new file mode 100644
index 00000000..fd71f5a3
--- /dev/null
+++ b/test/reference/xlib-expose-event.argb32.ref.png
Binary files differ
diff --git a/test/reference/xlib-expose-event.rgb24.ref.png b/test/reference/xlib-expose-event.rgb24.ref.png
new file mode 100644
index 00000000..fd71f5a3
--- /dev/null
+++ b/test/reference/xlib-expose-event.rgb24.ref.png
Binary files differ
diff --git a/test/reference/zero-alpha.argb32.ref.png b/test/reference/zero-alpha.argb32.ref.png
new file mode 100644
index 00000000..595c0aee
--- /dev/null
+++ b/test/reference/zero-alpha.argb32.ref.png
Binary files differ
diff --git a/test/reference/zero-alpha.rgb24.ref.png b/test/reference/zero-alpha.rgb24.ref.png
new file mode 100644
index 00000000..595c0aee
--- /dev/null
+++ b/test/reference/zero-alpha.rgb24.ref.png
Binary files differ
diff --git a/test/reference/zero-mask.argb32.ref.png b/test/reference/zero-mask.argb32.ref.png
new file mode 100644
index 00000000..ffae8d99
--- /dev/null
+++ b/test/reference/zero-mask.argb32.ref.png
Binary files differ