Excel คือแอปพลิเคชัน สเปรดชีต ที่พัฒนาและเผยแพร่โดย Microsoft โดยทั่วไปจะใช้ในการจัดเก็บ จัดระเบียบ และติดตามชุดข้อมูลด้วยสูตรและฟังก์ชัน ในบางกรณี เราอาจต้องสร้างและเพิ่มบาร์โค้ดในไฟล์ Excel เพื่อฝังข้อมูลเฉพาะ เราสามารถเพิ่มภาพบาร์โค้ดที่เครื่องอ่านได้ลงในไฟล์ XLSX หรือ XLS โดยทางโปรแกรมในแอปพลิเคชัน .NET ในบทความนี้ เราจะมาเรียนรู้วิธีสร้างบาร์โค้ดใน Excel โดยใช้ C#
บทความจะครอบคลุมหัวข้อต่อไปนี้:
- C# API เพื่อสร้างบาร์โค้ดใน Excel
- สร้างสเปรดชีต Excel และเพิ่มบาร์โค้ด
- เพิ่มบาร์โค้ดลงในไฟล์ Excel ที่มีอยู่
- เพิ่มรหัส QR ลงในไฟล์ Excel
- อ่านบาร์โค้ดจากไฟล์ Excel
C# API เพื่อสร้างบาร์โค้ดใน Excel
สำหรับการเพิ่มบาร์โค้ดในสเปรดชีต Excel เราจะทำตามขั้นตอนสองขั้นตอน เราจะใช้ API Aspose.Cells for .NET เพื่อสร้างหรือโหลดไฟล์ Excel คลาส สมุดงาน ของ API ช่วยให้สามารถสร้างสมุดงาน Excel ใหม่หรือโหลดไฟล์ Excel ที่มีอยู่สำหรับการประมวลผลเพิ่มเติม เมธอด Save() ของคลาสนี้จะบันทึกสมุดงานตามเส้นทางไฟล์ที่กำหนด นอกจากนี้ API ยังมีคลาส Worksheet เพื่อจัดการการดำเนินการระดับชีตทั้งหมด
เราจะสร้างและเพิ่มภาพบาร์โค้ดลงในแผ่นงาน Excel โดยใช้ API Aspose.BarCode for .NET มีคลาส BarcodeGenerator เพื่อสร้างบาร์โค้ดของ EncodeType ที่ระบุ เมธอด Save() ของคลาสนี้จะบันทึกภาพบาร์โค้ดเพื่อสตรีมในรูปแบบเฉพาะ มีการแจงนับ BarCodeImageFormat เพื่อระบุรูปแบบการบันทึก API ยังมีคลาส BarCodeReader เพื่ออ่านบาร์โค้ดจากรูปภาพ
โปรด ดาวน์โหลด DLL ของ API หรือติดตั้งโดยใช้ NuGet
PM> Install-Package Aspose.BarCode
PM> Install-Package Aspose.Cells
สร้างสเปรดชีต Excel และเพิ่มบาร์โค้ดใน C#
เราสามารถสร้างสเปรดชีต Excel ใหม่และเพิ่มภาพบาร์โค้ดลงใน Excel โดยทำตามขั้นตอนด้านล่าง:
- ประการแรก สร้างอินสแตนซ์ของคลาส BarcodeGenerator ด้วย EncodeType และข้อความเพื่อเข้ารหัสเป็นอาร์กิวเมนต์
- จากนั้น สร้างอินสแตนซ์ของออบเจกต์สตรีมหน่วยความจำ
- จากนั้นเรียกเมธอด Save() เพื่อบันทึกภาพบาร์โค้ดไปยังสตรีมหน่วยความจำ
- จากนั้น สร้างอินสแตนซ์ของคลาสสมุดงาน
- จากนั้น เพิ่มแผ่นงานใหม่ใน WorksheetCollection ของสมุดงาน
- หลังจากนั้น ให้เพิ่มรูปภาพไปที่ PictureCollection ของเวิร์กชีตโดยมีอาร์กิวเมนต์สตรีมวัตถุและตำแหน่งรูปภาพ
- สุดท้ายเรียกเมธอด Save() ใช้เส้นทางไฟล์ XLSX เอาต์พุตเป็นอาร์กิวเมนต์
ตัวอย่างโค้ดต่อไปนี้สาธิตวิธีสร้างสเปรดชีต Excel ใหม่และเพิ่มภาพบาร์โค้ดโดยใช้ C#
// ตัวอย่างโค้ดนี้สาธิตวิธีการเพิ่มบาร์โค้ดในไฟล์ Excel ใหม่
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = @"C:\Files\BarCode\";
// ยกตัวอย่างวัตถุบาร์โค้ดเชิงเส้น ตั้งค่าข้อความรหัสและประเภทสัญลักษณ์สำหรับบาร์โค้ด
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.Code128, "1234567");
// การสร้างสตรีมหน่วยความจำและการบันทึกภาพบาร์โค้ดไปยังสตรีมหน่วยความจำ
System.IO.Stream ms = new System.IO.MemoryStream();
generator.Save(ms, BarCodeImageFormat.Bmp);
// สร้างอินสแตนซ์คลาส Excel ที่แสดงถึงไฟล์ Excel
Workbook workbook = new Workbook();
// การเพิ่มแผ่นงานใหม่
Worksheet sheet = workbook.Worksheets.Add("MySheet");
// วิธีการเพิ่มใช้พารามิเตอร์ต่อไปนี้:
// ดัชนีแถวซ้ายบน ดัชนีของแถวซ้ายบน
// ดัชนีคอลัมน์ซ้ายบน ดัชนีของคอลัมน์ซ้ายบน
// ไฟล์ภาพ.
sheet.Pictures.Add(5, 5, ms);
// บันทึกไฟล์
workbook.Save(dataDir + "sample.xlsx");
เพิ่มบาร์โค้ดให้กับไฟล์ Excel ที่มีอยู่ใน C#
นอกจากนี้ เรายังสามารถเพิ่มภาพบาร์โค้ดลงในแผ่นงานใดๆ ของสมุดงาน Excel ที่มีอยู่ได้โดยทำตามขั้นตอนด้านล่าง:
- ประการแรก สร้างอินสแตนซ์ของคลาส BarcodeGenerator ด้วย EncodeType และข้อความเพื่อเข้ารหัสเป็นอาร์กิวเมนต์
- จากนั้น สร้างอินสแตนซ์ของออบเจกต์สตรีมหน่วยความจำ
- จากนั้นเรียกเมธอด Save() เพื่อบันทึกภาพบาร์โค้ดไปยังสตรีมหน่วยความจำ
- ถัดไป โหลดไฟล์ Excel ที่มีอยู่โดยใช้คลาสสมุดงาน
- จากนั้น เข้าถึงแผ่นงานตามดัชนี
- หลังจากนั้น เพิ่มรูปภาพใน PictureCollection โดยใช้วิธี Add() โดยมีวัตถุสตรีมและตำแหน่งรูปภาพเป็นอาร์กิวเมนต์
- สุดท้ายเรียกเมธอด Save() ใช้เส้นทางไฟล์ XLSX เอาต์พุตเป็นอาร์กิวเมนต์
ตัวอย่างโค้ดต่อไปนี้สาธิตวิธีเพิ่มภาพบาร์โค้ดลงในไฟล์ Excel ที่มีอยู่โดยใช้ C#
// ตัวอย่างโค้ดนี้สาธิตวิธีการเพิ่มบาร์โค้ดให้กับไฟล์ Excel ที่มีอยู่
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = @"C:\Files\BarCode\";
// ยกตัวอย่างวัตถุบาร์โค้ดเชิงเส้น ตั้งค่าข้อความรหัสและประเภทสัญลักษณ์สำหรับบาร์โค้ด
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.Code128, "1234567");
// การสร้างสตรีมหน่วยความจำและการบันทึกภาพบาร์โค้ดไปยังสตรีมหน่วยความจำ
System.IO.Stream ms = new System.IO.MemoryStream();
generator.Save(ms, BarCodeImageFormat.Bmp);
// สร้างอินสแตนซ์คลาส Excel ที่แสดงถึงไฟล์ Excel
Workbook workbook = new Workbook(dataDir + "sample.xlsx");
// เข้าถึงแผ่นงานตามดัชนี
Worksheet sheet = workbook.Worksheets[0];
// วิธีการเพิ่มใช้พารามิเตอร์ต่อไปนี้:
// ดัชนีแถวซ้ายบน ดัชนีของแถวซ้ายบน
// ดัชนีคอลัมน์ซ้ายบน ดัชนีของคอลัมน์ซ้ายบน
// ไฟล์ภาพ.
sheet.Pictures.Add(5, 5, ms);
// บันทึกไฟล์
workbook.Save(dataDir + "sample_out.xlsx");
เพิ่มรหัส QR ลงในไฟล์ Excel ใน C#
ในทำนองเดียวกัน เรายังสามารถเพิ่มรหัส QR ลงในไฟล์ Excel ได้โดยทำตามขั้นตอนที่กล่าวถึงก่อนหน้านี้ อย่างไรก็ตาม เราต้องตั้งค่า EncodeType เป็น QR ในขั้นตอนแรก เราอาจต้องปรับตำแหน่งภาพในขั้นตอน #6 ด้วย
ตัวอย่างโค้ดต่อไปนี้สาธิตวิธีเพิ่มโค้ด QR ลงในไฟล์ Excel โดยใช้ C#
// ตัวอย่างโค้ดนี้สาธิตวิธีเพิ่มโค้ด QR ลงในไฟล์ Excel ที่มีอยู่
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = @"C:\Files\BarCode\";
// ยกตัวอย่างวัตถุบาร์โค้ดเชิงเส้น ตั้งค่าข้อความรหัสและประเภทสัญลักษณ์สำหรับบาร์โค้ด
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.QR, "1234567");
// การสร้างสตรีมหน่วยความจำและการบันทึกภาพบาร์โค้ดไปยังสตรีมหน่วยความจำ
System.IO.Stream ms = new System.IO.MemoryStream();
generator.Save(ms, BarCodeImageFormat.Bmp);
// สร้างอินสแตนซ์คลาส Excel ที่แสดงถึงไฟล์ Excel
Workbook workbook = new Workbook(dataDir + "sample.xlsx");
// เข้าถึงแผ่นงานตามดัชนี
Worksheet sheet = workbook.Worksheets[0];
// วิธีการเพิ่มใช้พารามิเตอร์ต่อไปนี้:
// ดัชนีแถวซ้ายบน ดัชนีของแถวซ้ายบน
// ดัชนีคอลัมน์ซ้ายบน ดัชนีของคอลัมน์ซ้ายบน
// ไฟล์ภาพ.
sheet.Pictures.Add(5, 5, ms);
// บันทึกไฟล์
workbook.Save(dataDir + "sample_out_qr.xlsx");
อ่านบาร์โค้ดจากไฟล์ Excel โดยใช้ C#
เราสามารถจดจำภาพบาร์โค้ดที่ฝังอยู่ในแผ่นงานใดๆ ของไฟล์ Excel โดยทำตามขั้นตอนด้านล่าง:
- ประการแรก โหลดไฟล์ Excel ที่มีอยู่โดยใช้คลาสสมุดงาน
- จากนั้น เข้าถึงแผ่นงานตามดัชนี
- ถัดไป บันทึกภาพเพื่อสตรีมจาก PictureCollection ในลูป
- จากนั้น สร้างอินสแตนซ์ของคลาส BarCodeReader ที่มีสตรีมรูปภาพและ DecodeType เป็นอาร์กิวเมนต์
- หลังจากนั้น ให้เรียกเมธอด ReadBarCodes() เพื่อรับออบเจกต์ BarCodeResult
- สุดท้ายแสดงข้อมูลบาร์โค้ด
ตัวอย่างโค้ดต่อไปนี้สาธิตวิธีการอ่านภาพบาร์โค้ดจากไฟล์ Excel โดยใช้ C#
// ตัวอย่างรหัสนี้สาธิตวิธีการอ่านบาร์โค้ดจากไฟล์ Excel
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = @"C:\Files\BarCode\";
// สร้างอินสแตนซ์คลาส Excel ที่แสดงถึงไฟล์ Excel
Workbook workbook = new Workbook(dataDir + "sample_out.xlsx");
Worksheet sheet = workbook.Worksheets[0];
// บันทึกภาพเพื่อสตรีมเป็นวง
foreach(var img in sheet.Pictures)
{
// บันทึกภาพเพื่อสตรีม
MemoryStream imageStream = new MemoryStream();
img.ToImage(imageStream, new Aspose.Cells.Rendering.ImageOrPrintOptions());
// จดจำบาร์โค้ดจากสตรีมรูปภาพด้านบน
using (BarCodeReader reader = new BarCodeReader(imageStream, DecodeType.Code128))
{
foreach (BarCodeResult result in reader.ReadBarCodes())
{
Console.WriteLine("Codetext found: " + result.CodeType);
Console.WriteLine("Symbology: " + result.CodeText);
}
}
}
ตัวอย่างโค้ดด้านบนจะต้องสร้างผลลัพธ์ต่อไปนี้
Codetext found: Code128
Symbology: 1234567
รับใบอนุญาตฟรี
คุณสามารถ รับใบอนุญาตชั่วคราวได้ฟรี เพื่อทดลองใช้ห้องสมุดโดยไม่มีข้อจำกัดในการประเมิน
บทสรุป
ในบทความนี้ เราได้เรียนรู้วิธีการ:
- สร้างสมุดงาน Excel โดยทางโปรแกรม
- เพิ่มแผ่นงานใหม่ในสมุดงาน Excel
- สร้างและเพิ่มภาพบาร์โค้ดลงในสเปรดชีต Excel
- อ่านภาพบาร์โค้ดจากไฟล์ Excel
นอกจากนี้ คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับ Aspose.BarCode for .NET API โดยใช้ เอกสารประกอบ ในกรณีที่มีความคลุมเครือ โปรดติดต่อเราได้ที่ ฟอรัม