java 插入string,java – 使用指定的字体将String插入Document

我知道我可以在AttributeSet上设置一个字体系列,如下所示:

SimpleAttributeSet set = new SimpleAttributeSet();

StyleConstants.setFontFamily(set, "Monospace");

doc.insertString(

caretPosition, text, set);

但我真正想要做的是设置一个字体:

StyleConstants.setFont(set, "Courier New");

但是,没有StyleConstants.setFont()方法.

那么如何在AttributeSet上设置字体? (请注意,除了SimpleAttributeSet之外,我可以自由地使用AttributeSet的实现.我只是碰巧使用那个.)

(请注意,我的真正目标是使用指定的字体将字符串插入到Document中.)

解决方法:

您可以使用StyleConstants设置所有字体属性:

SimpleAttributeSet set = new SimpleAttributeSet();

StyleConstants.setFontFamily(set, "Monospace");

StyleConstants.setFontSize(set, 22);

StyleConstants.setBold(set, true);

StyleConstants.setItalic(set, true);

标签:java,fonts,swing,document

来源: https://codeday.me/bug/20190521/1148575.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果在插入图片后发现原有文本的颜色变黑了,可能是因为在创建 `XWPFRun` 对象时没有设置正确的文本样式。你可以在创建文本对象时指定一个新的样式,以确保文本的颜色和字体等属性不会受到影响。以下是修改后的示例代码: ```java import java.io.FileInputStream; import java.io.FileOutputStream; import org.apache.poi.xwpf.usermodel.*; public class InsertImageInWord { public static void main(String[] args) throws Exception { // 创建 Word 文档对象 XWPFDocument document = new XWPFDocument(new FileInputStream("example.docx")); // 创建图片对象,并读取图片文件 XWPFPictureData pictureData = document.addPictureData(new FileInputStream("image.jpg"), XWPFDocument.PICTURE_TYPE_JPEG); // 创建段落对象,并设置段落样式 XWPFParagraph paragraph = document.createParagraph(); paragraph.setAlignment(ParagraphAlignment.CENTER); // 创建文本对象,并插入图片 XWPFRun run = paragraph.createRun(); run.setText("这是一张图片:"); run.addBreak(); // 创建新的文本样式对象 XWPFStyle style = document.createStyle(); style.setColor("000000"); // 设置字体颜色为黑色 style.setFontSize(12); // 设置字体大小为12磅 // 将新的样式对象应用到文本对象中 run.getCTR().addNewRPr().setRStyle(style.getStyleId()); run.addPicture(pictureData, Document.PICTURE_TYPE_JPEG, "image.jpg", Units.toEMU(200), Units.toEMU(200)); // 保存 Word 文档 document.write(new FileOutputStream("example.docx")); document.close(); } } ``` 在这个例子中,我们创建了一个新的文本样式对象 `style`,并将其应用到文本对象 `run` 中,以确保文本样式不会受到图片的影响。注意,新的样式对象需要先添加到文档中,才能在文本对象中使用

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值