C# 在Word文档中生成条形码

简介

条形码是由多个不同的空白和黑条按照一定的顺序组成,用于表示各种信息如产品名称、制造商、类别、价格等。目前,条形码在我们的日常生活中有着很广泛的应用,不管是在图书还是各种商品上都随处可见,扫描条形码就可以查询这个商品的信息,非常方便。

生成

生成条形码分为两步,第一步需要先下载并在系统上安装条形码字体,安装条形码字体的步骤如下:

1.条形码的字体有很多种,如code39,code128等,网上有很多条形码字体,根据自己的需要选择条形码字体下载,然后在开始->运行里输入C:\Windows\Fonts,回车,出现以下界面:

2. 从下载的字体文件夹里复制后缀为.TTF的文件,粘贴到上图所示的文件夹里,然后关闭文件夹,这样字体的安装就基本完成了。

第二步是代码实现:

下面是一个简单的使用C#在word文档中生成条形码的项目。这里我使用了一个从CodePlex上下载的免费Word组件

步骤1新建项目,添加引用并使用如下命名空间:

using System.Drawing;
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;

步骤2创建一个新的word文档,并给它添加一个段落。

Document document = new Document();
Paragraph p = document.AddSection().AddParagraph();

步骤3添加条形码文本,并设置字体名称(下载的条形码字体名称),还可以根据需要来设置字体大小和字体颜色。

TextRange txtRang = p.AppendText("H63TWX11072");
txtRang.CharacterFormat.FontName = "C39HrP48DmTt";
txtRang.CharacterFormat.FontSize = 80;
txtRang.CharacterFormat.TextColor = Color.SeaGreen;

步骤4保存并重启文件。

document.SaveToFile("barcode.docx", FileFormat.Docx);
System.Diagnostics.Process.Start("barcode.docx");

效果图如下:

全部代码:

using System.Drawing;
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields; namespace Create_Barcode_in_Word
{
class Program
{
static void Main(string[] args)
{
Document document = new Document();
Paragraph p = document.AddSection().AddParagraph(); TextRange txtRang = p.AppendText("H63TWX11072");
txtRang.CharacterFormat.FontName = "C39HrP48DmTt";
txtRang.CharacterFormat.FontSize = 80;
txtRang.CharacterFormat.TextColor = Color.SeaGreen; document.SaveToFile("barcode.docx", FileFormat.Docx);
System.Diagnostics.Process.Start("barcode.docx");
}
}
}

C# 在Word文档中生成条形码的更多相关文章

  1. 怎样以快速样式的方式在word文档中生成以下多级自动编号

    本篇博文简单介绍一下在word中利用快速样式生成多级编号的方法. 一.自定义多级列表格式: 1.点击,开始--段落--多级列表--定义新的多级列表: 2.设置一级编号: (1)在"此级的编号 ...

  2. C# 在word文档中复制表格并粘帖到下一页中

    C# 在word文档中复制表格并粘帖到下一页中 object oMissing = System.Reflection.Missing.Value;            Microsoft.Offi ...

  3. C# Word文档中插入、提取图片,文字替换图片

    Download Files:ImageOperationsInWord.zip 简介 在这篇文章中我们可以学到在C#程序中使用一个Word文档对图像的各种操作.图像会比阅读文字更有吸引力,而且图像是 ...

  4. 利用POI操作不同版本号word文档中的图片以及创建word文档

    我们都知道要想利用java对office操作最经常使用的技术就应该是POI了,在这里本人就不多说到底POI是什么和怎么用了. 先说本人遇到的问题,不同于利用POI去向word文档以及excel文档去写 ...

  5. C# 提取Word文档中的图片

    C# 提取Word文档中的图片 图片和文字是word文档中两种最常见的对象,在微软word中,如果我们想要提取出一个文档内的图片,只需要右击图片选择另存为然后命名保存就可以了,今天这篇文章主要是实现使 ...

  6. 把word文档中的所有图片导出

    把word文档中的所有图片导出 end

  7. aspose.words复制插入同一word文档中的某个页面

    选择word模板 Document doc = new Document(Server.MapPath("~\\templet") + "\\" + name. ...

  8. Aspose.Words:如何添加另一个WORD文档中的Node对象

    原文:Aspose.Words:如何添加另一个WORD文档中的Node对象 首先看一段代码,这段代码意图从docSource中获取第一个表格,并插入docTarget的末尾: , true); doc ...

  9. 使用Java POI来选择提取Word文档中的表格信息

    通过使用Java POI来提取Word(1992)文档中的表格信息,其中POI支持不同的ms文档类型,在具体操作中需要注意.本文主要是通过POI来提取微软2003文档中的表格信息,具体code如下(事 ...

随机推荐

  1. (转)python requests的安装与简单运用

    requests是python的一个HTTP客户端库,跟urllib,urllib2类似,那为什么要用requests而不用urllib2呢?官方文档中是这样说明的: python的标准库urllib ...

  2. 抓包工具Wireshark过滤器

    抓包工具WireShark分为两种过滤器: 捕捉过滤器(CaptureFilters) 显示过滤器(DisplayFilters) 捕捉过虑器语法: Protocol  Direction  Host ...

  3. HDU--最小路

    最小路 Time Limit: 5000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...

  4. Spring4 实例

    结构目录如下: 其中: dao层和entity层都属于hibernate的的管辖.entity层里面装的是每张表对应的持久化类.dao层里面装的是"底层操作数据库的行为",仅仅只是 ...

  5. spring+mybatis+oracle/mysql整合开发需要的jar包详解

    导入spring,mybatis,c3p0,oracle和mybatis提供的与spring整合的插件包   mysql的jar:         mysql-connector-java-5.1.7 ...

  6. initWithCoder与initWithFrame的区别

    1. initWithFrame方法是什么?   initWithFrame方法用来初始化并返回一个新的视图对象,根据指定的CGRect(尺寸). 当然,其他UI对象,也有initWithFrame方 ...

  7. FastReport.Net 常用功能总汇

    一.常用控件 文本框:输入文字或表达式 表格:设置表格的行列数,输入数字或表达式 子报表:放置子报表后,系统会自动增加一个页面,你可以在此页面上设计需要的报表.系统在打印处理时,先按主报表打印,当碰到 ...

  8. Mvc form提交

    在项目开发中,我们离不开表单提交,本篇主要记录mvc的Ajax.BeginForm提交方式. 需要用到的js     @Url.Script("~/Content/Scripts/jquer ...

  9. io.js入门(二)—— 所支持的ES6(上)

    io.js的官网上有专门介绍其所支持的ES6特性的页面(点我查看),上面介绍到,相比nodeJS,io.js已从根本上支持了新版V8引擎上所支持的ES6特性,无需再添加任何运行时标志(如 --harm ...

  10. Linux模块机制浅析

    Linux模块机制浅析   Linux允许用户通过插入模块,实现干预内核的目的.一直以来,对linux的模块机制都不够清晰,因此本文对内核模块的加载机制进行简单地分析. 模块的Hello World! ...