【问题标题】:How to put double width and double height characters in a JTextPane?如何在 JTextPane 中放置双倍宽度和双倍高度字符?
【发布时间】:2021-10-06 16:19:43
【问题描述】:

我正在使用JTextPane 来显示一种使用等宽字体的公交车票。我正在使用 StyleConstantsSimpleAttributeSet 设置粗体和斜体文本,但我也想使用双倍宽度和高度字符。我不想制作双倍大小的字体,双倍我的意思是我想要双倍宽度的字符'A'会在宽度上被拉伸,但在高度上不会被拉伸,反之亦然,就像在这张图片中我找到了here

我真的不知道有什么方法可以这样做,谷歌搜索也没有给我答案。也许是一种水平和垂直调整字体大小的方法?

【问题讨论】:

    标签: java swing fonts jtextpane


    【解决方案1】:

    将字体大小调整为双倍宽度:

    // Input: an existing Font object called 'font'.
    final int style = Font.PLAIN;
    AffineTransform transform = new AffineTransform();
    transform.setToScale(2.0, 1.0);
    Font doubleWidthFont = font.deriveFont(style, transform);
    

    我没有尝试过这段代码,所以如果它不能完全按照写的那样工作,请告诉我。

    【讨论】:

    • 谢谢,这正是我所需要的。
    • (1+) 不错的解决方案。没有意识到你可以缩放字体。我一直在缩放图形。
    【解决方案2】:

    虽然它是用于 JEditorPane,但也应该与 JTextPane 一起使用 http://java-sl.com/tip_text_height_measuring.html

    【讨论】:

    • 据我了解,该代码只是测量文本的高度。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多