我正在开发一个Android应用,该应用创建的pdf包含用户键入的图像和文本。 pdf是使用PdfDocument lib创建的。
当标题字符串包含表情符号时,应用程序将正确显示内容。
内容在设备上正确显示:
但是一旦在pdf画布上绘制,表情符号就会变得模糊,并且似乎其中一些在其下方包含一个符号:
草莓和樱桃下面有奇怪的白色符号:
我的代码:
CharSequence emoji_title = EmojiCompat.get().process(title);
StaticLayout.Builder builder = StaticLayout.Builder.obtain(emoji_title, 0, emoji_title.length(), titleTextPaint, TITLE_RECT_WIDTH)
.setAlignment(Layout.Alignment.ALIGN_NORMAL)
.setBreakStrategy(Layout.BREAK_STRATEGY_HIGH_QUALITY)
.setLineSpacing(0, 1f)
.setIncludePad(false);
StaticLayout textLayout = builder.build();
float x = TITLE_LEFT_MARGIN;
float y = TITLE_TOP_MARGIN + (TITLE_RECT_HEIGHT - textLayout.getHeight()) / 2;
canvas.save();
canvas.translate(x, y);
textLayout.draw(canvas);
canvas.restore();
我该怎么办,检测表情符号unicode并替换它们不是一个非常实用的解决方案。