C#/VB.NET 在Word中添加条码、二维码的示例代码

请注意以下的详细攻略:

准备工作

在使用C#/VB.NET代码添加条码或者二维码前,我们需要先安装对应的NuGet包。在Visual Studio中,可以通过NuGet Package Manager来安装。

对于添加条码,我们可以使用一个叫做ZXing.Net的Nuget包。ZXing.Net是一个用C#编写的开源程序库,用于读写二维码和条形码。它支持多种符号,包括UPC-A, UPC-E, EAN-8, EAN-13, Code 39, Code 93, Code 128, ITF, QR Code, Data Matrix, Aztec等等。

对于添加二维码,我们可以使用一个叫做QRCoder的Nuget包。QRCoder是一个轻量级的QR码生成库,使用C#编写。它可以生成PNG, GIF, BMP, SVG, PDF格式的二维码。

在安装好了NuGet包之后,我们就可以开始示例代码的编写了。

ZXing.Net 在Word中添加条码的示例代码

我们可以先通过一条简单的示例代码来介绍如何将条码添加到Word中。在这个例子中,我们将添加一个Code 39类型的条码,并使用C#编写代码。

using System.IO;
using System.Drawing.Imaging;
using System.Drawing.Printing;
using System.Drawing;
using ZXing;

// 设置一些参数
var text = "123456ABC";
var width = 150;
var height = 100;
var margin = 10;

// 初始化条码
var writer = new BarcodeWriter();
writer.Format = BarcodeFormat.CODE_39;

var options = new EncodingOptions()
{
    Width = width,
    Height = height,
    Margin = margin
};

writer.Options = options;

// 生成条码图片
var bitmap = writer.Write(text);
var stream = new MemoryStream();
bitmap.Save(stream, ImageFormat.Png);

// 将生成的图片插入Word文档
Object oMissing = System.Reflection.Missing.Value;
var oWord = new Microsoft.Office.Interop.Word.Application();
var oDoc = oWord.Documents.Add(ref oMissing, ref oMissing, ref oMissing, ref oMissing);

oWord.Visible = true;

var oRange = oDoc.Bookmarks.get_Item(ref oMissing).Range;

oRange.InlineShapes.AddPicture(stream, ref oMissing, ref oMissing, ref oMissing);

// 修改图片大小
var oShape = oRange.InlineShapes[1];
oShape.Width = 300;
oShape.Height = 200;

QRCoder 在Word中添加二维码的示例代码

现在,我们就可以通过下面的示例代码来将二维码添加到Word中了。在这个例子中,我们将添加一个包含URL的QR码,同样使用C#编写代码。

using QRCoder;

// 设置一些参数
var text = "http://google.com";
var width = 150;
var height = 150;

// 初始化QR码
var qrGenerator = new QRCodeGenerator();
var qrCodeData = qrGenerator.CreateQrCode(text, QRCodeGenerator.ECCLevel.Q);
var qrCode = new QRCode(qrCodeData);

// 生成QR码图片
var bitmap = qrCode.GetGraphic(width, Color.Black, Color.White, true);
var stream = new MemoryStream();
bitmap.Save(stream, ImageFormat.Png);

// 将生成的图片插入Word文档
Object oMissing = System.Reflection.Missing.Value;
var oWord = new Microsoft.Office.Interop.Word.Application();
var oDoc = oWord.Documents.Add(ref oMissing, ref oMissing, ref oMissing, ref oMissing);

oWord.Visible = true;

var oRange = oDoc.Bookmarks.get_Item(ref oMissing).Range;

oRange.InlineShapes.AddPicture(stream, ref oMissing, ref oMissing, ref oMissing);

// 修改图片大小
var oShape = oRange.InlineShapes[1];
oShape.Width = 300;
oShape.Height = 300;

以上就是将条码和二维码添加到Word文档的示例代码。需要注意的是,我们使用了一些.NET中的常用类和库,例如MemoryStream、ImageFormat等。同时,我们也修改了插入图片的大小,这样可以让生成的条码或二维码更加美观。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#/VB.NET 在Word中添加条码、二维码的示例代码 - Python技术站

