1. 26 2月, 2015 14 次提交
  2. 20 1月, 2015 1 次提交
  3. 13 12月, 2014 2 次提交
  4. 03 8月, 2014 1 次提交
  5. 12 7月, 2014 1 次提交
  6. 29 4月, 2014 1 次提交
  7. 29 1月, 2014 1 次提交
  8. 31 10月, 2013 1 次提交
  9. 19 10月, 2013 1 次提交
  10. 18 10月, 2013 2 次提交
  11. 10 9月, 2013 1 次提交
  12. 05 5月, 2013 4 次提交
  13. 22 4月, 2013 1 次提交
  14. 18 4月, 2013 1 次提交
    • B
      Obssesive optimization · 0dc3a4e0
      Behdad Esfahbod 提交于
      Not measurable by any means, but conceptually this is faster since
      the mask matches more often than the digest.
      0dc3a4e0
  15. 09 3月, 2013 2 次提交
  16. 15 2月, 2013 1 次提交
    • B
      [OTLayout] Ignore default-ignorables when matching GSUB/GPOS · 607feb7c
      Behdad Esfahbod 提交于
      When matching lookups, be smart about default-ignorable characters.
      In particular:
      
      Do nothing specific about ZWNJ, but for the other default-ignorables:
      
      If the lookup in question uses the ignorable character in a sequence,
      then match it as we used to do.  However, if the sequence match will
      fail because the default-ignorable blocked it, try skipping the
      ignorable character and continue.
      
      The most immediate thing it means is that if Lam-Alef forms a ligature,
      then Lam-ZWJ-Alef will do to.  Finally!
      
      One exception: when matching for GPOS, or for backtrack/lookahead of
      GSUB, we ignore ZWNJ too.  That's the right thing to do.
      
      It certainly is possible to build fonts that this feature will result
      in undesirable glyphs, but it's hard to think of a real-world case
      that that would happen.
      
      This *does* break Indic shaping right now, since Indic Unicode has
      specific rules for what ZWJ/ZWNJ mean, and skipping ZWJ is breaking
      those rules.  That will be fixed in upcoming commits.
      607feb7c
  17. 14 2月, 2013 2 次提交
  18. 12 2月, 2013 3 次提交
    • B
      Adjust mark advance-width zeroing logic for Myanmar · 56800027
      Behdad Esfahbod 提交于
      Before, we were zeroing advance width of attached marks for
      non-Indic scripts, and not doing it for Indic.
      
      We have now three different behaviors, which seem to better
      reflect what Uniscribe is doing:
      
        - For Indic, no explicit zeroing happens whatsoever, which
          is the same as before,
      
        - For Myanmar, zero advance width of glyphs marked as marks
          *in GDEF*, and do that *before* applying GPOS.  This seems
          to be what the new Win8 Myanmar shaper does,
      
        - For everything else, zero advance width of glyphs that are
          from General_Category=Mn Unicode characters, and do so
          before applying GPOS.  This seems to be what Uniscribe does
          for Latin at least.
      
      With these changes, positioning of all tests matches for Myanmar,
      except for the glitch in Uniscribe not applying 'mark'.  See preivous
      commit.
      56800027
    • B
      [OTLayout] Respect lookup-flags skipping over non-mark glyphs · 54f7b4d9
      Behdad Esfahbod 提交于
      Before, when matching ligatures, we never skipping over base / liga
      glyphs even if that was what the LookupFlags asked for.
      
      Fixed now.  We carefully reviewed all instances of this, and tested with
      Amiri as well as some Indic scripts, and are confident that this should
      NOT break anyone's fonts.  It's also how Uniscribe does it, from what
      we can tell.
      54f7b4d9
    • B
      [OTLayout] s/mark_skipping/skipping/ · 9082efc4
      Behdad Esfahbod 提交于
      In aticipation of upcoming changes.
      9082efc4