All of lore.kernel.org
 help / color / mirror / Atom feed
From: Qianqian Fang <fangqq@gmail.com>
To: The development of GNU GRUB <grub-devel@gnu.org>
Subject: Re: fonts for gfxmenu, help needed
Date: Sat, 28 Nov 2009 17:33:34 -0500	[thread overview]
Message-ID: <4B11A53E.8090002@gmail.com> (raw)
In-Reply-To: <a5d587fb0911281353s5f319a24kd873f3aec71cebe3@mail.gmail.com>

Michal Suchanek wrote:
> Am I missing something? For me fontconfig was always a commandline
> tool. I do use some charmap tools but onen of them comes with
> fontconfig.

I am sorry, I meant "fontforge", not fontconfig. Those are
the steps to prepare a bitmap font (in bdf format, then
you can convert it to pf2)

> I wonder if this is reproducible with grub-mkfont.
>
> Also is autohinting free enough to be enabled in Debian and other
> distribution packages? I don't recall the exact details of the patent
> issues with different font rendering methods.
>   

I don't think so, but you can try. A good resterization requires
the font itself to contain the so called "hints", either PS hints
or TTF hints. But most free CJK vector fonts don't have it
build-in. That's why I have the steps to produce those in
fontforge.

Autohint is fine, the same for PS hints. It is the truetype hint
that has a patent, but I heard it got expired this Oct. I don't know
if it has been renewed or not. Ubuntu ships byte-code-enabled
freetype. Debian doesn't (at least a few years ago).

> I am not sure this is optimal method of rasterizing fonts. Perhaps
> grub should be improved to handle vector graphics or at least fonts
> rasterized into greyscale.
>   

As I said, to produce a good resterization, the font file need to
contain hints, but almost all free CJK fonts don't have. I don't
think grub can help in this aspect, unless you port the
"stem-extraction" code from fontforge, that's a lot of work.

> The uming_32px contains pretty large and mostly nice glyphs but they
> are still clearly pixelated, even at this size.
>
> Given the 1-bit bitmap limitation most glyphs look pretty good but the
> 灱 glyph just above the UmingCN title in the taskbar is particularly
> ugly. Is this an expected limitation of this rendering method that
> some glyphs simply turn out ugly or is this a bug in the font?
>   

I am not sure which glyph you are referring to, but if you
are talking about the AA-ed small-sized Han glyphs above each
bitmap, it is the direct rendering results from ZenHei by
freetype2, without embedded bitmaps and autohint, and
yes, they look blurry. In fact, all of the CJK fonts will look
blurry at that size. Fortunately, ZenHei has embedded bitmaps.

> Thanks
>
> Michal
>
>
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> http://lists.gnu.org/mailman/listinfo/grub-devel
>
>   




  reply	other threads:[~2009-11-28 22:33 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-11-26  4:38 fonts for gfxmenu, help needed Qianqian Fang
2009-11-26  9:11 ` Felix Zielcke
2009-11-26 15:27   ` Qianqian Fang
2009-11-26 22:14     ` Michal Suchanek
2009-11-27  0:48       ` Qianqian Fang
2009-11-27  0:51         ` Qianqian Fang
2009-11-27  9:42         ` Michal Suchanek
2009-11-28  1:46           ` Qianqian Fang
2009-11-28 21:53             ` Michal Suchanek
2009-11-28 22:33               ` Qianqian Fang [this message]
2009-11-28 22:43               ` Qianqian Fang
2009-11-29 11:19                 ` Michal Suchanek
2009-11-29 16:14                   ` Qianqian Fang
2009-11-29 16:23                     ` Vladimir 'φ-coder/phcoder' Serbinenko
2009-11-29 17:10                       ` Qianqian Fang
2009-11-29 19:36                         ` Vladimir 'φ-coder/phcoder' Serbinenko
2009-11-30  2:15                           ` Qianqian Fang
2009-11-30  9:44                     ` Michal Suchanek
2009-11-30 15:24                       ` Qianqian Fang
2009-11-30 16:10                         ` Michal Suchanek
2009-12-05 21:50                           ` Michal Suchanek
  -- strict thread matches above, loose matches on Subject: below --
2009-11-24 12:10 Robert Millan
2009-11-24 15:27 ` Michal Suchanek
2009-11-24 17:35   ` Robert Millan
2009-11-24 19:06     ` Colin D Bennett
2009-11-24 19:43       ` Vladimir 'φ-coder/phcoder' Serbinenko
2009-11-24 23:20         ` Robert Millan
2009-11-25  9:01           ` Michal Suchanek
2009-11-25 10:32             ` Vladimir 'φ-coder/phcoder' Serbinenko
2009-11-25 11:12               ` Michal Suchanek
2009-11-25 11:36                 ` Vladimir 'φ-coder/phcoder' Serbinenko
2009-11-25 12:29                   ` Michal Suchanek
2009-11-25 13:17                     ` Vladimir 'φ-coder/phcoder' Serbinenko
2009-11-25 13:57                   ` feng shu
2009-11-25 16:04                     ` Michal Suchanek
2009-11-25 17:42                       ` Vladimir 'φ-coder/phcoder' Serbinenko
2009-11-25 21:51                         ` Michal Suchanek
2009-11-26  2:58                         ` feng shu
2009-11-26  3:11                       ` feng shu
2009-11-25 11:15           ` Michal Suchanek
2009-11-25 11:38             ` Vladimir 'φ-coder/phcoder' Serbinenko
2009-11-24 18:12   ` Vladimir 'φ-coder/phcoder' Serbinenko
2009-11-24 18:29     ` Felix Zielcke

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4B11A53E.8090002@gmail.com \
    --to=fangqq@gmail.com \
    --cc=grub-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.