溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何通過Java添加Word文本框

發(fā)布時(shí)間:2021-07-22 16:06:09 來源:億速云 閱讀:165 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關(guān)如何通過Java添加Word文本框的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

前言

在Word中,文本框是指一種可移動(dòng)、可調(diào)節(jié)大小的文字或圖形容器。我們可以向文本框中添加文字、圖片、表格等對(duì)象,下面,將通過Java編程來實(shí)現(xiàn)添加以上對(duì)象到Word文本框。

使用工具:Free Spire.Doc for Java (免費(fèi)版)

Jar文件獲取及導(dǎo)入:

方法1:通過官網(wǎng)下載獲取jar包。下載后,解壓文件,并將lib文件夾下的Spire.Doc.jar文件導(dǎo)入Java程序。(如下圖)

如何通過Java添加Word文本框

方法2:通過maven倉庫安裝導(dǎo)入。

Java代碼示例

import com.spire.doc.*;
import com.spire.doc.documents.*;
import com.spire.doc.fields.DocPicture;
import com.spire.doc.fields.TextBox;
import com.spire.doc.fields.TextRange;
import java.awt.*;

public class AddTextbox {
  public static void main(String[] args) {
    //創(chuàng)建文檔
    Document doc = new Document();

    //添加指定大小的文本框
    TextBox tb = doc.addSection().addParagraph().appendTextBox(380, 280);
    //設(shè)置文字環(huán)繞方式
    tb.getFormat().setTextWrappingStyle(TextWrappingStyle.Square);
    //設(shè)置文本框的相對(duì)位置
    tb.getFormat().setHorizontalOrigin(HorizontalOrigin.Left_Margin_Area);
    tb.getFormat().setHorizontalPosition(120f);
    tb.getFormat().setVerticalOrigin(VerticalOrigin.Page);
    tb.getFormat().setVerticalPosition(100f);
    //設(shè)置文本框邊框樣式
    tb.getFormat().setLineStyle(TextBoxLineStyle.Thin_Thick);
    tb.getFormat().setLineColor(Color.gray);

    //插入圖片到文本框
    Paragraph para = tb.getBody().addParagraph();
    DocPicture picture = para.appendPicture("tp.png");
    picture.setHeight(120f);
    picture.setWidth(180f);
    para.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
    para.getFormat().setAfterSpacing(13f);

    //插入文字到文本框
    para = tb.getBody().addParagraph();
    TextRange textRange = para.appendText("中美貿(mào)易爭(zhēng)端,又稱中美貿(mào)易戰(zhàn),也叫中美貿(mào)易摩擦,是中美經(jīng)濟(jì)關(guān)系中的重要問題。 "
        + "貿(mào)易爭(zhēng)端主要發(fā)生在兩個(gè)方面:一是中國具有比較優(yōu)勢(shì)的出口領(lǐng)域;"
        + "二是中國沒有優(yōu)勢(shì)的進(jìn)口和技術(shù)知識(shí)領(lǐng)域。");
    textRange.getCharacterFormat().setFontName("楷體");
    textRange.getCharacterFormat().setFontSize(11f);
    para.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);

    //添加表格到文本框
    //聲明數(shù)組內(nèi)容
    String[][] data = new String[][]{
        new String[]{"國家", "年份", "出口額(美元)", "進(jìn)口額(美元)"},
        new String[]{"中國", "2017", "125468", "101109"},
        new String[]{"美國", "2017", "86452", "124298"},
    };
    //添加表格
    Table table = tb.getBody().addTable();
    //指定表格行數(shù)、列數(shù)
    table.resetCells(3,4);
      //將數(shù)組內(nèi)容填充到表格
      for (int i = 0; i < data.length; i++) {
        TableRow dataRow = table.getRows().get(i);
        dataRow.getCells().get(i).setWidth(70);
        dataRow.setHeight(22);
        dataRow.setHeightType(TableRowHeightType.Exactly);
        for (int j = 0; j < data[i].length; j++) {
          dataRow.getCells().get(j).getCellFormat().setVerticalAlignment(VerticalAlignment.Middle);
          TextRange range2 = dataRow.getCells().get(j).addParagraph().appendText(data[i][j]);
          range2.getCharacterFormat().setFontName("楷體");
          range2.getCharacterFormat().setFontSize(11f);
          range2.getOwnerParagraph().getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
        }
      }
      //應(yīng)用表格樣式
      table.applyStyle(DefaultTableStyle.Colorful_Grid_Accent_3);

      //保存文檔
      doc.saveToFile("AddTextbox.docx", FileFormat.Docx_2013);
    }
  }

文本框添加效果:

如何通過Java添加Word文本框

感謝各位的閱讀!關(guān)于“如何通過Java添加Word文本框”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI