[Issue 88613] Canvas: cairo-based font rendering

mox at openoffice.org mox at openoffice.org
Sun Apr 27 12:40:02 UTC 2008


To comment on the following update, log in, then open the issue:
http://www.openoffice.org/issues/show_bug.cgi?id=88613


User mox changed the following:

                What    |Old value                 |New value
================================================================================
                  Status|RESOLVED                  |REOPENED
--------------------------------------------------------------------------------
              Resolution|LATER                     |
--------------------------------------------------------------------------------




------- Additional comments from mox at openoffice.org Sun Apr 27 12:40:00 +0000 2008 -------
With the WIP2 patch, I'm able to get fonts rendered in cairo with correct
colors, size, bold/italic, underline, and shadow. Underlines and shadows seem to
be rendered manually by the Canvas (not by the font).

The patch is still using string based rendering (not glyph by glyph), so
advanced layouting is missing.

I'm getting the native font ID (with all the styling already set) for the
selected VCL Font, and rendering with that native font. I needed to add an
additional function:
sal_IntPtr          OutputDevice::GetFontId( const Font& rFont, float
fExactHeight ); 
to get the native font id. I guess the long term solution would be to add struct
SystemFontData to vcl/inc/vcl/sysdata.hxx and fill it appropriately.


So on Mac, I can get cairo-rendered text with e.g. Zapfino font showing up
nicely :) With 1 line of platform-specific code... This replaces the hundreds of
lines of code of all the DrawText, DrawTextArray functions in vcl/source and
their platform specific implementations.


Any suggestions on how to get the glyph-by-glyph information with
rendering::XTextLayout and/or from VCL is greatly appreciated.


---------------------------------------------------------------------
Please do not reply to this automatically generated notification from
Issue Tracker. Please log onto the website and enter your comments.
http://qa.openoffice.org/issue_handling/project_issues.html#notification




More information about the fonts-bugs mailing list