У меня проблема с добавлением смайлика Unicode в PDF-файл, созданный с помощью itext pdf. Я пробовал с этим и itextpdf core 5.5.13
public class MathSymbols {
public static final String DEST = "EXAMPLE.pdf";
public static final String FONT = "/res/fonts/arialuni.ttf";
public static String TEXT ;
public static void main(String[] args) throws IOException, DocumentException {
File file = new File(DEST);
TEXT = "this "+Character.toChars(0x1F600)+" string \uD83D\uDE00 contains \ud83d\ude00 special \u2609 characters like this \u2208, \u2229, \u2211, \u222b, \u2206";
new MathSymbols().createPdf(DEST);
}
public void createPdf(String dest) throws IOException, DocumentException {
Document document = new Document();
PdfWriter.getInstance(document, new FileOutputStream(dest));
document.open();
BaseFont bf = BaseFont.createFont(FONT, BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
Font f = new Font(bf,12);
Paragraph p = new Paragraph(TEXT, f);
document.add(p);
document.close();
}}
У меня такая же проблема с itextpdf 7.x с этим фрагментом
public class Main {
public static final String DEST = "example.pdf";
public static void main(String args[]) throws IOException {
File file = new File(DEST);
new Main().createPdf(DEST);
}
public void createPdf(String dest) throws IOException {
PdfWriter writer = new PdfWriter(dest);
PdfDocument pdf = new PdfDocument(writer);
Document document = new Document(pdf);
PdfFont f = PdfFontFactory.createFont("/resources/arialuni.ttf", PdfEncodings.IDENTITY_H,true);
Paragraph p = new Paragraph("H\u2082SO\u2074 1 \uD83D\uDE00 contains \ud83d\ude00 spe \u2702 cial \u2609 characters like this \u2208, \u2229, \u2211, \u222b, \u2206").setFont(f).setFontSize(10);
document.add(p);
document.close();
}}
Я пробовал использовать разные шрифты и разные способы в java, например здесь. Но я получаю только пробел или квадрат в pdf, а не смайлик.
Много перепробовала, можете ли вы подсказать какой-нибудь шрифт со смайлами?
Основная проблема: большинство форматов шрифтов (и дизайн шрифтов) не позволяют использовать несколько цветов для символов, поэтому вы найдете не так много шрифтов, и, возможно, они не будут работать с pdf (или многими программами для чтения pdf). Поместите смайлы в виде крошечных фигурок.
Извините за запоздалый ответ, мне достаточно для стандартного смайлика чёрно-белого цвета: ☺.




У arialuni нет смайлов.