PDF เป็นรูปแบบที่นิยมที่สุดสำหรับการแบ่งปันและการพิมพ์เอกสาร หลายองค์กรใช้ PDF เป็นรูปแบบมาตรฐานในการสร้างรายงานและแบ่งปันเอกสารทางการอื่นๆ ในบางกรณี เราอาจจำเป็นต้องฝังข้อมูลเฉพาะหรือข้อมูลเกี่ยวกับเอกสาร ผลิตภัณฑ์ หรือบริษัทเป็นรูปภาพบาร์โค้ดในเอกสาร PDF เราสามารถเพิ่มภาพบาร์โค้ดที่เครื่องอ่านได้ลงในเอกสาร PDF โดยทางโปรแกรมในแอปพลิเคชัน .NET ในบทความนี้ เราจะมาเรียนรู้วิธีเพิ่มบาร์โค้ดในเอกสาร PDF โดยใช้ C#
บทความจะครอบคลุมหัวข้อต่อไปนี้:
- C # API เพื่อเพิ่มบาร์โค้ดให้กับ PDF
- สร้างเอกสาร PDF และเพิ่มบาร์โค้ด
- เพิ่มบาร์โค้ดให้กับเอกสาร PDF ที่มีอยู่
- เพิ่มรหัส QR ลงในเอกสาร PDF
- อ่านบาร์โค้ดจากเอกสาร PDF
C # API เพื่อเพิ่มบาร์โค้ดให้กับ PDF
สำหรับการเพิ่มบาร์โค้ดในเอกสาร PDF เราจะทำตามขั้นตอนสองขั้นตอน ประการแรก เราจะใช้ Aspose.PDF for .NET API เพื่อสร้างหรือโหลดเอกสาร PDF จากนั้นเราจะสร้างและเพิ่มภาพบาร์โค้ดลงใน PDF โดยใช้ Aspose.BarCode for .NET API โปรด ดาวน์โหลด DLL ของ API หรือติดตั้งโดยใช้ NuGet
PM> Install-Package Aspose.BarCode
PM> Install-Package Aspose.PDF
สร้างเอกสาร PDF และเพิ่มบาร์โค้ดใน C#
เราสามารถสร้างเอกสาร PDF ใหม่และเพิ่มภาพบาร์โค้ดลงใน PDF โดยทำตามขั้นตอนด้านล่าง:
- ขั้นแรก สร้างอินสแตนซ์ของคลาส BarcodeGenerator ที่มี EncodeType และข้อความเพื่อเข้ารหัสเป็นอาร์กิวเมนต์
- จากนั้น สร้างอินสแตนซ์ของออบเจกต์สตรีมหน่วยความจำ
- จากนั้น เรียกใช้เมธอด Save() เพื่อบันทึกภาพบาร์โค้ดไปยังสตรีมหน่วยความจำ
- จากนั้น สร้างอินสแตนซ์ของคลาส Document
- จากนั้น เพิ่ม หน้า ลงในเอกสาร PDF ที่สร้างขึ้นใหม่
- จากนั้น สร้างอินสแตนซ์ของคลาส PdfFileMend
- จากนั้น เรียกเมธอด BindPdf() กับวัตถุ Document เพื่อผูก
- ถัดไป เรียกเมธอด AddImage() โดยมีวัตถุกระแสและพิกัดตำแหน่งรูปภาพเป็นอาร์กิวเมนต์
- หลังจากนั้น ให้บันทึก PDF โดยใช้วิธี Save() ใช้เส้นทางไฟล์ PDF เอาต์พุตเป็นอาร์กิวเมนต์
- สุดท้าย เรียกเมธอด Close() เพื่อปิดวัตถุ PdfFileMend
ตัวอย่างโค้ดต่อไปนี้สาธิตวิธีสร้างเอกสาร PDF ใหม่และเพิ่มภาพบาร์โค้ดโดยใช้ C#
// ตัวอย่างรหัสนี้สาธิตวิธีเพิ่มภาพบาร์โค้ดใน PDF
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = @"D:\Files\BarCode\";
// ยกตัวอย่างวัตถุบาร์โค้ดเชิงเส้น ตั้งค่าข้อความรหัสและประเภทสัญลักษณ์สำหรับบาร์โค้ด
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.Code39Standard, "1234567");
// สร้างสตรีมหน่วยความจำและบันทึกภาพบาร์โค้ดไปยังสตรีมหน่วยความจำ
Stream ms = new MemoryStream();
generator.Save(ms, BarCodeImageFormat.Bmp);
// สร้างเอกสาร PDF และเพิ่มหน้าในเอกสาร
Document doc = new Document();
doc.Pages.Add();
// เปิดเอกสาร
PdfFileMend mender = new PdfFileMend();
// ผูก PDF เพื่อเพิ่มบาร์โค้ด
mender.BindPdf(doc);
// เพิ่มภาพบาร์โค้ดในไฟล์ PDF
mender.AddImage(ms, 1, 100, 600, 200, 700);
// บันทึกการเปลี่ยนแปลง
mender.Save(dataDir + "AddImage_out.pdf");
// ปิดวัตถุ PdfFileMend
mender.Close();
เพิ่มบาร์โค้ดให้กับเอกสาร PDF ที่มีอยู่ใน C#
เรายังสามารถเพิ่มภาพบาร์โค้ดในหน้าใดก็ได้ของเอกสาร PDF ที่มีอยู่ เมธอด AddImage() อนุญาตให้เพิ่มรูปภาพไปยังหน้าที่ระบุของเอกสาร PDF ที่พิกัดที่ระบุ เราสามารถแทรกรูปภาพลงในเอกสาร PDF ที่มีอยู่โดยทำตามขั้นตอนด้านล่าง:
- ขั้นแรก สร้างอินสแตนซ์ของคลาส BarcodeGenerator ที่มี EncodeType และข้อความเพื่อเข้ารหัสเป็นอาร์กิวเมนต์
- จากนั้น สร้างอินสแตนซ์ของออบเจกต์สตรีมหน่วยความจำ
- จากนั้น เรียกใช้เมธอด Save() เพื่อบันทึกภาพบาร์โค้ดไปยังสตรีมหน่วยความจำ
- จากนั้น โหลดเอกสาร PDF โดยใช้คลาส Document
- จากนั้น สร้างอินสแตนซ์ของคลาส PdfFileMend
- ถัดไป เรียกใช้เมธอด BindPdf() กับวัตถุเอกสารเพื่อผูก
- จากนั้น เรียกใช้เมธอด AddImage() โดยมีอาร์กิวเมนต์สตรีมอ็อบเจ็กต์ หมายเลขหน้า และพิกัดตำแหน่งรูปภาพ
- หลังจากนั้น ให้บันทึก PDF โดยใช้วิธี Save() ใช้เส้นทางไฟล์ PDF เอาต์พุตเป็นอาร์กิวเมนต์
- สุดท้าย เรียกเมธอด Close() เพื่อปิดวัตถุ PdfFileMend
ตัวอย่างโค้ดต่อไปนี้สาธิตวิธีเพิ่มภาพบาร์โค้ดในเอกสาร PDF ที่มีอยู่โดยใช้ C#
// ตัวอย่างโค้ดนี้สาธิตวิธีเพิ่มภาพบาร์โค้ดใน PDF ที่มีอยู่
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = @"D:\Files\BarCode\";
// ยกตัวอย่างวัตถุบาร์โค้ดเชิงเส้น ตั้งค่าข้อความรหัสและประเภทสัญลักษณ์สำหรับบาร์โค้ด
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.Code39Standard, "1234567");
// สร้างสตรีมหน่วยความจำและบันทึกภาพบาร์โค้ดไปยังสตรีมหน่วยความจำ
Stream ms = new MemoryStream();
generator.Save(ms, BarCodeImageFormat.Bmp);
// โหลดเอกสาร PDF
Document doc = new Document(dataDir + "sample.pdf");
// เปิดเอกสาร
PdfFileMend mender = new PdfFileMend();
// ผูก PDF เพื่อเพิ่มภาพบาร์โค้ด
mender.BindPdf(doc);
// เพิ่มภาพบาร์โค้ดในไฟล์ PDF
mender.AddImage(ms, 1, 70, 0, 200, 600);
// บันทึกการเปลี่ยนแปลง
mender.Save(dataDir + "Sample_out.pdf");
// ปิดวัตถุ PdfFileMend
mender.Close();
เพิ่ม QR Code ให้กับเอกสาร PDF ใน C#
ในทำนองเดียวกัน เรายังสามารถเพิ่มรหัส QR ลงในเอกสาร PDF โดยทำตามขั้นตอนที่กล่าวถึงก่อนหน้านี้ อย่างไรก็ตาม เราต้องตั้งค่า EncodeType เป็น QR ในขั้นตอนแรก เราอาจต้องปรับตำแหน่งภาพในขั้นตอน #7 ด้วย
ตัวอย่างโค้ดต่อไปนี้สาธิตวิธีเพิ่มโค้ด QR ลงในเอกสาร PDF โดยใช้ C#
// ตัวอย่างรหัสนี้สาธิตวิธีเพิ่มรหัส QR ให้กับ PDF ที่มีอยู่
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = @"D:\Files\BarCode\";
// ยกตัวอย่างวัตถุบาร์โค้ดเชิงเส้น ตั้งค่าข้อความรหัสและประเภทสัญลักษณ์สำหรับบาร์โค้ด
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.QR, "1234567");
// สร้างสตรีมหน่วยความจำและบันทึกภาพบาร์โค้ดไปยังสตรีมหน่วยความจำ
Stream ms = new MemoryStream();
generator.Save(ms, BarCodeImageFormat.Bmp);
// โหลดเอกสาร PDF
Document doc = new Document(dataDir + "sample.pdf");
// เปิดเอกสาร
PdfFileMend mender = new PdfFileMend();
// ผูก PDF เพื่อเพิ่มภาพบาร์โค้ด
mender.BindPdf(doc);
// เพิ่มภาพ QR ในไฟล์ PDF
mender.AddImage(ms, 1, 0, 650, 200, 780);
// บันทึกการเปลี่ยนแปลง
mender.Save(dataDir + "Sample_QR_out.pdf");
// ปิดวัตถุ PdfFileMend
mender.Close();
อ่านบาร์โค้ดจากเอกสาร PDF โดยใช้ C#
เราสามารถจดจำภาพบาร์โค้ดที่ฝังอยู่ในหน้าใดๆ ของเอกสาร PDF โดยใช้คลาส PdfExtractor อนุญาตให้แยกรูปภาพจาก PDF จากนั้นเราจะอ่านข้อมูลบาร์โค้ดจากรูปภาพที่แยกออกมา เราสามารถอ่านบาร์โค้ดจากเอกสาร PDF ได้โดยทำตามขั้นตอนด้านล่าง:
- ขั้นแรก สร้างอินสแตนซ์ของคลาส PdfExtractor
- ถัดไป ผูกเอกสาร PDF ที่ป้อนโดยใช้เมธอด BindPdf()
- จากนั้นตั้งค่าช่วงของหน้าสำหรับการแยกรูปภาพ
- ต่อไป เรียกใช้เมธอด ExtractImage() เพื่อแยกรูปภาพ
- จากนั้นบันทึกภาพเพื่อสตรีมแบบวนซ้ำ
- จากนั้น สร้างอินสแตนซ์ของคลาส BarCodeReader ที่มีสตรีมรูปภาพและ DecodeType เป็นอาร์กิวเมนต์
- หลังจากนั้น เรียกใช้เมธอด ReadBarCodes() เพื่อรับออบเจกต์ BarCodeResult
- สุดท้ายแสดงข้อมูลบาร์โค้ด
ตัวอย่างโค้ดต่อไปนี้สาธิตวิธีการอ่านภาพบาร์โค้ดจากเอกสาร PDF โดยใช้ C#
// ตัวอย่างรหัสนี้สาธิตวิธีการอ่านบาร์โค้ดจาก PDF
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = @"D:\Files\BarCode\sample_out.pdf";
// ผูกเอกสาร pdf
Aspose.Pdf.Facades.PdfExtractor pdfExtractor = new Aspose.Pdf.Facades.PdfExtractor();
pdfExtractor.BindPdf(dataDir);
// กำหนดช่วงหน้าสำหรับการแยกรูปภาพ
pdfExtractor.StartPage = 1;
pdfExtractor.EndPage = 1;
// แยกภาพ
pdfExtractor.ExtractImage();
// บันทึกภาพเพื่อสตรีมเป็นวง
while (pdfExtractor.HasNextImage())
{
// บันทึกภาพเพื่อสตรีม
MemoryStream imageStream = new MemoryStream();
pdfExtractor.GetNextImage(imageStream);
imageStream.Position = 0;
// จดจำบาร์โค้ดจากสตรีมรูปภาพด้านบน
using (BarCodeReader reader = new BarCodeReader(imageStream, DecodeType.Code39Standard))
{
foreach (BarCodeResult result in reader.ReadBarCodes())
{
Console.WriteLine("Codetext found: " + result.CodeText);
Console.WriteLine("Symbology: " + result.CodeType);
}
}
}
Codetext found: 1234567
Symbology: Code39Standard
รับใบอนุญาตฟรี
คุณสามารถ รับใบอนุญาตชั่วคราวได้ฟรี เพื่อทดลองใช้ห้องสมุดโดยไม่มีข้อจำกัดในการประเมิน
บทสรุป
ในบทความนี้ เราได้เรียนรู้วิธีการ:
- สร้างเอกสาร PDF โดยทางโปรแกรม
- สร้างและเพิ่มภาพบาร์โค้ดให้กับ PDF ใน C#;
- แยกรูปภาพจากเอกสาร PDF โดยใช้ C #;
- อ่านภาพบาร์โค้ดจากเอกสาร PDF
นอกจากนี้ คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับ Aspose.BarCode for .NET API โดยใช้ เอกสารประกอบ ในกรณีที่มีความคลุมเครือ โปรดติดต่อเราได้ที่ ฟอรัม