本文介绍如何在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>

(Ecllipse的导入方法,参考这篇文章

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();
}
}

二维码添加效果:

(完)

最新文章

  1. PHP 继承多态知识点
  2. 五种方法让CSS实现垂直居中
  3. GPL 和BSD和Apache
  4. Quartz.NET开源作业调度框架系列(五):AdoJobStore保存job到数据库
  5. POJ 1308
  6. styleCop
  7. HDU1013_Digital Roots【大数】【水题】
  8. Java中的break与continue区别
  9. Mysql笔记【1】-数据库的基本操作(创建/删除)
  10. Shell函数返回值、删除函数、在终端调用函数
  11. [Linked List]Reverse Linked List,Reverse Linked List II
  12. 单链表---java实现
  13. tomcat + jenkins启动tomcat后打开jenkins页面提示404错误的解决方案
  14. Python爬虫 Urllib库的高级用法
  15. 将对象xml序列化和反序列化
  16. 不能忽视 php warning
  17. GC Tools
  18. phpstrom 快速定位到当前编辑文件
  19. AWS re:Invent(2019.01.09)
  20. 有关两个jar包中包含完全相同的包名和类名的加载问题

热门文章

  1. Java 多线程基础(四)线程安全
  2. x memory pool c语言 内存池
  3. Excel 中将大于511的十进制数转换成二进制
  4. Docker_01
  5. Windows10 下安装和配置Redis
  6. 附015.Kubernetes其他技巧
  7. Dubbo——SPI及自适应扩展原理
  8. Unity中数据的存储与交互的初步分析(PlayerPrefs,Dictionary,JsonUnility)
  9. 用 npm 搭建vue项目
  10. 001_动力节点_SpringMVC4_SpringMVC简介