(0)
上一篇 2023年5月31日
下一篇 2023年5月31日

相关文章

  • C# 监控 Windows 文件夹的方法

    C#可以使用FileSystemWatcher类来监控Windows文件夹。FileSystemWatcher类可以监视文件夹中的文件和子文件夹的创建、删除、重命名和修改等操作,并触发相应的事件。本文将提供C#监控Windows文件夹的完整攻略,包括创建FileSystemWatcher对象、设置监控选项、处理事件等。同时,本文还提供两个示例,演示如何使用C…

    C# 2023年5月15日
    00
  • asp.net(C#) 动态添加非ASP的标准html控件(如添加Script标签)

    在asp.net中,动态添加非ASP的标准html控件可以通过代码生成的方式实现。在代码中,可以通过使用System.Web.UI.HtmlControls.HtmlGenericControl类实例化一个具有特定标记名称(如 script )的html控件,并设置其属性等具体信息,然后将该控件添加到asp.net页面中。 以下是完整攻略: 在代码中实例化特…

    C# 2023年6月3日
    00
  • C#获取字符串后几位数的方法

    获取字符串后几位数可以通过几种不同的方式来实现。下面将介绍两种常用的方法。 方法一:使用Substring方法 C#中的字符串类提供了Substring方法来截取字符串中的子串。要获取字符串后几位数,只需要使用Substring方法,并将其参数设置为字符串长度减去所需的位数即可。 以下是实现该方法的代码示例: string str = "hello…

    C# 2023年6月8日
    00
  • C# 实现Zookeeper分布式锁的参考示例

    关于C#实现Zookeeper分布式锁的攻略,我会提供以下几个方面的内容: Zookeeper分布式锁的概念介绍及实现原理 C#开发Zookeeper分布式锁的必备条件 C#实现Zookeeper分布式锁的示例说明 下面,我将进一步阐述这些内容。 1. Zookeeper分布式锁的概念介绍及实现原理 在分布式系统中,如果多个节点同时对同一资源进行访问,就有很…

    C# 2023年6月3日
    00
  • .NET Core利用动态代理实现AOP(面向切面编程)

    .NET Core 利用动态代理实现 AOP(面向切面编程) AOP(面向切面编程)是一种编程范式,它可以将横切关注点(如日志记录、性能统计、事务管理等)从业务逻辑中分离出来。在 .NET Core 中,可以使用动态代理来实现 AOP。本攻略将详细讲解 .NET Core 利用动态代理实现 AOP 的步骤。 1. 安装 NuGet 包 在 .NET Core…

    C# 2023年5月17日
    00
  • Windows 8 应用框架理解及开发工具使用实例教程

    Windows 8 应用框架理解及开发工具使用实例教程 理解Windows 8应用框架 Windows 8应用框架是一套用于开发Windows Store应用程序的技术框架,为开发人员提供了一些现代化的开发工具和API。当我们使用Windows 8开发应用时,我们需要使用一些特定于Windows 8的技术,例如Windows Runtime API、C#、J…

    C# 2023年6月7日
    00
  • 如何在C#中使用 CancellationToken 处理异步任务

    为了在C#中使用CancellationToken处理异步任务,我们需要先了解CancellationToken的概念。CancellationToken是一个结构体,代表了一个取消请求,可以在异步任务运行期间使用它来取消任务。 下面是使用CancellationToken取消异步任务的完整攻略: 1. 创建CancellationToken实例 在开始任务…

    C# 2023年5月15日
    00
  • ASP.NET Core基础之启动设置

    ASP.NET Core基础之启动设置 ASP.NET Core是一个跨平台的开源Web框架,它可以在Windows、Linux和macOS上运行。在ASP.NET Core应用程序中,启动设置是非常重要的,因为它们决定了应用程序的行为和性能。本文将介绍ASP.NET Core应用程序的启动设置,并提供一些示例来说明如何使用它们。 启动设置 ASP.NET …

    C# 2023年5月17日
    00
合作推广
合作推广
分享本页
返回顶部