<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
條碼的應用已深入生活和工作的方方面面。在處理條碼時,常需要和各種檔案格式相結合。當需要在檔案中插入、編輯或者刪除條碼時,可藉助於一些專業的類庫工具來實現。本文,以操作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# PDF新增條形碼 的資料請關注it145.com其它相關文章!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45