I am trying to render to a HDC that has been given an offset with OffsetViewportOrgEx. Except for text, Cairo does not draw anything to the part of the window that has been moved into view by the offset. This problem occurs with Cairo 1.10.2 (pixman 0.22.0). It works as expected with Cairo 1.8.10. I have attached some code that reproduces the problem, as well as screen captures from 1.10.2 (and 1.8.10) that show the broken (and working) rendering.
Created attachment 46633 [details] example of broken rendering with 1.10.2
Created attachment 46634 [details] example of working rendering with 1.8.10
Created attachment 46635 [details] code that created the example images
This problem seems related to https://bugs.freedesktop.org/show_bug.cgi?id=28541 (but I'm not yet sure it's actually a duplicate). I managed to reproduce it with cairo master and the patch provided in the above bugreport seems to work around part of this bug (in particular, it fixes the test.cpp output), but the extents computation is still incorrect.
The issue seems to be fixed by: commit 91faf9c1cf79f44b48c0f14d2d551a68bf38b5a5 Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Tue Jul 26 15:50:32 2011 +0100 composite: Pass unbounded extents to initialisation For an unbounded surface we cannot assume (0, 0, surface_width, surface_height) as that is wrong and causes the operation to appear clipped. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Please reopen if you manage to reproduce it on master.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.