From kde-devel Wed Sep 30 15:56:03 2009 From: Benoit Jacob Date: Wed, 30 Sep 2009 15:56:03 +0000 To: kde-devel Subject: Re: Font hinting: suggestion to consistently restrict its usage to UI Message-Id: X-MARC-Message: https://marc.info/?l=kde-devel&m=125432622309554 MIME-Version: 1 Content-Type: multipart/mixed; boundary="--00c09f99e5496364330474cd912c" --00c09f99e5496364330474cd912c Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable 2009/9/30 Benoit Jacob : > 2009/9/29 Benoit Jacob : >> 2009/9/29 Albert Astals Cid : >>> You said you are not a font expert yet you claim this is because of fon= t >>> hinting. I see a logic problem here. I'm not a font expert so i really = don't >>> know if this is because of hinting or not. And no, you are not the firs= t >>> person to complain yet noone seems to scratch his itch. >> >> I can't say whether font hinting is the _only_ problem, that's true. >> Reading this comment, >> >> http://slangkamp.wordpress.com/2009/09/29/kword-font-rendering/#comment-= 99 >> >> it seems that the ideal solution would involve fixing the Qt backend >> of poppler. What do you think of this comment? >> >> Suppose that I volunteer for trying to do that. Where do I start? > > OK, so here's where I am. > > - Okular uses poppler-qt4. > > - It seems that Poppler-qt4 always =A0uses a Splash backend, indeed I > found this in poppler-qt4 sources: > > =A0 =A0 =A0 =A0case Document::ArthurBackend: > =A0 =A0 =A0 =A0// create a splash backend even in case of the Arthur Back= end > =A0 =A0 =A0 =A0case Document::SplashBackend: > =A0 =A0 =A0 =A0{ > > - So I started looking at the Splash backend sources and I have > comments. But i'll move this discussion to a poppler mailing list! I've now sent a patch to poppler, as it turns out that disabling hinting, at least in my setting, was actually the intention of the code but wasn't actually done only because of a bug. If anyone is interested to apply it locally, here's the patch against poppler; but the discussion has now moved to the poppler mailing list. Benoit --00c09f99e5496364330474cd912c Content-Type: text/x-patch; charset=US-ASCII; name="Fix-FT_Load_Glyph-flags.patch" Content-Disposition: attachment; filename="Fix-FT_Load_Glyph-flags.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g089em8c0 RnJvbSAyZjE5ZWZhODNhNzI2OGI1MjIzNzc3MjNlNDA3MDAyMDI1Mzc5NzhkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBCZW5vaXQgSmFjb2IgPGphY29iLmJlbm9pdC4xQGdtYWlsLmNv bT4KRGF0ZTogV2VkLCAzMCBTZXAgMjAwOSAxMDo1NzozMCAtMDQwMApTdWJqZWN0OiBbUEFUQ0hd IFVuaWZvcm1pemUgdGhlIGZsYWdzIHBhc3NlZCB0byBGVF9Mb2FkX0dseXBoLiBGaXggYW5kIHNp bXBsaWZ5IHRoZSB3YXkgdGhhdAogdGhleSBhcmUgY29tcHV0ZWQuCgoqIGludHJvZHVjZSBTcGxh c2hGVEZvbnQ6OmdldEZUTG9hZEZsYWdzKCkgcmV0dXJuaW5nIHRoZSBmbGFncyB0byB1c2UsCiAg c28gdGhhdCB0aGUgY29kZSBkZXRlcm1pbmluZyB0aGVtIGlzIGNlbnRyYWxpemVkIGluIDEgcGxh Y2UgKHVzZWQgdG8gYmUgMywKICBhbmQgb25lIG9mIHRoZW0gd2FzIGluY29uc2lzdGVudCB3aXRo IHRoZSBvdGhlcnMpCgoqIFRoZSBuZXcgc2ltcGxpZmllZCBsb2dpYyBpczoKCiAgICByZXR1cm4g YSA/IEZUX0xPQURfTk9fSElOVElORyB8IEZUX0xPQURfTk9fQklUTUFQIDogRlRfTE9BRF9ERUZB VUxUOwoKKiBOb3RpY2UgdGhhdCB0aGlzIGlzIGFscmVhZHkgdGhlIGxvZ2ljIHRoYXQgd2FzIG1l YW50IHRvIGJlIHVzZWQgd2hlbgogIHRoZSBieXRlY29kZSBpbnRlcnByZXRlciBpc24ndCBlbmFi bGVkLiBIb3dldmVyLCB0aGUgYnl0ZWNvZGUgaW50ZXJwcmV0ZXIKICBkZXRlY3Rpb24gd2FzIGNv bXBsZXRlbHkgYnJva2VuOiBpdCB3YXMgYmFzZWQgb24gdGhlIHByZXNlbmNlIG9mIHRoZQogIFRU X0NPTkZJR19PUFRJT05fQllURUNPREVfSU5URVJQUkVURVIgc3ltYm9sLCBidXQgdGhhdCBvbmx5 IHRlbGxzIHlvdQogIHdoZXRoZXIgdGhlIHN1cHBvcnQgd2FzIGVuYWJsZWQgaW4gdGhlIEZyZWVU eXBlIGJ1aWxkLCB0aGF0IHRlbGxzIG5vdGhpbmcKICBhYm91dCB3aGV0aGVyIGl0IGlzIGFjdHVh bGx5IGVuYWJsZWQgaW4gdGhlIHVzZXIncyBjb25maWd1cmF0aW9uLgogIEhlcmUgb24gT3BlblNV U0UgMTEuMiB0aGUgc3ltYm9sIHdhcyBkZWZpbmVkIGV2ZW4gdGhvdWdoIHRoZSBkZWZhdWx0CiAg Y29uZmlndXJhdGlvbiBoYWQgaXQgZGlzYWJsZWQuCgoqIEFsc28gbm90aWNlIHRoYXQsIHdoZW4g QUEgaXMgZW5hYmxlZCwgdGhlIGNob2ljZQoKICAgICBGVF9MT0FEX05PX0hJTlRJTkcgfCBGVF9M T0FEX05PX0JJVE1BUAoKICBpcyB0aGUgc2FtZSBhcyB3aGF0IGlzIGJlaW5nIHVzZWQgaW4gdGhl IENhaXJvIGJhY2stZW5kLiBUaGF0IGZlZWxzIGdvb2QuCiAgQWxzbywgaXQgYXBwZWFycyBhcyBp ZiBBZG9iZSBBY3JvYmF0IGFsc28gZGlzYWJsZXMgaGludGluZywgc28gdGhlcmUgaXMKICBxdWl0 ZSBzb21lIGNvbnNlbnN1cyBoZXJlLgoKKiBJIGxlZnQgdGhlIGxvZ2ljIHRoYXQgd2hlbiBBQSBp cyBkaXNhYmxlZCwgdGhlIGRlZmF1bHRzIG9wdGlvbnMgYXJlIHVzZWQKICAoc28gaGludGluZyBt YXkgYmUgdXNlZCkuIEkgZG9uJ3QgaGF2ZSBhbiBvcGluaW9uIG9uIG5vbi1BQSB0ZXh0LiBKdXN0 IEZZSSwKICBub3RpY2UgdGhhdCB0aGUgQ2Fpcm8gYmFjay1lbmQgZG9lc24ndCBkbyB0aGF0LCBp dCBhbHdheXMgZGlzYWJsZXMgaGludGluZy4KLS0tCiBzcGxhc2gvU3BsYXNoRlRGb250LmNjIHwg ICA2MCArKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogc3Bs YXNoL1NwbGFzaEZURm9udC5oICB8ICAgIDIgKwogMiBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRp b25zKCspLCA0OSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcGxhc2gvU3BsYXNoRlRGb250 LmNjIGIvc3BsYXNoL1NwbGFzaEZURm9udC5jYwppbmRleCA0YzYyZGM2Li5kMjVlMTgzIDEwMDY0 NAotLS0gYS9zcGxhc2gvU3BsYXNoRlRGb250LmNjCisrKyBiL3NwbGFzaC9TcGxhc2hGVEZvbnQu Y2MKQEAgLTE2Myw2ICsxNjMsMTIgQEAgU3BsYXNoRlRGb250OjpTcGxhc2hGVEZvbnQoU3BsYXNo RlRGb250RmlsZSAqZm9udEZpbGVBLCBTcGxhc2hDb29yZCAqbWF0QSwKIFNwbGFzaEZURm9udDo6 flNwbGFzaEZURm9udCgpIHsKIH0KIAorRlRfSW50MzIgU3BsYXNoRlRGb250OjpnZXRGVExvYWRG bGFncygpIGNvbnN0Cit7CisgIHJldHVybiBhYSA/IEZUX0xPQURfTk9fSElOVElORyB8IEZUX0xP QURfTk9fQklUTUFQCisgICAgICAgICAgICA6IEZUX0xPQURfREVGQVVMVDsKK30KKwogR0Jvb2wg U3BsYXNoRlRGb250OjpnZXRHbHlwaChpbnQgYywgaW50IHhGcmFjLCBpbnQgeUZyYWMsCiAJCQkg ICAgIFNwbGFzaEdseXBoQml0bWFwICpiaXRtYXAsIGludCB4MCwgaW50IHkwLCBTcGxhc2hDbGlw ICpjbGlwLCBTcGxhc2hDbGlwUmVzdWx0ICpjbGlwUmVzKSB7CiAgIHJldHVybiBTcGxhc2hGb250 OjpnZXRHbHlwaChjLCB4RnJhYywgMCwgYml0bWFwLCB4MCwgeTAsIGNsaXAsIGNsaXBSZXMpOwpA QCAtMTk2LDMwICsyMDIsOCBAQCBHQm9vbCBTcGxhc2hGVEZvbnQ6Om1ha2VHbHlwaChpbnQgYywg aW50IHhGcmFjLCBpbnQgeUZyYWMsCiAgICAgcmV0dXJuIGdGYWxzZTsKICAgfQogCi0gIGlmIChu b2FoKSB7Ci0gICAgaWYgKEZUX0xvYWRfR2x5cGgoZmYtPmZhY2UsIGdpZCwKLSAgICAgICAgICAg ICAgICAgICAgICBhYSA/IEZUX0xPQURfTk9fSElOVElORyB8IEZUX0xPQURfTk9fQklUTUFQCi0g ICAgICAgICAgICAgICAgICAgICAgICAgOiBGVF9MT0FEX0RFRkFVTFQpKSB7Ci0gICAgICByZXR1 cm4gZ0ZhbHNlOwotICAgIH0KLSAgfSBlbHNlIHsKLSAgICAvLyBpZiB3ZSBoYXZlIHRoZSBGVDIg Ynl0ZWNvZGUgaW50ZXJwcmV0ZXIsIGF1dG9oaW50aW5nIHdvbid0IGJlIHVzZWQKLSNpZmRlZiBU VF9DT05GSUdfT1BUSU9OX0JZVEVDT0RFX0lOVEVSUFJFVEVSCi0gICAgaWYgKEZUX0xvYWRfR2x5 cGgoZmYtPmZhY2UsIGdpZCwKLSAgICAgICAgICAgICAgICAgICAgICBhYSA/IEZUX0xPQURfTk9f QklUTUFQIDogRlRfTE9BRF9ERUZBVUxUKSkgewotICAgICAgcmV0dXJuIGdGYWxzZTsKLSAgICB9 Ci0jZWxzZQotICAgIC8vIEZUMidzIGF1dG9oaW50aW5nIGRvZXNuJ3QgYWx3YXlzIHdvcmsgdmVy eSB3ZWxsIChlc3BlY2lhbGx5IHdpdGgKLSAgICAvLyBmb250IHN1YnNldHMpLCBzbyB0dXJuIGl0 IG9mZiBpZiBhbnRpLWFsaWFzaW5nIGlzIGVuYWJsZWQ7IGlmCi0gICAgLy8gYW50aS1hbGlhc2lu ZyBpcyBkaXNhYmxlZCwgdGhpcyBzZWVtcyB0byBiZSBhIHRvc3N1cCAtIHNvbWUgZm9udHMKLSAg ICAvLyBsb29rIGJldHRlciB3aXRoIGhpbnRpbmcsIHNvbWUgd2l0aG91dCwgc28gbGVhdmUgaGlu dGluZyBvbgotICAgIGlmIChGVF9Mb2FkX0dseXBoKGZmLT5mYWNlLCBnaWQsCi0JCSAgICAgIGFh ID8gRlRfTE9BRF9OT19ISU5USU5HIHwgRlRfTE9BRF9OT19CSVRNQVAKLSAgICAgICAgICAgICAg ICAgICAgICAgICA6IEZUX0xPQURfREVGQVVMVCkpIHsKLSAgICAgIHJldHVybiBnRmFsc2U7Ci0g ICAgfQotI2VuZGlmCisgIGlmIChGVF9Mb2FkX0dseXBoKGZmLT5mYWNlLCBnaWQsIGdldEZUTG9h ZEZsYWdzKCkpKSB7CisgICAgcmV0dXJuIGdGYWxzZTsKICAgfQogCiAgIEZUX0dseXBoX01ldHJp Y3MgKmdseXBoTWV0cmljcyA9ICYoZmYtPmZhY2UtPmdseXBoLT5tZXRyaWNzKTsKQEAgLTI5Niwz MCArMjgwLDggQEAgZG91YmxlIFNwbGFzaEZURm9udDo6Z2V0R2x5cGhBZHZhbmNlKGludCBjKQog ICAgIHJldHVybiAtMTsKICAgfQogCi0gIGlmIChub2FoKSB7Ci0gICAgaWYgKEZUX0xvYWRfR2x5 cGgoZmYtPmZhY2UsIGdpZCwKLSAgICAgICAgICAgICAgICAgICAgICBhYSA/IEZUX0xPQURfTk9f SElOVElORyB8IEZUX0xPQURfTk9fQklUTUFQCi0gICAgICAgICAgICAgICAgICAgICAgICAgOiBG VF9MT0FEX0RFRkFVTFQpKSB7Ci0gICAgICByZXR1cm4gLTE7Ci0gICAgfQotICB9IGVsc2Ugewot ICAgIC8vIGlmIHdlIGhhdmUgdGhlIEZUMiBieXRlY29kZSBpbnRlcnByZXRlciwgYXV0b2hpbnRp bmcgd29uJ3QgYmUgdXNlZAotI2lmZGVmIFRUX0NPTkZJR19PUFRJT05fQllURUNPREVfSU5URVJQ UkVURVIKLSAgICBpZiAoRlRfTG9hZF9HbHlwaChmZi0+ZmFjZSwgZ2lkLAotCQkgICAgICBhYSA/ IEZUX0xPQURfTk9fQklUTUFQIDogRlRfTE9BRF9ERUZBVUxUKSkgewotICAgICAgcmV0dXJuIC0x OwotICAgIH0KLSNlbHNlCi0gICAgLy8gRlQyJ3MgYXV0b2hpbnRpbmcgZG9lc24ndCBhbHdheXMg d29yayB2ZXJ5IHdlbGwgKGVzcGVjaWFsbHkgd2l0aAotICAgIC8vIGZvbnQgc3Vic2V0cyksIHNv IHR1cm4gaXQgb2ZmIGlmIGFudGktYWxpYXNpbmcgaXMgZW5hYmxlZDsgaWYKLSAgICAvLyBhbnRp LWFsaWFzaW5nIGlzIGRpc2FibGVkLCB0aGlzIHNlZW1zIHRvIGJlIGEgdG9zc3VwIC0gc29tZSBm b250cwotICAgIC8vIGxvb2sgYmV0dGVyIHdpdGggaGludGluZywgc29tZSB3aXRob3V0LCBzbyBs ZWF2ZSBoaW50aW5nIG9uCi0gICAgaWYgKEZUX0xvYWRfR2x5cGgoZmYtPmZhY2UsIGdpZCwKLQkJ ICAgICAgYWEgPyBGVF9MT0FEX05PX0hJTlRJTkcgfCBGVF9MT0FEX05PX0JJVE1BUAotICAgICAg ICAgICAgICAgICAgICAgICAgIDogRlRfTE9BRF9ERUZBVUxUKSkgewotICAgICAgcmV0dXJuIC0x OwotICAgIH0KLSNlbmRpZgorICBpZiAoRlRfTG9hZF9HbHlwaChmZi0+ZmFjZSwgZ2lkLCBnZXRG VExvYWRGbGFncygpKSkgeworICAgIHJldHVybiAtMTsKICAgfQogCiAgIC8vIDY0LjAgaXMgMSBp biAyNi42IGZvcm1hdApAQCAtMzY2LDcgKzMyOCw3IEBAIFNwbGFzaFBhdGggKlNwbGFzaEZURm9u dDo6Z2V0R2x5cGhQYXRoKGludCBjKSB7CiAgICAgLy8gc2tpcCB0aGUgVHJ1ZVR5cGUgbm90ZGVm IGdseXBoCiAgICAgcmV0dXJuIE5VTEw7CiAgIH0KLSAgaWYgKEZUX0xvYWRfR2x5cGgoZmYtPmZh Y2UsIGdpZCwgRlRfTE9BRF9OT19CSVRNQVApKSB7CisgIGlmIChGVF9Mb2FkX0dseXBoKGZmLT5m YWNlLCBnaWQsIGdldEZUTG9hZEZsYWdzKCkpKSB7CiAgICAgcmV0dXJuIE5VTEw7CiAgIH0KICAg aWYgKEZUX0dldF9HbHlwaChzbG90LCAmZ2x5cGgpKSB7CmRpZmYgLS1naXQgYS9zcGxhc2gvU3Bs YXNoRlRGb250LmggYi9zcGxhc2gvU3BsYXNoRlRGb250LmgKaW5kZXggMTg4MWQ4ZS4uNjI3ZGNj MCAxMDA2NDQKLS0tIGEvc3BsYXNoL1NwbGFzaEZURm9udC5oCisrKyBiL3NwbGFzaC9TcGxhc2hG VEZvbnQuaApAQCAtNjIsNiArNjIsOCBAQCBwdWJsaWM6CiAgIHZpcnR1YWwgZG91YmxlIGdldEds eXBoQWR2YW5jZShpbnQgYyk7CiAKIHByaXZhdGU6CisKKyAgRlRfSW50MzIgZ2V0RlRMb2FkRmxh Z3MoKSBjb25zdDsKIAogICBGVF9TaXplIHNpemVPYmo7CiAgIEZUX01hdHJpeCBtYXRyaXg7Ci0t IAoxLjYuNC4yCgo= --00c09f99e5496364330474cd912c Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline >> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe << --00c09f99e5496364330474cd912c--