<!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>&nbsp;</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&nbsp;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>&nbsp;</DIV>
<DIV><FONT face="Arial Unicode MS">There are much less likely to be instances of 
poor kerning&nbsp;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:&nbsp; for example, in transliterated Arabic it is 
common&nbsp;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:&nbsp; one wants to bring 
the Greek breathing close to the apex of the A.</FONT></DIV>
<DIV><FONT face="Arial Unicode MS"></FONT>&nbsp;</DIV>
<DIV><FONT face="Arial Unicode MS">At present I deal with such cases by having 
e.g. {\ayinA}&nbsp;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).&nbsp; Much 
more elegant would be e.g.:</FONT></DIV>
<DIV><FONT face="Arial Unicode MS"></FONT>&nbsp;</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>&nbsp;</DIV>
<DIV><FONT face="Arial Unicode MS">or, if fully integrated into XeTeX, something 
like:</FONT></DIV>
<DIV><FONT face="Arial Unicode MS"></FONT>&nbsp;</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>&nbsp;</DIV>
<DIV>The file&nbsp;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>&nbsp;</DIV>
<DIV>Q+] krn 250</DIV>
<DIV>&nbsp;</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>&nbsp;</DIV>
<DIV>If this works in principle, it could&nbsp;be extended to include automatic 
invocation of ligatures, perhaps even from a different font - if one were, say, 
experimenting with an ancient&nbsp;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&nbsp;all attempts by me to 
get him to return my font book!).&nbsp; (So instead of 'krn' in the list we 
would have e.g. 'lig' - or whatever simple syntax seems best.)</DIV>
<DIV>&nbsp;</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>&nbsp;</DIV>
<DIV>&nbsp;\input myhyphens</DIV>
<DIV>&nbsp;</DIV>
<DIV>in order to implement&nbsp;hyphenation of specialized words&nbsp;or 
languages that TeX regularly hyphenates in an unsatisfactory way, without 
getting immersed in the complexities of writing fresh hyphenation 
patterns.</DIV>
<DIV>&nbsp;</DIV>
<DIV>Best</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>John</DIV>
<DIV></FONT>&nbsp;</DIV></DIV></BODY></HTML>