mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-12-06 09:09:10 +08:00
feat:Word生成器,增加段落新增字体颜色参数
This commit is contained in:
parent
472b0d2841
commit
6ef5f1c1fd
@ -13,7 +13,7 @@ import org.apache.poi.xwpf.usermodel.XWPFDocument;
|
||||
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
|
||||
import org.apache.poi.xwpf.usermodel.XWPFRun;
|
||||
|
||||
import java.awt.Font;
|
||||
import java.awt.*;
|
||||
import java.io.Closeable;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
@ -102,7 +102,19 @@ public class Word07Writer implements Closeable {
|
||||
* @return this
|
||||
*/
|
||||
public Word07Writer addText(Font font, String... texts) {
|
||||
return addText(null, font, texts);
|
||||
return addText(null, font, null, texts);
|
||||
}
|
||||
|
||||
/**
|
||||
* 增加一个段落
|
||||
*
|
||||
* @param font 字体信息{@link Font}
|
||||
* @param color 字体颜色{@link Color}
|
||||
* @param texts 段落中的文本,支持多个文本作为一个段落
|
||||
* @return this
|
||||
*/
|
||||
public Word07Writer addText(Font font, Color color, String... texts) {
|
||||
return addText(null, font, color, texts);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -110,10 +122,11 @@ public class Word07Writer implements Closeable {
|
||||
*
|
||||
* @param align 段落对齐方式{@link ParagraphAlignment}
|
||||
* @param font 字体信息{@link Font}
|
||||
* @param color 字体颜色{@link Color}
|
||||
* @param texts 段落中的文本,支持多个文本作为一个段落
|
||||
* @return this
|
||||
*/
|
||||
public Word07Writer addText(ParagraphAlignment align, Font font, String... texts) {
|
||||
public Word07Writer addText(ParagraphAlignment align, Font font, Color color, String... texts) {
|
||||
final XWPFParagraph p = this.doc.createParagraph();
|
||||
if (null != align) {
|
||||
p.setAlignment(align);
|
||||
@ -129,6 +142,10 @@ public class Word07Writer implements Closeable {
|
||||
run.setBold(font.isBold());
|
||||
run.setItalic(font.isItalic());
|
||||
}
|
||||
if (null != color) {
|
||||
String hexColor = String.format("%02X", color.getRGB());
|
||||
run.setColor(hexColor);
|
||||
}
|
||||
}
|
||||
}
|
||||
return this;
|
||||
|
||||
@ -8,7 +8,7 @@ import cn.hutool.core.lang.Console;
|
||||
import org.junit.jupiter.api.Disabled;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import java.awt.Font;
|
||||
import java.awt.*;
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
import java.util.LinkedHashMap;
|
||||
@ -23,6 +23,7 @@ public class WordWriterTest {
|
||||
Word07Writer writer = new Word07Writer();
|
||||
writer.addText(new Font("方正小标宋简体", Font.PLAIN, 22), "我是第一部分", "我是第二部分");
|
||||
writer.addText(new Font("宋体", Font.PLAIN, 22), "我是正文第一部分", "我是正文第二部分");
|
||||
writer.addText(new Font("宋体", Font.PLAIN, 22), Color.RED, "我是正文第三部分", "我是正文第四部分");
|
||||
writer.flush(FileUtil.file("e:/wordWrite.docx"));
|
||||
writer.close();
|
||||
Console.log("OK");
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user