JTextPane中的Unicode字符溢出的问题(Swing)

我想使用unicode字符来可视化扑克游戏的纸牌。我在JTextPane中将它们单独打印出来。如您在第一张图片上所看到的,它们有时会溢出到其他行。我使用相同的方法输出卡,因此仅在某些情况下发生确实很奇怪。这是完全随机的。

每个卡都具有通过SimpleAttributeSet设置的相同样式。看起来卡的线高比应该的小。因此,我认为Swing可能对Unicode字符有不好的支持,因此我在卡之间添加了与卡相同样式的'M'字符。之后,一切似乎都正常。

这是我如何打印卡片的示例(卡片被循环打印):

StyledDocument doc = jTextPane.getStyledDocument();

doc.insertString(doc.getLength(), "Karty na stole: \n", attributeSet);

doc.insertString(doc.getLength(), "???? \n" , attributeSetForCards);

卡有时会从其行中溢出:

在这里,您可以看到它们已正确输出: