您好,登录后才能下订单哦!
这篇文章主要介绍了C#/VB.NET怎么实现在PDF表格中添加条形码的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C#/VB.NET怎么实现在PDF表格中添加条形码文章都会有所收获,下面我们一起来看看吧。
本次功能测试中,使用 Free Spire.PDF for .NET。
实现功能的大致思路:生成条形码,将条形码保存为图片,然后在PDF中的表格单元格中插入条码图片。
Spire.PDF for .NET 中的Spire.Pdf.Barcode namespace提供了多种Barcode类型,用于满足创建不同类型barcode的需求,如图:

Spire.Pdf.dll文件的引入方法如下:
方法1
在程序中引入Spire.Pdf.dll文件;将 Free Spire.PDF for .NET 下载到本地,解压,安装。安装完成后,找到安装路径下BIN文件夹中的Spire.Pdf.dll。然后在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“添加引用”,将本地路径BIN文件夹下的dll文件添加引用至程序。
方法2
通过 NuGet 安装。可通过以下2种方法安装:
1.可以在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“管理NuGet包”,然后搜索“ Free Spire.PDF”,点击“安装”。等待程序安装完成。
2.将以下内容复制到PM控制台安装。
Install-Package FreeSpire.PDF -Version 8.2.0
using Spire.Pdf;
using Spire.Pdf.Barcode;
using Spire.Pdf.Graphics;
using Spire.Pdf.Grid;
using System.Drawing;
namespace AddBarcodeToTable
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建PDF文档
            PdfDocument pdf = new PdfDocument();
            PdfPageBase page = pdf.Pages.Add();   
            
            //创建PdfGrid类的表格对象
            PdfGrid grid = new PdfGrid();
            grid.Style.CellPadding = new PdfPaddings(1, 1, 1, 1);
            grid.Style.Font = new PdfTrueTypeFont(new Font("Arial Unicode MS", 9f), true);
            //添加2行2列到表格
            PdfGridRow row1 = grid.Rows.Add();
            PdfGridRow row2 = grid.Rows.Add();       
            grid.Columns.Add(2);
            //设置列宽 
            foreach (PdfGridColumn column in grid.Columns)
            {
                column.Width = 150f;
            }
            //在单元格中写入数据 
            row1.Cells[0].Value = "产品编号";
            row1.Cells[1].Value = "条码";
            row2.Cells[0].Value = "B0215";
            
            //创建条码
            PdfCodabarBarcode barcode1 = new PdfCodabarBarcode("00:12-3456/7890");
            barcode1.BarcodeToTextGapHeight = 1f;
            barcode1.EnableCheckDigit = true;
            barcode1.ShowCheckDigit = true;          
            barcode1.TextDisplayLocation = TextLocation.Bottom;
            barcode1.TextColor = Color.Blue;           
            //将条码保存为图片到指定路径
            Image image =barcode1.ToImage();           
            image.Save(@"F:/VS2017Project/DrawTable_PDF/AddBarcodeToTable/bin/Debug/BarcodeImage.png");
            //将条码图片添加到表格单元格
            string imgpath = "F:/VS2017Project/DrawTable_PDF/AddBarcodeToTable/bin/Debug/BarcodeImage.png";           
            PdfGridCellContentList contentList = new PdfGridCellContentList();
            PdfGridCellContent content = new PdfGridCellContent();
            SizeF imageSize = new SizeF(120, 80);
            content.ImageSize = imageSize;
            content.Image = PdfImage.FromFile(imgpath);           
            contentList.List.Add(content);
            row2.Cells[1].Value = contentList;           
            //绘制表格到页面指定位置
            grid.Draw(page, new PointF(0, 40));
            //保存PDF文档
            pdf.SaveToFile("AddBarcodeToTable.pdf",FileFormat.PDF);
            System.Diagnostics.Process.Start("AddBarcodeToTable.pdf");
        }
    }
}Imports Spire.Pdf
Imports Spire.Pdf.Barcode
Imports Spire.Pdf.Graphics
Imports Spire.Pdf.Grid
Imports System.Drawing
Namespace AddBarcodeToTable
    Class Program
        Private Shared Sub Main(args As String())
            '创建PDF文档
            Dim pdf As New PdfDocument()
            Dim page As PdfPageBase = pdf.Pages.Add()
            '创建PdfGrid类的表格对象
            Dim grid As New PdfGrid()
            grid.Style.CellPadding = New PdfPaddings(1, 1, 1, 1)
            grid.Style.Font = New PdfTrueTypeFont(New Font("Arial Unicode MS", 9F), True)
            '添加2行2列到表格
            Dim row1 As PdfGridRow = grid.Rows.Add()
            Dim row2 As PdfGridRow = grid.Rows.Add()
            grid.Columns.Add(2)
            '设置列宽 
            For Each column As PdfGridColumn In grid.Columns
                column.Width = 150F
            Next
            '在单元格中写入数据 
            row1.Cells(0).Value = "产品编号"
            row1.Cells(1).Value = "条码"
            row2.Cells(0).Value = "B0215"
            '创建条码
            Dim barcode1 As New PdfCodabarBarcode("00:12-3456/7890")
            barcode1.BarcodeToTextGapHeight = 1F
            barcode1.EnableCheckDigit = True
            barcode1.ShowCheckDigit = True
            barcode1.TextDisplayLocation = TextLocation.Bottom
            barcode1.TextColor = Color.Blue
            '将条码保存为图片到指定路径
            Dim image As Image = barcode1.ToImage()
            image.Save("F:/VS2017Project/DrawTable_PDF/AddBarcodeToTable/bin/Debug/BarcodeImage.png")
            '将条码图片添加到表格单元格
            Dim imgpath As String = "F:/VS2017Project/DrawTable_PDF/AddBarcodeToTable/bin/Debug/BarcodeImage.png"
            Dim contentList As New PdfGridCellContentList()
            Dim content As New PdfGridCellContent()
            Dim imageSize As New SizeF(120, 80)
            content.ImageSize = imageSize
            content.Image = PdfImage.FromFile(imgpath)
            contentList.List.Add(content)
            row2.Cells(1).Value = contentList
            '绘制表格到页面指定位置
            grid.Draw(page, New PointF(0, 40))
            '保存PDF文档
            pdf.SaveToFile("AddBarcodeToTable.pdf", FileFormat.PDF)
            System.Diagnostics.Process.Start("AddBarcodeToTable.pdf")
        End Sub
    End Class
End Namespace文档效果:

关于“C#/VB.NET怎么实现在PDF表格中添加条形码”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“C#/VB.NET怎么实现在PDF表格中添加条形码”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。