Apache OpenOffice (AOO) Bugzilla – Issue 112193
Aqua: avoid vertically-flipped graphics contexts
Last modified: 2013-07-30 02:14:19 UTC
The VCL coordinate system is vertically flipped compared to the Quartz coordinate system. There are two possible approaches to handle this: 1. use a y-flipped height-shifted CTM for the graphics context to allow using VCL coordinates directly 2. flip y-coordinates manually before operating on a unity-CTM graphics context OOo's aqua-port choose method 1 and both approaches should work the same. Unfortunately it shows that OSX implements some improvements only for unity-CTM graphics contexts. Moving the baseline of text to pixel boundaries is probably the most important thing that is missing in y-flipped contexts, which cannot be emulated by moving the text coordinates. This results in grayish text baselines for y- flipped contexts whereas a unity-CTM graphics context gets higher contrast baselines. Unless Quartz/ATSUI/CoreText provide the chance to get the same look also for flipped-CTM graphics contexts we should consider to re-implement the VCL->Quartz glue code with approach 2 mentioned above.
If there's something I can help you with, albeit I'm not a developer, let me know.
thanks for the offer
There is a good chance that the text improvements mentioned in my issue summary will also be implemented for some non-unity CTMs: Quartz docs advise to use a y-flip transformation for for drawing text onto a view on iOS, since it uses the same coordinate convention as VCL of the upper left corner being the origin of the coordinate system extending downwards. As of OSX 10.6.4 this doesn't seem to be the case yet.
Reset assignee on issues not touched by assignee in more than 2000 days.