<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.6000.16481" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY
style="WORD-WRAP: break-word; -khtml-nbsp-mode: space; -khtml-line-break: after-white-space"
bgColor=#ffffff>
<DIV><FONT face="Arial Unicode MS">Hello</FONT></DIV>
<DIV><FONT face="Arial Unicode MS"></FONT> </DIV>
<DIV><FONT face="Arial Unicode MS">I wonder if there exists, or there are plans
for, a facility to modify the kerns of a Unicode and/or outline font within
XeTeX without specifically editing the font (which in itself could infringe the
licence)?</FONT></DIV>
<DIV><FONT face="Arial Unicode MS"></FONT> </DIV>
<DIV><FONT face="Arial Unicode MS">There are much less likely to be instances of
poor kerning between characters in Unicode fonts, since the designer will
(probably) have gone through the entire set, implementing kerns for all the
pairs (s)he thinks will occur, but even so there are bound to be instances that
have not been thought of: for example, in transliterated Arabic it is
common to use a greek asper and lenis for ayin and hamza, and before a
capital A (in roman or italic) this can look too gappy: one wants to bring
the Greek breathing close to the apex of the A.</FONT></DIV>
<DIV><FONT face="Arial Unicode MS"></FONT> </DIV>
<DIV><FONT face="Arial Unicode MS">At present I deal with such cases by having
e.g. {\ayinA} in my document, with the \cs defined as e.g. {`\kern -0.125em
A} (the first character after the { is meant to be a Greek asper). Much
more elegant would be e.g.:</FONT></DIV>
<DIV><FONT face="Arial Unicode MS"></FONT> </DIV>
<DIV><FONT face="Arial Unicode MS">\myfont = "Minion Pro" at 11pt</FONT></DIV>
<DIV><FONT face="Arial Unicode MS">\input myfont.krn</FONT></DIV>
<DIV><FONT face="Arial Unicode MS"></FONT> </DIV>
<DIV><FONT face="Arial Unicode MS">or, if fully integrated into XeTeX, something
like:</FONT></DIV>
<DIV><FONT face="Arial Unicode MS"></FONT> </DIV>
<DIV><FONT face="Arial Unicode MS">
<DIV><FONT face="Arial Unicode MS">\myfont = "Minion Pro"[:myfont.krn] at
11pt</FONT></DIV>
<DIV><FONT face="Arial Unicode MS"></FONT> </DIV>
<DIV>The file myfont.krn would be a list of user-defined kerns to be
applied to \myfont only within the document, e.g. something like:</DIV>
<DIV> </DIV>
<DIV>Q+] krn 250</DIV>
<DIV> </DIV>
<DIV>This would tell TeX to use a 250-unit kern between Q and ] (useful if the
font has an especially elaborate form of tail on the Q).</DIV>
<DIV> </DIV>
<DIV>If this works in principle, it could be extended to include automatic
invocation of ligatures, perhaps even from a different font - if one were, say,
experimenting with an ancient Greek font that would automatically invoke
the large number of old Greek ligatures, or German Fraktur (not that I'll ever
get round to the Greek project as Y.H. has resisted all attempts by me to
get him to return my font book!). (So instead of 'krn' in the list we
would have e.g. 'lig' - or whatever simple syntax seems best.)</DIV>
<DIV> </DIV>
<DIV>There may be reasons beyond my understanding why this is impossible, or
considered a bad idea, but I would certainly appreciate the facility to
fine-tune kerning within TeX rather than pull a font to bits for the sake of a
small cosmetic adjustment - just as most users (I suspect) like to say something
like:</DIV>
<DIV> </DIV>
<DIV> \input myhyphens</DIV>
<DIV> </DIV>
<DIV>in order to implement hyphenation of specialized words or
languages that TeX regularly hyphenates in an unsatisfactory way, without
getting immersed in the complexities of writing fresh hyphenation
patterns.</DIV>
<DIV> </DIV>
<DIV>Best</DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV>John</DIV>
<DIV></FONT> </DIV></DIV></BODY></HTML>