ホームページ  >  記事  >  Java  >  Java を使用して Word のテキストと画像を置換する方法

Java を使用して Word のテキストと画像を置換する方法

WBOY
WBOY転載
2023-05-24 23:04:271847ブラウズ

はじめに

Word では、置換機能を使用して、指定したテキストを個別にまたは全体的に検索して置換できます。一般的なテキスト置換方法に加えて、次のようなさまざまなオブジェクトを使用して置換する方法も紹介します:

1. テキストを置換する文字列コンテンツを指定します (replce(matchString, newValue, caseSensitive メソッド経由) 、wholeWord); 置換する新しい文字列コンテンツを直接指定します)

2. ドキュメント コンテンツの置換テキストを取得します (指定されたテキストを replace(String matchString, TextSelection textSelection, boolean caseSensitive, boolean WholeWord) メソッドで置換します) ;)

3. 画像置換テキスト

4. 画像置換画像

ツールと jar インポートを使用します:

必要がありますFree Spire.Doc for Java を使用してください の jar パッケージを手動でダウンロードして解凍し、Spire.Doc.jar ファイルを Java プログラムにインポートすることも、Maven リポジトリを通じてダウンロードしてインポートすることもできます。

1. 文字列コンテンツの置換テキストを指定します

import com.spire.doc.*;

public class ReplaceTextWithText {
    public static void main(String[] args) {
        //加载文档
        Document doc = new Document();
        doc.loadFromFile("test.docx");

        //要替换第一个出现的指定文本,只需在替换前调用setReplaceFirst方法来指定只替换第一个出现的指定文本
        //doc.setReplaceFirst(true);

        //调用方法用新文本替换原文本内容
        doc.replace("系统测试", "System Testing", false, true);

        //保存文档
        doc.saveToFile("ReplaceAllText.docx",FileFormat.Docx_2013);
        doc.dispose();
    }
}

Java を使用して Word のテキストと画像を置換する方法

2. ドキュメントのテスト用にドキュメント コンテンツの置換テキスト

import  com.spire.doc.*;
import com.spire.doc.documents.TextSelection;

public class ReplaceTextWithDocument {
    public static void main(String[] args) {
        //加载文档1
        Document doc1 = new Document();
        doc1.loadFromFile("test.docx");

        //加载文档2
        Document doc2 = new Document();
        doc2.loadFromFile("TargetFile.docx");
        //查找文档2中的指定内容
        TextSelection textSelection = doc2.findString("Falling under the scope of black box testing, " +
                "system testing is a phase in the software " +
                "testing cycle where a total and integrated" +
                " application /system is tested.",false,false);

        //用文档2中查找到的内容替换文档1中的指定字符串
        doc1.replace("System Test, ST",textSelection,false,true);

        //保存文档1
        doc1.saveToFile("ReplaceTextWithDocument.docx",FileFormat.Docx_2013);
        doc1.dispose();
    }
}

Two を取得しますドキュメント 2 のテキスト コンテンツをドキュメント 1 の指定されたテキスト コンテンツに置き換えます:

Java を使用して Word のテキストと画像を置換する方法

置換結果:

Java を使用して Word のテキストと画像を置換する方法

3. 画像置換テキスト

import com.spire.doc.*;
import com.spire.doc.documents.TextSelection;
import com.spire.doc.fields.DocPicture;
import com.spire.doc.fields.TextRange;

public class ReplaceTextWithImg {
    public static void main(String[] args) {
        //加载文档
        Document doc = new Document("test.docx");
        //查找需要替换的字符串
        TextSelection[] textSelection = doc.findAllString("系统测试",true,false);
        int index ;

        //加载图片替换文本字符串
        for (Object obj : textSelection) {
            TextSelection Selection = (TextSelection)obj;
            DocPicture pic = new DocPicture(doc);
            pic.loadImage("tp.png");
            TextRange range = Selection.getAsOneRange();
            index = range.getOwnerParagraph().getChildObjects().indexOf(range);
            range.getOwnerParagraph().getChildObjects().insert(index,pic);
            range.getOwnerParagraph().getChildObjects().remove(range);
        }
        //保存文档
        doc.saveToFile("ReplaceTextWithImage.docx", FileFormat.Docx_2013);
        doc.dispose();
    }
}

Java を使用して Word のテキストと画像を置換する方法

4. 画像置換画像

import com.spire.doc.*;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.fields.DocPicture;

public class ReplacePictureWithPicture {
    public static void main(String[] args) {
        //加载Word文档
        Document doc = new Document();
        doc.loadFromFile("sample.docx");

        //获取文档中的指定段落
        Section section = doc.getSections().get(0);
        Paragraph para = section.getParagraphs().get(0);
        //替换段落中的第一张图片
        Object obj = para.getChildObjects().get(0);
        if(obj instanceof DocPicture){
            DocPicture pic = (DocPicture)obj;
            pic.loadImage("tp.png");
        }

        /*//批量替换图片
        for(int i =0;i < section.getParagraphs().getCount();i++){
            Object obj = section.getParagraphs().get(i).getChildObjects();
            if(obj instanceof DocPicture){
                DocPicture pic = (DocPicture)obj;
                pic.loadImage("tp.png");
            }
        }*/

        //保存结果文档
        doc.saveToFile("ReplaceWithImage.docx", FileFormat.Docx_2013);
        doc.dispose();
    }
}

Java を使用して Word のテキストと画像を置換する方法

以上がJava を使用して Word のテキストと画像を置換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。