← Back to team overview

documentation-packages team mailing list archive

[Bug 1258520] [NEW] Hangul glyphs in "WenQuanYi Micro Hei" overlap one another in Chromium (incorrect advanceWidth in hmtx table)

 

Public bug reported:

The following Chromium Issue was reported on 2011-06-13:

    "WenQuanYi Micro Hei" is rendered incorrectly on Linux
    https://code.google.com/p/chromium/issues/detail?id=85890

with a screenshot that the Hangul glyphs were overlapping each other,
and hence unreadable.

Using FontTools/TTX for analysis, e.g. by running

    ttx -x glyf -y 0 wqy-microhei.ttc

an XML file is generated, showing the following Horizontal Matrix table:

  <hmtx>
    ...
    <mtx name="uni9FC0" width="2048" lsb="104"/>
    <mtx name="uni9FC1" width="2048" lsb="96"/>
    <mtx name="uni9FC2" width="2048" lsb="104"/>
    <mtx name="uni9FC3" width="2048" lsb="112"/>
    <mtx name="uniAC00" width="256" lsb="128"/>
    <mtx name="uniAC01" width="256" lsb="112"/>
    <mtx name="uniAC02" width="256" lsb="112"/>
    <mtx name="uniAC03" width="256" lsb="112"/>
    <mtx name="uniAC04" width="256" lsb="112"/>
    ...
    <mtx name="uniAC6E" width="256" lsb="72"/>
    <mtx name="uniAC6F" width="256" lsb="72"/>
    <mtx name="uniAC70" width="2048" lsb="88"/>
    <mtx name="uniAC71" width="256" lsb="72"/>
    <mtx name="uniAC72" width="256" lsb="72"/>
    ...
    <mtx name="uniACA6" width="256" lsb="72"/>
    <mtx name="uniACA7" width="256" lsb="72"/>
    <mtx name="uniACA8" width="2048" lsb="88"/>
    <mtx name="uniACA9" width="256" lsb="72"/>
    <mtx name="uniACAA" width="256" lsb="72"/>
    ...
    <mtx name="uniD7A1" width="256" lsb="168"/>
    <mtx name="uniD7A2" width="256" lsb="168"/>
    <mtx name="uniD7A3" width="256" lsb="168"/>
    <mtx name="uniF900" width="256" lsb="136"/>
    <mtx name="uniF901" width="2048" lsb="104"/>
    <mtx name="uniF902" width="2048" lsb="104"/>
    <mtx name="uniF903" width="256" lsb="168"/>
    <mtx name="uniF904" width="256" lsb="88"/>
    <mtx name="uniF905" width="2048" lsb="216"/>
    <mtx name="uniF906" width="2048" lsb="128"/>
    <mtx name="uniF907" width="2048" lsb="96"/>
    <mtx name="uniF908" width="2048" lsb="96"/>
    <mtx name="uniF909" width="256" lsb="80"/>
    <mtx name="uniF90A" width="2048" lsb="80"/>
    <mtx name="uniF90B" width="256" lsb="160"/>
    <mtx name="uniF90C" width="256" lsb="104"/>
    <mtx name="uniF90D" width="256" lsb="80"/>
    <mtx name="uniF90E" width="2048" lsb="72"/>
    <mtx name="uniF90F" width="256" lsb="96"/>
    <mtx name="uniF910" width="256" lsb="128"/>
    <mtx name="uniF911" width="256" lsb="128"/>
    ...
    <mtx name="uniFA25" width="2048" lsb="96"/>
    <mtx name="uniFA26" width="256" lsb="104"/>
    <mtx name="uniFA27" width="256" lsb="88"/>
    <mtx name="uniFA28" width="256" lsb="88"/>
    <mtx name="uniFA29" width="256" lsb="168"/>
    <mtx name="uniFA2A" width="2048" lsb="80"/>
    <mtx name="uniFA2B" width="256" lsb="80"/>
    <mtx name="uniFA2C" width="2048" lsb="80"/>
    <mtx name="uniFA2D" width="256" lsb="48"/>
    ...
  </hmtx>

Apparently, WenQuanYi Micro Hei uses a horizontal advance width of 2048
for CJK characters by default, e.g.:

    <mtx name="uni9FC0" width="2048" lsb="104"/>
    <mtx name="uni9FC1" width="2048" lsb="96"/>
    <mtx name="uni9FC2" width="2048" lsb="104"/>
    <mtx name="uni9FC3" width="2048" lsb="112"/>

whereas DroidSansFallback.ttf uses a horizontal advance width of 256 for
CJK characters by default.

Perhaps something went wrong when the Hangul (and related Korean Han
fallback glyphs) from DroidSansFallback.ttf were merged into WenQuanYi
Micro Hei?

** Affects: chromium-browser
     Importance: Unknown
         Status: Unknown

** Affects: ttf-wqy-microhei (Ubuntu)
     Importance: Undecided
         Status: New

** Affects: ttf-wqy-microhei (Debian)
     Importance: Unknown
         Status: Unknown

** Bug watch added: Debian Bug tracker #714641
   http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=714641

** Also affects: ttf-wqy-microhei (Debian) via
   http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=714641
   Importance: Unknown
       Status: Unknown

** Bug watch added: code.google.com/p/chromium/issues #85890
   http://code.google.com/p/chromium/issues/detail?id=85890

