Hello Anton,

 now the fix looks fine to me.

Thanks,
Andrew

On 1/29/2014 5:23 PM, anton nashatyrev wrote:
Hello,

Andrew, thanks for review in offline! Here is the corrected fix: http://cr.openjdk.java.net/~anashaty/8023990/webrev.01/ <http://cr.openjdk.java.net/%7Eanashaty/8023990/webrev.01/>

Thanks!
Anton.

On 28.01.2014 22:52, anton nashatyrev wrote:
Hello,

    please review the following fix for JDK-9.

Phil, Andrew,

the fix had been approved by you for JDK-8 (but not yet pushed), this is the 'backport' to JDK-9. The patch has been applied without any modifications. The fix for JDK-9 was tested with the bug testcase and Font2D demo.

bug: https://jbs.oracle.com/bugs/browse/JDK-8023990
fix for JDK-8: http://cr.openjdk.java.net/%7Ealitvinov/8023990/webrev.00
fix for JDK-9: http://cr.openjdk.java.net/~anashaty/8023990/webrev.00/ <http://cr.openjdk.java.net/%7Eanashaty/8023990/webrev.00/>

[description from original review]

When the FcFontConfiguration was added for using fontconfig on a set of Linux platforms (as well as OpenSolaris) (the corresponding rfe is here <https://bugs.openjdk.java.net/browse/JDK-8023990>), the implementation of the method FcFontConfiguration.getFontDescriptors() returned just an empty array. This functionality is actually not used by anyone except of the PSPrinterJob which tries to find out whether the string could be represented using PS embedded font. If this procedure fails then the PSPrinterJob falls back to glyphs outline printing. As I understand this normally happened for strings containing non-ASCII characters. For ASCII strings PSPrinterJob usually selected the PS embedded font. With the addition of FcFontConfiguration even ASCII strings output starts to fall back to outlines.

The fix is some basic implementation of the getFontDescriptors() functionality. The returned FontDecriptors don't contain missing glyph information. Though it might be queried from the fontconfig library (with some additional effort) this doesn't change the behavior of PSPrinterJob, since all the fonts has the ISO 10646 encoding (UTF-8), and the PSPrinterJob will still be falling back to outlines for any non-ASCII strings.

Thanks!
Anton.


Reply via email to