-
C#/VB.NET 在Word中添加条码、二维码
本文介绍如何通过C# 和VB.NET代码实现在Word文档中添加条码和二维码。代码中将分为在Word正文段落中、页眉页脚中等情况来添加。
使用工具:Free Spire.Office for .NET (免费版)
工具简介:这是Spire所有.NET平台下免费产品的集合包,包含Spire.Barcode.dll、Spire.DataExport.dll、Spire.Pdf.dll、Spire.Doc.dll、Spire.DocViewer.Forms.dll 、Spire.PdfViewer.Forms.dll 、Spire.Presentation.dll 、Spire.XLS.dll等dll可用于操作Word/PDF/Excel/PPT等文件。
本文添加条码、二维码需要在VS程序中添加引用 Spire.Doc.dll 和 Spire.Barcode.dll 这两个dll文件。
dll添加引用效果:
注意:
1. 需要下载安装到本地指定路径,dll文件可在安装路径下的Bin文件夹下获取。
2. 生成的条码、二维码会有水印字样的文字,可通过此方法去除。
代码示例
1. 添加条码到Word
C#
using Spire.Doc; using Spire.Barcode; using System.Drawing; using System.IO; using Spire.Doc.Documents; namespace AddBarcode { class Program { static void Main(string[] args) { //调用方法 ApplyKey(string key) 移除水印文字 Spire.Barcode.BarcodeSettings.ApplyKey("在这里输入去除水印字样的序列号"); //创建Document对象,加载Word文档 Document doc = new Document(); doc.LoadFromFile("test.docx"); //获取第2节 Section section = doc.Sections[1]; //使用Spire.Barcode的BarcodeSettings和BarcodeGenerator类创建条码并保存为图片 BarcodeSettings settings = new BarcodeSettings(); settings.Type = BarCodeType.Code128; settings.Data = "123456789"; settings.Data2D = "123456789"; settings.ShowText = false; settings.BarHeight = 4; settings.X = 0.3f; settings.HasBorder = true; settings.BorderWidth = 0.5f; settings.BorderColor = Color.AliceBlue; settings.BackColor = Color.Wheat; BarCodeGenerator barCodeGenerator = new BarCodeGenerator(settings); Image Image = barCodeGenerator.GenerateImage(); //Image.Save("Barcode.png", System.Drawing.Imaging.ImageFormat.Png);//如果需要保存生成的Barcode图片,可执行此步骤代码 //添加条码到正文段落 Paragraph paragraph = section.AddParagraph(); paragraph.Text = "收货码:"; paragraph.AppendPicture(Image); paragraph.Format.HorizontalAlignment = HorizontalAlignment.Right; //添加条码图片到Word页脚 HeaderFooter footer = section.HeadersFooters.Footer; Paragraph footerpara = footer.AddParagraph(); footerpara.Text = "扫码识真伪:"; footerpara.AppendPicture(Image); footerpara.Format.HorizontalAlignment = HorizontalAlignment.Left; //保存文档 doc.SaveToFile("BarCodeToWord.docx", FileFormat.Docx2013); System.Diagnostics.Process.Start("BarCodeToWord.docx"); } } }
条码添加效果:
VB.NET
Imports Spire.Doc Imports Spire.Barcode Imports System.Drawing Imports System.IO Imports Spire.Doc.Documents Namespace AddBarcode Class Program Private Shared Sub Main(args As String()) '调用方法 ApplyKey(string key) 移除水印文字 Spire.Barcode.BarcodeSettings.ApplyKey("在这里输入去除水印字样的序列号") '创建Document对象,加载Word文档 Dim doc As New Document() doc.LoadFromFile("test.docx") '获取第2节 Dim section As Section = doc.Sections(1) '使用Spire.Barcode的BarcodeSettings和BarcodeGenerator类创建条码并保存为图片 Dim settings As New BarcodeSettings() settings.Type = BarCodeType.Code128 settings.Data = "123456789" settings.Data2D = "123456789" settings.ShowText = False settings.BarHeight = 4 settings.X = 0.3F settings.HasBorder = True settings.BorderWidth = 0.5F settings.BorderColor = Color.AliceBlue settings.BackColor = Color.Wheat Dim barCodeGenerator As New BarCodeGenerator(settings) Dim Image As Image = barCodeGenerator.GenerateImage() 'Image.Save("Barcode.png", System.Drawing.Imaging.ImageFormat.Png);//如果需要保存生成的Barcode图片,可执行此步骤代码 '添加条码到正文段落 Dim paragraph As Paragraph = section.AddParagraph() paragraph.Text = "收货码:" paragraph.AppendPicture(Image) paragraph.Format.HorizontalAlignment = HorizontalAlignment.Right '添加条码图片到Word页脚 Dim footer As HeaderFooter = section.HeadersFooters.Footer Dim footerpara As Paragraph = footer.AddParagraph() footerpara.Text = "扫码识真伪:" footerpara.AppendPicture(Image) footerpara.Format.HorizontalAlignment = HorizontalAlignment.Left '保存文档 doc.SaveToFile("BarCodeToWord.docx", FileFormat.Docx2013) System.Diagnostics.Process.Start("BarCodeToWord.docx") End Sub End Class End Namespace
2. 添加二维码到Word
C#
using Spire.Doc; using Spire.Barcode; using System.Drawing; using System.IO; using Spire.Doc.Documents; using System; namespace AddQRCode { class Program { static void Main(string[] args) { //调用方法 ApplyKey(string key) 移除水印文字 Spire.Barcode.BarcodeSettings.ApplyKey("在这里输入去除水印字样的序列号"); //创建Document对象,加载Word文档 Document doc = new Document(); doc.LoadFromFile("test.docx"); //获取第2节 Section section = doc.Sections[1]; //使用Spire.Barcode的BarcodeSettings和BarcodeGenerator类创建二维码并保存为图片 BarcodeSettings settings = new BarcodeSettings(); settings.Type = BarCodeType.QRCode; settings.ImageWidth = 50; settings.ImageHeight = 50; settings.Data = "123456"; settings.Data2D = "123456"; settings.X =0.7f; settings.LeftMargin = 1; settings.ShowTextOnBottom = true; settings.QRCodeECL = QRCodeECL.Q; settings.QRCodeDataMode = QRCodeDataMode.Numeric; BarCodeGenerator generator = new BarCodeGenerator(settings); Image image = generator.GenerateImage(); //image.Save("QRCode.png", System.Drawing.Imaging.ImageFormat.Png);//如果需要保存生成的二维码图片,可执行此步骤代码 //添加二维码到正文段落 Paragraph paragraph = section.AddParagraph(); paragraph.AppendPicture(image); paragraph.Format.HorizontalAlignment = HorizontalAlignment.Right; //添加二维码图片到Word页眉 HeaderFooter header = section.HeadersFooters.Header; //HeaderFooter footer = section.HeadersFooters.Footer;//获取页脚 Paragraph headerpara = header.AddParagraph(); headerpara.AppendPicture(image); headerpara.Format.HorizontalAlignment = HorizontalAlignment.Center; //保存文档 doc.SaveToFile("QRCodeToHeader.docx", FileFormat.Docx2013); System.Diagnostics.Process.Start("QRCodeToHeader.docx"); } } }
二维码添加效果:
VB.NET
Imports Spire.Doc Imports Spire.Barcode Imports System.Drawing Imports System.IO Imports Spire.Doc.Documents Namespace AddQRCode Class Program Private Shared Sub Main(args As String()) '调用方法 ApplyKey(string key) 移除水印文字 Spire.Barcode.BarcodeSettings.ApplyKey("在这里输入去除水印字样的序列号") '创建Document对象,加载Word文档 Dim doc As New Document() doc.LoadFromFile("test.docx") '获取第2节 Dim section As Section = doc.Sections(1) '使用Spire.Barcode的BarcodeSettings和BarcodeGenerator类创建二维码并保存为图片 Dim settings As New BarcodeSettings() settings.Type = BarCodeType.QRCode settings.ImageWidth = 50 settings.ImageHeight = 50 settings.Data = "123456" settings.Data2D = "123456" settings.X = 0.7F settings.LeftMargin = 1 settings.ShowTextOnBottom = True settings.QRCodeECL = QRCodeECL.Q settings.QRCodeDataMode = QRCodeDataMode.Numeric Dim generator As New BarCodeGenerator(settings) Dim image As Image = generator.GenerateImage() 'image.Save("QRCode.png", System.Drawing.Imaging.ImageFormat.Png);//如果需要保存生成的二维码图片,可执行此步骤代码 '添加二维码到正文段落 Dim paragraph As Paragraph = section.AddParagraph() paragraph.AppendPicture(image) paragraph.Format.HorizontalAlignment = HorizontalAlignment.Right '添加二维码图片到Word页眉 Dim header As HeaderFooter = section.HeadersFooters.Header 'HeaderFooter footer = section.HeadersFooters.Footer;//获取页脚 Dim headerpara As Paragraph = header.AddParagraph() headerpara.AppendPicture(image) headerpara.Format.HorizontalAlignment = HorizontalAlignment.Center '保存文档 doc.SaveToFile("QRCodeToHeader.docx", FileFormat.Docx2013) System.Diagnostics.Process.Start("QRCodeToHeader.docx") End Sub End Class End Namespace
(完)
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式