** Also affects: chromium-browser via
   http://code.google.com/p/chromium/issues/detail?id=85890
   Importance: Unknown
       Status: Unknown

-- 
You received this bug notification because you are a member of
Documentation Packages, which is subscribed to ttf-wqy-microhei in
Ubuntu.
https://bugs.launchpad.net/bugs/1258520

Title:
  Hangul glyphs in "WenQuanYi Micro Hei" overlap one another in Chromium
  (incorrect advanceWidth in hmtx table)

Status in Chromium Browser:
  Unknown
Status in “ttf-wqy-microhei” package in Ubuntu:
  New
Status in “ttf-wqy-microhei” package in Debian:
  Unknown

Bug description:
  The following Chromium Issue was reported on 2011-06-13:

      "WenQuanYi Micro Hei" is rendered incorrectly on Linux
      https://code.google.com/p/chromium/issues/detail?id=85890

  with a screenshot that the Hangul glyphs were overlapping each other,
  and hence unreadable.

  Using FontTools/TTX for analysis, e.g. by running

      ttx -x glyf -y 0 wqy-microhei.ttc

  an XML file is generated, showing the following Horizontal Matrix
  table:

    <hmtx>
      ...
      <mtx name="uni9FC0" width="2048" lsb="104"/>
      <mtx name="uni9FC1" width="2048" lsb="96"/>
      <mtx name="uni9FC2" width="2048" lsb="104"/>
      <mtx name="uni9FC3" width="2048" lsb="112"/>
      <mtx name="uniAC00" width="256" lsb="128"/>
      <mtx name="uniAC01" width="256" lsb="112"/>
      <mtx name="uniAC02" width="256" lsb="112"/>
      <mtx name="uniAC03" width="256" lsb="112"/>
      <mtx name="uniAC04" width="256" lsb="112"/>
      ...
      <mtx name="uniAC6E" width="256" lsb="72"/>
      <mtx name="uniAC6F" width="256" lsb="72"/>
      <mtx name="uniAC70" width="2048" lsb="88"/>
      <mtx name="uniAC71" width="256" lsb="72"/>
      <mtx name="uniAC72" width="256" lsb="72"/>
      ...
      <mtx name="uniACA6" width="256" lsb="72"/>
      <mtx name="uniACA7" width="256" lsb="72"/>
      <mtx name="uniACA8" width="2048" lsb="88"/>
      <mtx name="uniACA9" width="256" lsb="72"/>
      <mtx name="uniACAA" width="256" lsb="72"/>
      ...
      <mtx name="uniD7A1" width="256" lsb="168"/>
      <mtx name="uniD7A2" width="256" lsb="168"/>
      <mtx name="uniD7A3" width="256" lsb="168"/>
      <mtx name="uniF900" width="256" lsb="136"/>
      <mtx name="uniF901" width="2048" lsb="104"/>
      <mtx name="uniF902" width="2048" lsb="104"/>
      <mtx name="uniF903" width="256" lsb="168"/>
      <mtx name="uniF904" width="256" lsb="88"/>
      <mtx name="uniF905" width="2048" lsb="216"/>
      <mtx name="uniF906" width="2048" lsb="128"/>
      <mtx name="uniF907" width="2048" lsb="96"/>
      <mtx name="uniF908" width="2048" lsb="96"/>
      <mtx name="uniF909" width="256" lsb="80"/>
      <mtx name="uniF90A" width="2048" lsb="80"/>
      <mtx name="uniF90B" width="256" lsb="160"/>
      <mtx name="uniF90C" width="256" lsb="104"/>
      <mtx name="uniF90D" width="256" lsb="80"/>
      <mtx name="uniF90E" width="2048" lsb="72"/>
      <mtx name="uniF90F" width="256" lsb="96"/>
      <mtx name="uniF910" width="256" lsb="128"/>
      <mtx name="uniF911" width="256" lsb="128"/>
      ...
      <mtx name="uniFA25" width="2048" lsb="96"/>
      <mtx name="uniFA26" width="256" lsb="104"/>
      <mtx name="uniFA27" width="256" lsb="88"/>
      <mtx name="uniFA28" width="256" lsb="88"/>
      <mtx name="uniFA29" width="256" lsb="168"/>
      <mtx name="uniFA2A" width="2048" lsb="80"/>
      <mtx name="uniFA2B" width="256" lsb="80"/>
      <mtx name="uniFA2C" width="2048" lsb="80"/>
      <mtx name="uniFA2D" width="256" lsb="48"/>
      ...
    </hmtx>

  Apparently, WenQuanYi Micro Hei uses a horizontal advance width of
  2048 for CJK characters by default, e.g.:

      <mtx name="uni9FC0" width="2048" lsb="104"/>
      <mtx name="uni9FC1" width="2048" lsb="96"/>
      <mtx name="uni9FC2" width="2048" lsb="104"/>
      <mtx name="uni9FC3" width="2048" lsb="112"/>

  whereas DroidSansFallback.ttf uses a horizontal advance width of 256
  for CJK characters by default.

  Perhaps something went wrong when the Hangul (and related Korean Han
  fallback glyphs) from DroidSansFallback.ttf were merged into WenQuanYi
  Micro Hei?

To manage notifications about this bug go to:
https://bugs.launchpad.net/chromium-browser/+bug/1258520/+subscriptions


Follow ups

References