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

本文介绍通过Java后端程序代码来读取Word文本和段落格式的方法。

本次测试环境如下:

● Word版本:2013

● 编译环境:IntelliJ IDEA2018

● Work库:spire.doc.jar 3.9.0 免费版

● JDK版本:1.8.0

通过textrange.getCharacterFormat()方法读取文本字符串格式,通过paragraph.getFormat()读取段落格式,读取具体文字及段落属性时,可支持读取字体、字号、文字颜色、文字背景、文字是否加粗或倾斜、文字下划线、大小写、边框、上标下标、行距、段落缩进、对齐方式、段落边框、背景等等,下表中罗列了所有可支持读取的样式属性,供参考:

读取文本格式 getCharacterFormat():

读取段落格式:getFormat()

用于测试的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());//输出有背景的文本和颜色
                }

}
        }

}
}

运行程序,输入获取结果:

以上是本次全部内容。

转载请务必注明出处!

(0)

相关推荐

  • Java 读取Word文本框中的文本、图片和表格

    Word可插入文本框,文本框中可嵌入文本.图片.表格等内容.对文档中的已有文本框,也可以读取其中的内容.本文以Java程序代码来展示如何读取文本框,包括读取文本框中的文本.图片以及表格等. [程序环境 ...

  • Word文本段落对齐方式的设置

    Word文本段落标记是按回车键产生,对齐方式有左对齐,居中对齐,右对齐,两端对齐和分散对齐,下面讲一下具体的操作方法. 操作方法 01 第一步:打开Word文档 02 第二步:在Word文档中光标右边 ...

  • Word文本新建样式的方法

    具体实现过程如下: 1、打开或者新建一个word文档 2、首先我们选择开始选项卡,在样式区域中单击显示样式的按钮 3、此时打开了样式对话框,单击管理样式 4、这时打开了样式管理对话框,点击下面的新建样 ...

  • C# 读取Word文本框中的文本、图片和表格(附VB.NET代码)

    [概述] Word中可插入文本框,在文本框中可添加文本.图片.表格等内容.本篇文章通过C#程序代码介绍如何来读取文本框中的文本.图片和表格等内容.附VB.NET代码,有需要可作参考. [程序环境] 程 ...

  • Axure RP 8怎么设置文本段落的样式?

    Axure RP 8在基本元件中有文本段落元件,可以编辑大量文字内容,可以根据内容多少进行换行.下面利用一个实例说明文本段落样式设置,操作如下: 1.打开Axure RP 8软件,在基本元件里找到文本 ...

  • Word文档的文本段落怎么添加边框

    Word文档的文本段落怎么添加边框 1.打开文档,选择需要添加边框的段落,在"开始"选项卡的"段落"组中单击"边框"按钮上的下三角按钮,在打 ...

  • Word文本的段落怎么添加编号?

    我们在工作和学习的时候,使用Word文本来分享内容是最便捷的.但是当你把纸质的内容搬到电子文档的时候,在文档里找东西就变成了比较费事的差事.但是如果能对Word文本里的段落进行编号就可以省去我们翻找资 ...

  • 怎么统一Word文档段落样式

    Word是现在十分常用的文件类型之一,有些新用户不知道怎么统一Word文档段落样式,接下来小编就给大家介绍一下具体的操作步骤.方法11. 首先第一步先打开电脑中的Word文档,接着根据下图箭头所指,将 ...

  • 如何给Word文本框中的文字设置艺术字样式

    Word是现在十分常用的文件类型之一,有些新用户不知道如何给Word文本框中的文字设置艺术字样式,接下来小编就给大家介绍一下具体的操作步骤.具体如下:1. 首先第一步根据下图所示,打开电脑中的Word ...