Java实现添加条码或二维码到Word文档

2022-07-14,,,,

本文介绍如何在word文档添加条码二维码。可在文档正文段落中添加,也可在页眉页脚中添加。下面将通过java代码示例介绍如何实现。

使用工具:free spire.office for java(免费版)

关于jar导入的方法:

方法1通过e-iceblue官网下载jar包,下载后,解压,将lib文件夹下的spire.office.jar导入java程序;

方法2:通过创建maven程序,并配置在pom.xml文件中配置maven仓库路径并指定free spire.office for java的maven依赖,配置完成后,在idea中,点击“import changes”导入jar包。

<repositories>
        <repository>
            <id>com.e-iceblue</id>
            <url>http://repo.e-iceblue.cn/repository/maven-public/</url>
        </repository>
</repositories>

<dependencies>
    <dependency>
       <groupid>e-iceblue</groupid>
  <artifactid>spire.office.free</artifactid>
  <version>3.1.1</version>
</dependency>
</dependencies>

jar导入结果如下图所示:

java代码示例

1. 添加条码到word(这里以添加到word正文、页脚为例)

import com.spire.barcode.*;
import com.spire.doc.*;
import com.spire.doc.documents.horizontalalignment;
import com.spire.doc.documents.paragraph;

import javax.imageio.imageio;
import java.awt.*;
import java.awt.image.bufferedimage;
import java.io.file;
import java.io.ioexception;

public class addbarcode {
    public static void main(string[] args) throws ioexception {
        //创建document对象,加载word文档
        document doc = new document();
        doc.loadfromfile("test.docx");

        //获取所有section
        for (int i = 0 ; i<doc.getsections().getcount();i++)
        {
            section section = doc.getsections().get(i);

            //使用spire.barcode的barcodesettings和barcodegenerator类创建条码并保存为图片
            barcodesettings settings = new barcodesettings();
            settings.settype(barcodetype.code_128);
            settings.setdata("123456789");
            settings.setdata2d("123456789");
            settings.setshowtext(false);
            settings.setbarheight(4);
            settings.setx(0.3f);
            settings.hasborder(true);
            settings.setborderwidth(0.5f);
            settings.setbordercolor(new color(135,206,250));
            settings.setbackcolor(new color(240,255,255));
            barcodegenerator barcodegenerator = new barcodegenerator(settings);
            bufferedimage bufferedimage = barcodegenerator.generateimage();
            imageio.write(bufferedimage, "png", new file("barcode.png"));

            //添加条码到正文段落
            paragraph paragraph = section.addparagraph();
            paragraph.settext("收货码:");
            paragraph.appendpicture("barcode.png");
            paragraph.getformat().sethorizontalalignment(horizontalalignment.right);

            //添加条码图片到word页脚
            headerfooter footer = section.getheadersfooters().getfooter();
            paragraph footerpara = footer.addparagraph();
            footerpara.settext("扫码识真伪:");
            footerpara.appendpicture("barcode.png");
            footerpara.getformat().sethorizontalalignment(horizontalalignment.left);
        }

        //保存文档
        doc.savetofile("barcodetoword.docx", fileformat.docx_2013);
        doc.dispose();
    }
}

条码添加效果:

2. 添加二维码到word(这里以添加到正文、页眉为例)

import com.spire.barcode.*;
import com.spire.doc.*;
import com.spire.doc.documents.horizontalalignment;
import com.spire.doc.documents.paragraph;

import javax.imageio.imageio;
import java.awt.*;
import java.awt.image.renderedimage;
import java.io.file;
import java.io.ioexception;

public class addqrcode {
    public static void main(string[] args) throws ioexception {
        //创建document对象,加载word文档
        document doc = new document();
        doc.loadfromfile("test.docx");

        //获取所有section
        for (int i = 0 ; i<doc.getsections().getcount();i++)
        {
            section section = doc.getsections().get(i);

            //使用spire.barcode的barcodesettings和barcodegenerator类创建二维码并保存为图片
            barcodesettings settings = new barcodesettings();
            settings.settype(barcodetype.qr_code);
            settings.setdata("123456");
            settings.setdata2d("123456");
            settings.setx(0.7f);
            settings.setleftmargin(0);
            settings.setshowtextonbottom(true);
            settings.setqrcodeecl(qrcodeecl.q);
            settings.setqrcodedatamode(qrcodedatamode.numeric);
            barcodegenerator generator = new barcodegenerator(settings);
            image image = generator.generateimage();
            imageio.write((renderedimage) image, "png", new file("qrcode.png"));

            //添加二维码到正文段落
            paragraph paragraph = section.addparagraph();
            paragraph.appendpicture("qrcode.png");
            paragraph.getformat().sethorizontalalignment(horizontalalignment.right);
            
            //添加二维码图片到word页眉
            headerfooter header = section.getheadersfooters().getheader();
            paragraph headerpara = header.addparagraph();
            headerpara.appendpicture("qrcode.png");
            headerpara.getformat().sethorizontalalignment(horizontalalignment.center);
        }

        //保存文档
        doc.savetofile("qrcodetoword.docx", fileformat.docx_2013);
        doc.dispose();
    }
}

二维码添加效果:

以上就是java实现添加条码或二维码到word文档的详细内容,更多关于java添加条码 二维码到word的资料请关注其它相关文章!

《Java实现添加条码或二维码到Word文档.doc》

下载本文的Word格式文档,以方便收藏与打印。