Hans Hagen wrote:
>
> I'll work this out asap; this is what i use as test file (unfortunately
> this font does not show chars, so i have do download a proper font first);
> i attached a script that i apply to a ttf file ( ttftfmxx.pl htfs.ttf 0 255 )
>
> \chardef\utfunihashmode=1
> \pdfmapfile{+htfsxx.map}
> \definefontsynonym [TestRegular] [htfs]
> \defineunicodefont [SomeFont] [Test]
> \SomeFont \enableregime[utf] % todo: autoutf, else problem
> \starttekst
> %^^eb^^bf^^a1
> %^^ec^^80^^80
> \utfunifontglyph{\numexpr("BFE1)}
> \utfunifontglyph{\numexpr("C000)}
> \stoptekst
Even though I used \utfunifontglyph{\numexpr("C000)} instead of ^^ec^^80^^80,
the result was the same, that is, the character was not shown correctly
(= empty).
I forgot one thing to comment. Bitstream Cyberbit font does not have the glyph
for the character U+C000. So it may be better to test the character U+C0C1
(= ^^ec^^83^^81).
Bitstream Cyberbit font (Cyberbit.ZIP) can be download from
http://ftp.netscape.com/pub/communicator/extras/fonts/windows/
Here is the log message after turnning on \tracingmacros. The difference is
that "BFE1 calls \unicodeglyph, but "C0C1 calls \doutfunihsh.
1. Log message for \utfunifontglyph{\numexpr("BFE1)}
=================================================
\utfunifontglyph #1->\xdef \unidiv {\number \utfdiv {#1}}\xdef \unimod {\number
\utfmod {#1}}\ifnum #1<\utf@i \char \unimod \else \ifcsname \@@univector \unid
iv \endcsname \csname \doutfunihash {\unidiv }{#1}\endcsname \else \unicodeglyp
h \unidiv \unimod \fi \fi
#1<-\numexpr ("BFE1)
\utfdiv #1->\number \numexpr ((#1-\utf@g )/\utf@h )
#1<-\numexpr ("BFE1)
\utfmod #1->\number \numexpr (#1-\utf@h *((#1-\utf@g )/\utf@h ))
#1<-\numexpr ("BFE1)
\@@univector ->univ
\unidiv ->191
\unicodeglyph #1#2->\bgroup \getvalue {@@\currentucharmapping \strippedcsname \
uchar }{#1}{#2}\bodyfontsize \unicodescale \bodyfontsize \font \unicodefont =\t
ruefontname {\truefontname \unicodestyle \unicodeone } at \currentfontscale \bo
dyfontsize \unicodestrut \unicodefont \unicodecharcommand {\char \unicodetwo \r
elax }\egroup
#1<-\unidiv
#2<-\unimod
... [REMOVED]
2. Log message for \utfunifontglyph{\numexpr("C0C1)}
=================================================
\utfunifontglyph #1->\xdef \unidiv {\number \utfdiv {#1}}\xdef \unimod {\number
\utfmod {#1}}\ifnum #1<\utf@i \char \unimod \else \ifcsname \@@univector \unid
iv \endcsname \csname \doutfunihash {\unidiv }{#1}\endcsname \else \unicodeglyp
h \unidiv \unimod \fi \fi
#1<-\numexpr ("C0C1)
\utfdiv #1->\number \numexpr ((#1-\utf@g )/\utf@h )
#1<-\numexpr ("C0C1)
\utfmod #1->\number \numexpr (#1-\utf@h *((#1-\utf@g )/\utf@h ))
#1<-\numexpr ("C0C1)
\@@univector ->univ
\unidiv ->192
\doutfunihash #1#2->\ifcsname \@@univector \number #1\endcsname \csname \@@univ
ector #1\endcsname {\utfmod {#2}}\else \@@unknownchar \fi
#1<-\unidiv
#2<-\numexpr ("C0C1)
\@@univector ->univ
\unidiv ->192
\@@univector ->univ
\unidiv ->192
\univ192 #1->
#1<-\utfmod {\numexpr ("C0C1)}
[NO MESSAGE FURTHER]
Best, ChoF.
--
*** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ***
^ ^ | ChoF := Jin-Hwan Cho | *^ ^*
o | [EMAIL PROTECTED] | * o *
*** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ***
*^ ^* | Project Manager of | ^ ^
* O * | DVIPDFMx and MiKTeX-KTUG | O
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Research Fellow, School of Mathematics |
| Korea Institute for Advanced Study |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
_______________________________________________
ntg-context mailing list
[EMAIL PROTECTED]
http://www.ntg.nl/mailman/listinfo/ntg-context