ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Khaled Hosny <khaledhosny@eglug.org>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: Two problems about CJK fonts with the beta	(2010.05.22)
Date: Sun, 23 May 2010 14:39:31 +0300	[thread overview]
Message-ID: <20100523113931.GC2320@khaled-laptop> (raw)
In-Reply-To: <4BF8E896.7080303@elvenkind.com>

On Sun, May 23, 2010 at 10:34:30AM +0200, Taco Hoekwater wrote:
> Taco Hoekwater wrote:
> >
> >Hi,
> >
> >Li Yanrui (李延瑞) wrote:
> >>Hi,
> >>
> >>1. The characters overlaps each other and can not be set size.
> >>
> >>The is a mini example.
> >>
> >>\definefont[song][name:simsun at 12pt]
> >>\starttext
> >>
> >>\song 测试
> >>
> >>\stoptext
> >>
> >>The attachment is its output.
> >
> >Verified.
> >
> >This actually looked fine here with the current 2010.05.21 11:10,
> >but the beta 2010.05.22 12:06 MKIV is broken, producing the same
> >output you have.
> 
> Some debugging applied. This line in font-otf.lua:
> 
>   tfm.format = (metadata.order2 == 1 and 'truetype') or 'opentype'
> 
> produces 'opentype' for simsun.ttf, and so all glyphs are printed
> at 2.048 times the normal size in the PDF output.
> 
> This is because the key metadata.order2 doesn't exist _anywhere_ in
> the context source (except in this test). But neither did it exist in
> the official current. The context current did tfm.format later.
> 
> Patch to revert back to the current's behaviour:
> 
> --- font-otf.lua~ 2010-05-23 10:20:10.979586135 +0200
> +++ font-otf.lua  2010-05-23 10:31:14.153587544 +0200
> @@ -1653,6 +1652,13 @@
>          local otfdata = tfmtable.shared.otfdata
>          tfmtable.name = specification.name
>          tfmtable.sub = specification.sub
> +        if otfdata.metadata.order2 == 0 then
> +            tfmtable.format = 'opentype'
> +        elseif otfdata.metadata.order2 == 1 then
> +            tfmtable.format = 'truetype'
> +        else
> +            tfmtable.format = specification.format
> +        end
>          local s = specification.size
>          local m = otfdata.metadata.math
>          if m then

I'm wondering if the 'if' statment is even necessary, metadata.order2
doesn't exist neither in context nor in luatex generated tables, so the
above statment always resolve to 'tfmtable.format = specification.format'.
-- 
 Khaled Hosny
 Arabic localiser and member of Arabeyes.org team
 Free font developer
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

      parent reply	other threads:[~2010-05-23 11:39 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-23  7:22 Li Yanrui (李延瑞)
2010-05-23  8:04 ` Taco Hoekwater
2010-05-23  8:34   ` Taco Hoekwater
2010-05-23  8:43     ` Taco Hoekwater
2010-05-23 11:39     ` Khaled Hosny [this message]

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=20100523113931.GC2320@khaled-laptop \
    --to=khaledhosny@eglug.org \
    --cc=ntg-context@ntg.nl \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).