Re: [opensuse-factory] Re: Infinality Fonts
在 2012-8-28 下午9:23, <pgajdos@suse.cz>写道:
And intinality subpixel hinting algorithm in this patchset isn't patented until 2019? If yes, this is completely useless for me.
http://lists.freedesktop.org/archives/fontconfig/2012-June/004177.html http://lists.freedesktop.org/archives/fontconfig/2012-June/004178.html
Petr
The answer is no. It's not patented from 2010. Let's understand the case in common sense and technically. the common sense is infinality comes after 2010. so at least the algorithm it use is not patented. or its author goes into jail before us. technically, when its early release, I have to manually add the codes into freetype source code to remake an openSUSE patch...it's a very bad memory...but luckily I found its author just modify freetype's sub-pixel rendering a little bit for some fonts. eg render-y-direction-only instead of x and y. there's no new algorithm introduced, its just a freetype's autohint technology variant. this patch only applies on specific sets of fonts. if your fonts are not in the list. you are actually using freetype. freetype and most of the distros dont include it by default.is because its fonts list focus on proprietary fonts from MS and Apple which dont be on linux distros thus not the type of freetype and linux distros. it's nothing related to patent. since freetype also starts using its autohint in our own freetype package. And the color stuff patent didnt exist in infinality at all if I remember it correctly. because I dont think I saw any other color except for the common word RGB in its source.will check it again tomorrow. Anyway in short you guys can take it as a patch set that patch nothing to freetype using the same technology freetype uses. because the English.fonts it supports are mainly the long known bad ones like Arial in fontconfig tweak world. you have already have better ones like liberation or google.fonts. unless you decided to use Apple's fonts like monaco. But it will improve a lot for CJK fonts. as you may know, we have a lot of characters. each of them needs design. so open source community are in fact not able to provide good fonts. And free rendering solution always be bad on proprietary fonts. That's why we need it and I notice it because seems it's the only fix for such gap by now Marguerite -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
[wearing my FreeType maintainer hat]
the common sense is infinality comes after 2010. so at least the algorithm it use is not patented. or its author goes into jail before us.
The Infinality patch set consists of basically three parts. The first one, implementing ClearType support on the TrueType hinting engine level, has been already integrated into FreeType 2.4.10. The second one, improvements to the auto-hinter, is not yet added, but we are working on it as soon as FreeType gets a proper framework to control modules (like the auto-hinter). Right now, everything is done via environment variables, and I can't accept this. The third part contains improvements to the ClearType color filter. Part one and two are not patented. However, to make the third part work, you currently have to activate some FreeType code which is potentially patented. It's rather straightforward to circumvent this by providing sub-pixel handling outside of FreeType (i.e. rasterizing with the horizontal resolution increased by a factor of three, then applying a non-patented color filter), but this isn't implemented in the X server, AFAIK. Maybe Erik can shed more light onto this issue.
freetype and most of the distros dont include it by default because its fonts list focus on proprietary fonts from MS and Apple which dont be on linux distros thus not the type of freetype and linux distros. [...]
But it will improve a lot for CJK fonts.
Normally, CJK characters don't contain TrueType hints at all since this would approximately double the file size. Instead, bitmap strokes are provided for the most common characters at the most common ppem sizes. In other words, improvements in rasterizing CJK fonts is usually coming from the patches to the auto-hinter. Werner -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Hi all, very interesting topic.
The first one, implementing ClearType support on the TrueType hinting engine level, has been already integrated into FreeType 2.4.10.
I know a large code set from the infinality patch was added to git tree after 2.4.10 was released. Does this code set correspond to the first one?
Normally, CJK characters don't contain TrueType hints at all since this would approximately double the file size.
Since Japanese default fonts, IPA fonts, contain hinting data, I hope this change improves their rendering result. https://bugzilla.novell.com/show_bug.cgi?id=766319 I have not tested yet, I packaged a git head of FreeType2 and pushed it in M17N:Devel. By the way, subpixel rendering have been disabled by our spec file. Is this related to this topic? And can we enable this patch now? https://build.opensuse.org/package/view_file?file=freetype2-subpixel.patch&package=freetype2&project=M17N&rev=bf1ad725c63fe05c47eccee35d97551e Fuminobu TAKEYAMA (2012/08/30 19:05), Werner LEMBERG wrote:
[wearing my FreeType maintainer hat]
the common sense is infinality comes after 2010. so at least the algorithm it use is not patented. or its author goes into jail before us.
The Infinality patch set consists of basically three parts. The first one, implementing ClearType support on the TrueType hinting engine level, has been already integrated into FreeType 2.4.10. The second one, improvements to the auto-hinter, is not yet added, but we are working on it as soon as FreeType gets a proper framework to control modules (like the auto-hinter). Right now, everything is done via environment variables, and I can't accept this. The third part contains improvements to the ClearType color filter.
Part one and two are not patented. However, to make the third part work, you currently have to activate some FreeType code which is potentially patented. It's rather straightforward to circumvent this by providing sub-pixel handling outside of FreeType (i.e. rasterizing with the horizontal resolution increased by a factor of three, then applying a non-patented color filter), but this isn't implemented in the X server, AFAIK.
Maybe Erik can shed more light onto this issue.
freetype and most of the distros dont include it by default because its fonts list focus on proprietary fonts from MS and Apple which dont be on linux distros thus not the type of freetype and linux distros. [...]
But it will improve a lot for CJK fonts.
Normally, CJK characters don't contain TrueType hints at all since this would approximately double the file size. Instead, bitmap strokes are provided for the most common characters at the most common ppem sizes. In other words, improvements in rasterizing CJK fonts is usually coming from the patches to the auto-hinter.
Werner
-- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
The first one, implementing ClearType support on the TrueType hinting engine level, has been already integrated into FreeType 2.4.10.
I know a large code set from the infinality patch was added to git tree after 2.4.10 was released. Does this code set correspond to the first one?
Yes.
Normally, CJK characters don't contain TrueType hints at all since this would approximately double the file size.
Since Japanese default fonts, IPA fonts, contain hinting data, I hope this change improves their rendering result.
Ah, yes, this font indeed contains hints. So I have to correct what I've written in a previos mail :-) Anyways, the legibility at 10ppem is bad inspite of the hints. Werner -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On Thu, Aug 30, 2012 at 6:05 PM, Werner LEMBERG <wl@gnu.org> wrote:
Normally, CJK characters don't contain TrueType hints at all since this would approximately double the file size. Instead, bitmap strokes are provided for the most common characters at the most common ppem sizes. In other words, improvements in rasterizing CJK fonts is usually coming from the patches to the auto-hinter.
Hi, Werner Thanks for the detailed tech explanation! really learned a lot! CJK fonts used for screen display do contain TrueType hints, at least for common used ones (both proprietary and open source). So their sizes are...nearly 20 MB for a single font. eg: Microsoft YaHei/JhengHei, Apple Hiragino sans GB, STheiti and open source wqy-micro-hei and wqy-zen-hei. Old and bitmap fonts are nearly not usable for CJK fonts. Can you imagine the looking a character like 斡 displayed in 10px.......some strokes will even disappear...so a tiny adjustment is a must (hinting) and the hinting algorithms are important too (at least freetype's current one can't fulfill the needs), or it'll be even worse than without hinting. Anyway we discussed tech details of Freetype and Infinality in this thread because we want to know if infinality is acceptable for OBS. So can you please answer this question? Thanks Marguerite -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
CJK fonts used for screen display do contain TrueType hints, at least for common used ones (both proprietary and open source). So their sizes are...nearly 20 MB for a single font.
I really doubt that. The files are so large because they contain so much glyphs.
eg: Microsoft YaHei/JhengHei, Apple Hiragino sans GB, STheiti and open source wqy-micro-hei and wqy-zen-hei.
At least for wqy-microhei you are wrong: This font doesn't contain any hints for CJK characters.
Old and bitmap fonts are nearly not usable for CJK fonts.
??? Many professional TT fonts contain bitmaps for small sizes. For example, Hiragino Mincho Pro W3 contains 5 bitmap strokes for 9-13ppem.
Can you imagine the looking a character like 斡 displayed in 10px.......
Yes, I can; see the attached image how it is represented in the abovementioned Hiragino font. For such small sizes you *must* use bitmap representations to stay readable.
some strokes will even disappear...so a tiny adjustment is a must (hinting) and the hinting algorithms are important too (at least freetype's current one can't fulfill the needs), or it'll be even worse than without hinting.
You are completely wrong, sorry. I'm not aware of a *single* CJK font which contains hints for that small sizes.
Anyway we discussed tech details of Freetype and Infinality in this thread because we want to know if infinality is acceptable for OBS.
So can you please answer this question?
I can't, sorry. I'm neither enough acquainted with the ClearType filter patent, nor with the current developments of the X server. Werner
On Fri, Aug 31, 2012 at 4:04 AM, Werner LEMBERG <wl@gnu.org> wrote:
CJK fonts used for screen display do contain TrueType hints, at least for common used ones (both proprietary and open source). So their sizes are...nearly 20 MB for a single font.
I really doubt that. The files are so large because they contain so much glyphs.
Can you give me a hint that how large they should be?
eg: Microsoft YaHei/JhengHei, Apple Hiragino sans GB, STheiti and open source wqy-micro-hei and wqy-zen-hei.
At least for wqy-microhei you are wrong: This font doesn't contain any hints for CJK characters.
holy crap...seems they cheat on their website...their website said "hinting information builtin" in Chinese. OMG they're the only Chinese open source font project...but they cheat? I extend that cc list to its founder...
some strokes will even disappear...so a tiny adjustment is a must (hinting) and the hinting algorithms are important too (at least freetype's current one can't fulfill the needs), or it'll be even worse than without hinting.
You are completely wrong, sorry. I'm not aware of a *single* CJK font which contains hints for that small sizes.
Yes. I'm wrong. You message recalls me that information. But bitmap displays ugly. so we actually force the minimum font size for system to 12px like Windows XP did. so I thought hinting is also available to small sizes like 8px. Marguerite -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
CJK fonts used for screen display do contain TrueType hints, at least for common used ones (both proprietary and open source). So their sizes are...nearly 20 MB for a single font.
I really doubt that. The files are so large because they contain so much glyphs.
Can you give me a hint that how large they should be?
As I said: The size of a CJK font almost doubles if you use hints. For example, the `glyf' table of the Japanese font ipam.ttf has a size of 7530768 bytes (this is 93.5% of the font size), and the size for the instructions in all glyphs is 3320591 bytes, which is 44.1% of the glyph table.
At least for wqy-microhei you are wrong: This font doesn't contain any hints for CJK characters.
holy crap...seems they cheat on their website...their website said "hinting information builtin" in Chinese. OMG they're the only Chinese open source font project...but they cheat?
I extend that cc list to its founder...
[I've fixed his e-mail address in the CC list :-)] I've just had a deeper look, and indeed: wqy-microhei 0.2.0 beta doesn't contain any hints for CJK glyphs. Werner -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On 08/31/2012 12:03 AM, Werner LEMBERG wrote:
At least for wqy-microhei you are wrong: This font doesn't contain any hints for CJK characters.
holy crap...seems they cheat on their website...their website said "hinting information builtin" in Chinese. OMG they're the only Chinese open source font project...but they cheat?
the "hinting information" in our webpage was referred to the hinting for Latin/extended Latin glyphs, not CJK. We mentioned it because Droid Sans Fallback, from which our CJK glyphs were derived, does not even have hinting for Latin glyphs. As far as I know, there is no open source Chinese font that contains hinting for Hanzi/Kanji/Hanja. Even in the commercial fonts, CJK glyph hinting is very rare. In fact, the only one that I know, Microsoft Yahei, costs about $100 per glyph. I personally do not like it much as the strokes look distorted. If one like sharp rendering, he/she should try WQY Zen Hei Sharp. It has hand-made embedded bitmaps at all screen sizes. Qianqian
I extend that cc list to its founder... [I've fixed his e-mail address in the CC list :-)]
I've just had a deeper look, and indeed: wqy-microhei 0.2.0 beta doesn't contain any hints for CJK glyphs.
Werner
The information in this e-mail is intended only for the person to whom it is addressed. If you believe this e-mail was sent to you in error and the e-mail contains patient information, please contact the Partners Compliance HelpLine at http://www.partners.org/complianceline . If the e-mail was sent to you in error but does not contain patient information, please contact the sender and properly dispose of the e-mail. -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On Fri, Aug 31, 2012 at 9:14 PM, Qianqian Fang <fangq@nmr.mgh.harvard.edu> wrote:
the "hinting information" in our webpage was referred to the hinting for Latin/extended Latin glyphs, not CJK. We mentioned it because Droid Sans Fallback, from which our CJK glyphs were derived, does not even have hinting for Latin glyphs.
Hi, Fanq, Pretty clear, thanks.
As far as I know, there is no open source Chinese font that contains hinting for Hanzi/Kanji/Hanja. Even in the commercial fonts, CJK glyph hinting is very rare. In fact, the only one that I know, Microsoft Yahei, costs about $100 per glyph. I personally do not like it much as the strokes look distorted. If one like sharp rendering, he/she should try WQY Zen Hei Sharp. It has hand-made embedded bitmaps at all screen sizes.
Ok, we'll gave it a try. And another question: We just set WQY Micro Hei as the default Chinese font for our distribution openSUSE 12.2. (That's why we care about its technical details...Actually I'm also a wqy contributor who makes few Micro Hei online. Nice tool BTW. Which one among wqy series do you think has the best performance for screen display like menus, toolbars etc? I myself think everyone of them is outstanding among Chinese fonts(I'm a YaHei hater too), but we do have to choose the best...so "editors' choice", please? Marguerite -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On 08/31/2012 11:39 AM, Marguerite Su wrote:
Ok, we'll gave it a try. And another question: We just set WQY Micro Hei as the default Chinese font for our distribution openSUSE 12.2. (That's why we care about its technical details...Actually I'm also a wqy contributor who makes few Micro Hei online. Nice tool BTW. Which one among wqy series do you think has the best performance for screen display like menus, toolbars etc? I myself think everyone of them is outstanding among Chinese fonts(I'm a YaHei hater too), but we do have to choose the best...so "editors' choice", please?
which font looks the best is a matter of personal preference. As you are aware of, it varies quite a bit among the community, and evolves with the popular display resolution on the market. I personally have been using micro hei as my default *desktop* (not just CJK) font for almost two years. Fedora has been using bitmaps (bitmapsong/zenhei sharp) as the default since F8; Ubuntu ships Micro Hei in the live CD since 9.10 (if I remember correctly). Micro Hei has a modern look, and is very compact. I like it a lot mainly because it has better Latin glyph design than Dejavu (I use en_US mostly, and I don't like some kerning pairs in Dejavu [1]). So the first thing after installing a system is to set Micro Hei as the desktop default font. On a low resolution screen, BitmapSong/Zen Hei Sharp remains my first choice, in which case I will put Latin fonts (which has hinting) like Dejavu/Droid in front of them in fontconfig. hope this helps. Qianqian [1] https://bugs.freedesktop.org/show_bug.cgi?id=24515
Marguerite
The information in this e-mail is intended only for the person to whom it is addressed. If you believe this e-mail was sent to you in error and the e-mail contains patient information, please contact the Partners Compliance HelpLine at http://www.partners.org/complianceline . If the e-mail was sent to you in error but does not contain patient information, please contact the sender and properly dispose of the e-mail.
On 08/30/2012 05:05 AM, Werner LEMBERG wrote:
Part one and two are not patented. However, to make the third part work, you currently have to activate some FreeType code which is potentially patented. It's rather straightforward to circumvent this by providing sub-pixel handling outside of FreeType (i.e. rasterizing with the horizontal resolution increased by a factor of three, then applying a non-patented color filter), but this isn't implemented in the X server, AFAIK. Maybe Erik can shed more light onto this issue.
Unfortunately that is about the limit of my understanding on the patent / LCD situation. Werner- Didn't you say at one point that it wasn't the filtering technique that was patented, but rather the specific variables (subpixel intensities) used in the filtering? If that's the case then you'd just have to make sure that the FIR 5 values are not patented. Based on my understanding of what MS is doing, they are in fact weighing colors differently based on how the human eye perceives them ( http://research.microsoft.com/pubs/68972/optfilt.pdf). This is certainly beyond anything Freetype is doing, as I understand it anyway.
freetype and most of the distros dont include it by default because its fonts list focus on proprietary fonts from MS and Apple which dont be on linux distros thus not the type of freetype and linux distros. [...]
But it will improve a lot for CJK fonts. Normally, CJK characters don't contain TrueType hints at all since this would approximately double the file size. Instead, bitmap strokes are provided for the most common characters at the most common ppem sizes. In other words, improvements in rasterizing CJK fonts is usually coming from the patches to the auto-hinter.
MS fonts like Meiryo do have TT hints in them and end up *substantially* benefiting in appearace with the Infinality patch. For other CJK fonts without TT hints, it of course that has no effect and it uses the autohinter. Regards, Erik -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
However, to make the third part work, you currently have to activate some FreeType code which is potentially patented. It's rather straightforward to circumvent this by providing sub-pixel handling outside of FreeType (i.e. rasterizing with the horizontal resolution increased by a factor of three, then applying a non-patented color filter), but this isn't implemented in the X server, AFAIK. Maybe Erik can shed more light onto this issue.
Werner- Didn't you say at one point that it wasn't the filtering technique that was patented, but rather the specific variables (subpixel intensities) used in the filtering?
Yes, I think so.
If that's the case then you'd just have to make sure that the FIR 5 values are not patented. Based on my understanding of what MS is doing, they are in fact weighing colors differently based on how the human eye perceives them ( http://research.microsoft.com/pubs/68972/optfilt.pdf). This is certainly beyond anything Freetype is doing, as I understand it anyway.
I've again extended the CC list. David, can you comment? You've written FreeType's FIR code, so you probably know it best. Werner -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
participants (5)
-
Erik
-
Fuminobu TAKEYAMA
-
Marguerite Su
-
Qianqian Fang
-
Werner LEMBERG