Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
不显示iText Java的代理汉字_Java_Unicode_Itext - Fatal编程技术网

不显示iText Java的代理汉字

不显示iText Java的代理汉字,java,unicode,itext,Java,Unicode,Itext,使用maven回购协议中的iText 5.5.11 基本多语言平面中的非代理字符在生成的pdf上呈现,但代理字符不呈现 编辑:还尝试使用编码为“UniGB-UCS2-H”的字体“STSong Light”(如本书中的示例所示)。相同的结果-缺少代理项字符 Edit2:让它与“SimSun ExtB”字体一起工作这通常是一个标志,表明所使用的字体(在本例中为Arial)没有用于字符的字形。您可以通过粘贴1)arialuni.ttf的大小-千字节或兆字节?它应该是兆字节。2) 您的计算机上是否安装了

使用maven回购协议中的iText 5.5.11

基本多语言平面中的非代理字符在生成的pdf上呈现,但代理字符不呈现

编辑:还尝试使用编码为“UniGB-UCS2-H”的字体“STSong Light”(如本书中的示例所示)。相同的结果-缺少代理项字符


Edit2:让它与“SimSun ExtB”字体一起工作

这通常是一个标志,表明所使用的字体(在本例中为Arial)没有用于字符的字形。

您可以通过粘贴1)arialuni.ttf的大小-千字节或兆字节?它应该是兆字节。2) 您的计算机上是否安装了中文(东亚字体)?@cup 22MB-我在本例中使用Arial,因为文字符号在记事本中正确显示为Arial。
public class test {
    public static void main(String[] args) throws DocumentException, IOException {

        final String text = "BMP: \u6d4b \u8bd5  Surrogate: \uD841\uDF0E \uD841\uDF31 \uD859\uDC02";

        BaseFont baseFont = BaseFont.createFont("C:\\Windows\\Fonts\\arialuni.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
        Font font = new Font(baseFont, 6.8f);

        Document doc = new Document();
        PdfWriter.getInstance(doc, new FileOutputStream("out.pdf"));
        doc.open();

        Paragraph p = new Paragraph();

        p.add(new Phrase(text, font));

        doc.add(p);

        doc.close();
    }
}