On 03/11/2011 01:53 PM, Ulrike Fischer wrote:
Am Sun, 06 Feb 2011 10:25:06 +0100 schrieb Taco Hoekwater:

[About virtual fonts and tounicode entries]

The tounicode entries still don't work as expected; hopefully Taco can 
enlighten us.

tounicode (and the PDF /ToUnicode feature) works on the font glyphs
that are actually included in the pdf, that is why it does not work. In
the virtual font, it does notwork because there is no actual glyph, and
in the original is works 'too well' as both 'a' and 'b' use the same
glyph.

I have now a working virtual font which reencodes a chess font. But
I'm still struck how to manipulate the tounicode values. I have now
put various combinations of XXX.characters[YY].tounicode=ZZ  in
various places and nothing works. Can you tell me what I should do?

It does not work because the _real_ font needs tounicode values. As I
wrote earlier: tounicode works on actual glyphs, not virtual glyphs:

       -- u=target, v=source
       local real = font.fonts[id1]
       for u, v in next, reencoding do
           local c = chars[v]
            chars[u].commands = {{ 'char', v }}
            chars[u].kerns    = nil
            chars[u].width    = c.width
            chars[u].height   = c.height
            chars[u].depth    = c.depth
            chars[u].italic   = nil
            real.characters[v].tounicode = string.format("%04x",u)
       end
       font.fonts[id1] = real;

Best wishes,
Taco

Reply via email to