私はitextとColdFusion(java)を使用してテキスト文字列をPDFドキュメントに書き出しています。私は使用する必要のあるtrueTypeフォントとopenTypeフォントの両方を持っています。 Truetypeフォントは正しく動作しているようですが、.otfで終わるフォントファイルではカーニングが使用されていません。下のコードはAirstream(OpenType)に "Line 1 of Text"と書いてありますが、 "T"と "e"の間のカーニングはありません。他のプログラムで同じフォントが使用されている場合は、カーニングしています。私もitextの新しいバージョンをダウンロードしましたが、カーニングはまだ動作しませんでした。誰かがカーテンをどのようにittfフォントで作業するように知っていますか?itextを使用したOpenTypeフォントカーニング
<cfscript>
pdfContentByte = createObject("java","com.lowagie.text.pdf.PdfContentByte");
BaseFont= createObject("java","com.lowagie.text.pdf.BaseFont");
bf = BaseFont.createFont("c:\windows\fonts\AirstreamITCStd.otf", "" , BaseFont.EMBEDDED);
document = createobject("java","com.lowagie.text.Document").init();
fileOutput = createObject("java","java.io.FileOutputStream").init("c:\inetpub\test.pdf");
writer = createobject("java","com.lowagie.text.pdf.PdfWriter").getInstance(document,fileOutput);
document.open();
cb = writer.getDirectContent();
cb.beginText();
cb.setFontAndSize(bf, 72);
cb.showTextAlignedKerned(PdfContentByte.ALIGN_LEFT,"Line 1 of Text",0,72,0);
cb.endText();
document.close();
bf.hasKernPairs(); //returns NO
bf.getClass().getName(); //returns "com.lowagie.text.pdf.TrueTypeFont"
</cfscript>