[prev in list] [next in list] [prev in thread] [next in thread] 

List:       mozilla-layout
Subject:    Re: Typography in Firefox
From:       John Daggett <jdaggett () mozilla ! com>
Date:       2011-10-12 0:11:58
Message-ID: 959681083.112399.1318378318465.JavaMail.root () zimbra1 ! shared ! sjc1 ! mozilla ! com
[Download RAW message or body]

Meir TOLEDANO wrote:

> 1. How, the browser validate a font? For example if the font have
> glyph codes in CC (control character), the font seems to be found
> invalid by Firefox. Another example, some malformed fonts has
> "unvisible" glyph (glyph with no contour but with width), how the
> render engine deals with. What is the exact rule? Which class in the
> source code is responsible of validation, where it is?

On Windows/OSX/Android our font-matching code explicitly treats some
control code ranges as "not available" so that we don't spend time
searching for a font for them.

> 2. What is the font rendering engine?  Is it FreeType? Which version?

If you're thinking about the code used to rasterize glyphs, we use
platform libraries, so FreeType on Linux, GDI/DirectWrite on Windows
and CoreGraphics on OSX.

> 3. Which font format is supported? Which one is recommended if any?
> Same question for mobile version of Firefox.

For downloadable fonts, WOFF is recommended but either TrueType or
OpenType CFF fonts will work just fine.

> 4. What about Kerning and Ligature in Firefox? Are they supported?
> Mobile version?

See for yourself!  Kerning and ligatures have been enabled by default
since Firefox 3.

> 5. About font fallbacking, CSS norm seems to recommend panose-1
> classification. Is this features supported?

Not sure what you looking at, the old 1998 CSS2 spec?  If a suitable
font is not found for a given character in the font family list, then
appropriate pref fonts are considered first (based on the coderange of
the character), otherwise all fonts on the system are searched.

> 6. Which font table (GDEF, FFTM...) is supported?

OpenType layout tables are supported, otherwise exact table support
varies by platform.

Keep in mind two things: (1) glyphs are always drawn using platform
libraries and (2) there is a sanitizer (same as Chrome) that validates
fonts before they are used.

Cheers,

John Daggett
Mozilla Japan
_______________________________________________
dev-tech-layout mailing list
dev-tech-layout@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-tech-layout
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic