Java 读取Word文本/段落格式属性 (2)

 

Java 读取Word文本/段落格式属性

 

 

 

 

Java示例代码

import com.spire.doc.*; import com.spire.doc.documents.Paragraph; import com.spire.doc.documents.TextSelection; import com.spire.doc.fields.TextRange; import java.awt.*; public class GetTextFormat { public static void main(String[] args) { //加载Word源文档 Document doc = new Document(); doc.loadFromFile("test.docx"); //获取段落数量 int count = doc.getSections().get(0).getParagraphs().getCount(); System.out.println("总共含有段落数:" + count); //查找指定文本 TextSelection textSelections = doc.findString("东野圭吾", false, true); //获取字体名称 String fontname = textSelections.getAsOneRange().getCharacterFormat().getFontName(); //获取字体大小 float fontsize = textSelections.getAsOneRange().getCharacterFormat().getFontSize(); System.out.println("字体名称:" + fontname +"\n" +"字体大小:"+fontsize); //获取第二段 Paragraph paragraph2 = doc.getSections().get(0).getParagraphs().get(1); //获取段落行距 float linespage = paragraph2.getFormat().getLineSpacing(); System.out.println("段落行距:" + linespage); //遍历段落中的子对象 for (int z = 0; z < paragraph2.getChildObjects().getCount(); z++) { Object obj2 = paragraph2.getChildObjects().get(z); //判定是否为文本 if (obj2 instanceof TextRange) { TextRange textRange2 = (TextRange) obj2; //获取文本颜色 Color textcolor = textRange2.getCharacterFormat().getTextColor(); if (!(textcolor.getRGB() == 0)) { System.out.println("文本颜色:" + textRange2.getText() + textcolor.toString()); } //获取字体加粗效果 boolean isbold = textRange2.getCharacterFormat().getBold(); if (isbold == true) { System.out.println("加粗文本:" + textRange2.getText()); } //获取字体倾斜效果 boolean isitalic = textRange2.getCharacterFormat().getItalic(); if (isitalic == true) { System.out.println("倾斜文本:" + textRange2.getText()); } //获取文本背景 String text = textRange2.getText(); Color highlightcolor = textRange2.getCharacterFormat().getHighlightColor();//获取文本的高亮颜色(即突出显示颜色) if (!(highlightcolor.getRGB() == 0 )) { System.out.println("文本高亮:" + text + highlightcolor.toString());//输出高亮的文本和颜色 } Color textbackgroundcolor = textRange2.getCharacterFormat().getTextBackgroundColor();//获取文字背景(底纹) if (!(textbackgroundcolor.getRGB()==0)) { System.out.println("文本背景:" + text + textbackgroundcolor.toString());//输出有背景的文本和颜色 } } } } }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zyjjss.html