สร้างบาร์โค้ดในเอกสาร Word โดยใช้ C#

บาร์โค้ดคือรูปภาพในรูปแบบของเส้นขนาน จุด หรือสี่เหลี่ยมที่มีการเข้ารหัสข้อมูล/สารสนเทศ ผู้เชี่ยวชาญในอุตสาหกรรมฝังและเข้าถึงข้อมูลผลิตภัณฑ์ ติดตามการเคลื่อนไหวของผลิตภัณฑ์ และติดตามสินค้าคงคลังโดยใช้บาร์โค้ด ในบางกรณี เราอาจต้องสร้างและเพิ่มบาร์โค้ดในเอกสาร MS Word MS Word เป็นโปรแกรมประมวลผลคำกราฟิกที่ได้รับความนิยมและใช้กันอย่างแพร่หลาย ใช้ในการสร้างเอกสารใหม่ด้วยข้อความ รูปภาพ หรือกราฟิก เขียนงานคุณภาพระดับมืออาชีพ แก้ไข และจัดรูปแบบเอกสารที่มีอยู่ ฯลฯ DOCX และ DOC เป็นที่นิยม รูปแบบไฟล์ที่รองรับโดย MS Word ในบทความนี้ เราจะมาเรียนรู้วิธีสร้างบาร์โค้ดในเอกสาร Word โดยทางโปรแกรมโดยใช้ C#

หัวข้อต่อไปนี้จะครอบคลุมในบทความนี้:

C# API เพื่อสร้างบาร์โค้ดในเอกสาร Word

สำหรับการสร้างบาร์โค้ดและเพิ่มภาพบาร์โค้ดในเอกสาร Word เราจะทำตามขั้นตอนสองขั้นตอน ประการแรก เราจะใช้ API ของ Aspose.Words for .NET เพื่อสร้างหรือโหลดเอกสาร Word จากนั้นเราจะสร้างและเพิ่มภาพบาร์โค้ดลงในเอกสารโดยใช้ Aspose.BarCode for .NET API คลาส Document ของ Aspose.Words for .NET API อนุญาตให้สร้างเอกสาร Word ใหม่หรือโหลดไฟล์ Word ที่มีอยู่ในแอปพลิเคชัน เมธอด Save() ของคลาสนี้จะบันทึกเอกสารในเส้นทางไฟล์ที่กำหนด คลาส DocumentBuilder ของ API มีเมธอดสำหรับสร้างเอกสาร มีเมธอด InsertImage() ที่โอเวอร์โหลดมากมายเพื่อแทรกรูปภาพในเอกสาร

Aspose.BarCode for .NET API ช่วยให้สามารถสร้าง ประเภทของบาร์โค้ดที่รองรับ ได้หลากหลาย เพื่อจุดประสงค์นี้ จึงมีคลาส BarcodeGenerator เพื่อสร้างบาร์โค้ดของ EncodeType ที่ระบุ เราสามารถบันทึกภาพบาร์โค้ดที่สร้างขึ้นโดยใช้เมธอด Save() ของคลาสนี้ นอกจากนี้ API ยังมีการแจงนับ BarCodeImageFormat เพื่อระบุรูปแบบการบันทึก เราสามารถอ่านบาร์โค้ดจากรูปภาพได้โดยใช้คลาส BarCodeReader ของ API

โปรด ดาวน์โหลด DLL ของ API หรือติดตั้งโดยใช้ NuGet

PM> Install-Package Aspose.BarCode
PM> Install-Package Aspose.Words

สร้างและเพิ่มบาร์โค้ดในเอกสาร Word ใน C#

เราสามารถสร้างเอกสาร Word ใหม่และเพิ่มภาพบาร์โค้ดลงในเอกสารโดยทำตามขั้นตอนด้านล่าง:

  1. ประการแรก สร้างอินสแตนซ์ของคลาส BarcodeGenerator ใช้ EncodeType และข้อความเพื่อเข้ารหัสเป็นอาร์กิวเมนต์
  2. จากนั้น สร้างอินสแตนซ์ของออบเจกต์สตรีมหน่วยความจำ
  3. จากนั้นเรียกเมธอด Save() เพื่อบันทึกภาพบาร์โค้ดไปยังสตรีมหน่วยความจำ
  4. จากนั้น สร้างอินสแตนซ์ของคลาส Document
  5. จากนั้น เริ่มต้นอินสแตนซ์ของคลาส DocumentBuilder ด้วยวัตถุเอกสาร
  6. หลังจากนั้น ให้แทรกภาพบาร์โค้ดโดยใช้เมธอด InsertImage() โดยมีวัตถุสตรีมเป็นอาร์กิวเมนต์
  7. สุดท้ายเรียกเมธอด Save() ใช้เส้นทางไฟล์ DOCX เอาต์พุตเป็นอาร์กิวเมนต์

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างและเพิ่มบาร์โค้ดในเอกสาร Word ใหม่โดยใช้ C#

// ตัวอย่างโค้ดนี้สาธิตวิธีสร้างและเพิ่มรูปภาพบาร์โค้ดในเอกสาร Word
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = @"C:\Files\BarCode\";

// ยกตัวอย่างวัตถุบาร์โค้ดเชิงเส้น ตั้งค่าข้อความรหัสและประเภทสัญลักษณ์สำหรับบาร์โค้ด
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.Code39Standard, "1234567890");

// การสร้างสตรีมหน่วยความจำและบันทึกภาพบาร์โค้ดไปยังสตรีมหน่วยความจำ
Stream ms = new MemoryStream();
generator.Save(ms, BarCodeImageFormat.Bmp);

// สร้างเอกสาร Word ใหม่
Aspose.Words.Document doc = new Aspose.Words.Document();

// สร้างตัวสร้างสำหรับวัตถุเอกสาร
DocumentBuilder builder = new DocumentBuilder(doc);

// ใส่ภาพบาร์โค้ดลงในเอกสาร
builder.InsertImage(ms);

// บันทึกเอกสารคำ
doc.Save(dataDir + "Sample_out.docx");
สร้างและเพิ่มบาร์โค้ดในเอกสาร Word ใหม่ใน C#

สร้างและเพิ่มบาร์โค้ดในเอกสาร Word ใหม่ใน C#

เพิ่มบาร์โค้ดให้กับเอกสาร Word ที่มีอยู่ใน C#

เราสามารถสร้างและเพิ่มภาพบาร์โค้ดลงในเอกสาร Word ที่มีอยู่โดยทำตามขั้นตอนด้านล่าง:

  1. ประการแรก สร้างอินสแตนซ์ของคลาส BarcodeGenerator ด้วย EncodeType และข้อความเพื่อเข้ารหัสเป็นอาร์กิวเมนต์
  2. จากนั้น สร้างอินสแตนซ์ของออบเจกต์สตรีมหน่วยความจำ
  3. จากนั้นเรียกเมธอด Save() เพื่อบันทึกภาพบาร์โค้ดไปยังสตรีมหน่วยความจำ
  4. ถัดไป โหลดเอกสาร Word ที่มีอยู่โดยใช้คลาส Document
  5. จากนั้น เริ่มต้นอินสแตนซ์ของคลาส DocumentBuilder ด้วยวัตถุเอกสาร
  6. หลังจากนั้น ให้แทรกภาพบาร์โค้ดโดยใช้เมธอด InsertImage() โดยมีวัตถุสตรีมและตำแหน่งเป็นอาร์กิวเมนต์
  7. สุดท้ายเรียกเมธอด Save() ใช้เส้นทางไฟล์ DOCX เอาต์พุตเป็นอาร์กิวเมนต์

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างและเพิ่มบาร์โค้ดในเอกสาร Word ที่มีอยู่โดยใช้ C#

// ตัวอย่างรหัสนี้สาธิตวิธีการสร้างและเพิ่มภาพบาร์โค้ดในเอกสาร Word ที่มีอยู่
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = @"C:\Files\BarCode\";

// ยกตัวอย่างวัตถุบาร์โค้ดเชิงเส้น ตั้งค่าข้อความรหัสและประเภทสัญลักษณ์สำหรับบาร์โค้ด
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.Codabar, "1234567890");

// การสร้างสตรีมหน่วยความจำและบันทึกภาพบาร์โค้ดไปยังสตรีมหน่วยความจำ
Stream ms = new MemoryStream();
generator.Save(ms, BarCodeImageFormat.Bmp);

// สร้างเอกสาร Word ใหม่
Document doc = new Document(dataDir + "sample.docx");

// สร้างตัวสร้างสำหรับวัตถุเอกสาร
DocumentBuilder builder = new DocumentBuilder(doc);

// ใส่ภาพบาร์โค้ดลงในเอกสาร
builder.InsertImage(ms,
    RelativeHorizontalPosition.Margin,
    0,
    RelativeVerticalPosition.Margin,
    400,
    200,
    100,
    WrapType.Square);

// บันทึกเอกสารคำ
doc.Save(dataDir + "Sample_out.docx");
เพิ่มบาร์โค้ดให้กับเอกสาร Word ที่มีอยู่ใน C#

เพิ่มบาร์โค้ดให้กับเอกสาร Word ที่มีอยู่ใน C#

เพิ่ม QR Code ลงในเอกสาร Word โดยใช้ C#

ในทำนองเดียวกัน เรายังสามารถสร้างภาพรหัส QR และเพิ่มลงในเอกสาร Word โดยทำตามขั้นตอนที่กล่าวถึงก่อนหน้านี้ อย่างไรก็ตาม เราต้องตั้งค่า EncodeType เป็น QR หรือ GS1QR ในขั้นตอนแรก เราอาจต้องปรับตำแหน่งภาพในขั้นตอนที่ 6 ด้วย

ตัวอย่างโค้ดต่อไปนี้สาธิตวิธีเพิ่มโค้ด QR ลงในเอกสาร Word โดยใช้ C#

// ตัวอย่างโค้ดนี้สาธิตวิธีสร้างและเพิ่มโค้ด QR ลงในเอกสาร Word ที่มีอยู่
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = @"C:\Files\BarCode\";

// ยกตัวอย่างวัตถุบาร์โค้ดเชิงเส้น ตั้งค่าข้อความรหัสและประเภทสัญลักษณ์สำหรับบาร์โค้ด
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.QR, "1234567");

// การสร้างสตรีมหน่วยความจำและบันทึกภาพบาร์โค้ดไปยังสตรีมหน่วยความจำ
Stream ms = new MemoryStream();
generator.Save(ms, BarCodeImageFormat.Bmp);

// สร้างเอกสาร Word ใหม่
Document doc = new Document(dataDir + "sample.docx");

// สร้างตัวสร้างสำหรับวัตถุเอกสาร
DocumentBuilder builder = new DocumentBuilder(doc);

// ใส่ภาพบาร์โค้ดลงในเอกสาร
builder.InsertImage(ms,
    RelativeHorizontalPosition.Margin,
    400,
    RelativeVerticalPosition.Margin,
    -50,
    100,
    100,
    WrapType.Square);

// บันทึกเอกสารคำ
doc.Save(dataDir + "Sample_qr_out.docx");
เพิ่ม QR Code ลงในเอกสาร Word โดยใช้ C#

เพิ่ม QR Code ลงในเอกสาร Word โดยใช้ C#

อ่านบาร์โค้ดจากเอกสาร Word โดยใช้ C#

เราสามารถจดจำภาพบาร์โค้ดที่มีอยู่ในหน้าใดก็ได้ของเอกสาร Word โดยทำตามขั้นตอนด้านล่าง:

  1. ขั้นแรก ให้โหลดเอกสาร Word ที่มีอยู่โดยใช้คลาส Document
  2. ต่อไป เข้าถึงประเภท NodeCollection ของ Shape โดยใช้เมธอด GetChildNodes()
  3. จากนั้น วนซ้ำรูปร่างทั้งหมดและตรวจสอบว่ารูปร่างนั้นเป็นรูปภาพหรือไม่
  4. ถัดไป บันทึกภาพไปยังสตรีม
  5. จากนั้น สร้างอินสแตนซ์ของคลาส BarCodeReader ที่มีสตรีมรูปภาพและ DecodeType เป็นอาร์กิวเมนต์
  6. หลังจากนั้น ให้เรียกเมธอด ReadBarCodes() เพื่อรับออบเจกต์ BarCodeResult
  7. สุดท้ายแสดงข้อมูลบาร์โค้ด

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีอ่านภาพบาร์โค้ดจากเอกสาร Word โดยใช้ C#

// ตัวอย่างรหัสนี้สาธิตวิธีการอ่านบาร์โค้ดจากเอกสาร Word
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = @"C:\Files\BarCode\";

// โหลดเอกสารคำ
Document wordDocument = new Document(dataDir + "sample_out.docx");

// ได้ทุกรูปทรง
NodeCollection shapes = wordDocument.GetChildNodes(NodeType.Shape, true);

// วนรอบรูปร่างทั้งหมด
foreach (Shape shape in shapes)
{
  // ตรวจสอบว่ามีภาพหรือไม่
  if (shape.HasImage)
  {
    // บันทึกภาพในสตรีมหน่วยความจำ
    MemoryStream imgStream = new MemoryStream();
    shape.ImageData.Save(imgStream);

    // จดจำบาร์โค้ดจากสตรีมรูปภาพด้านบน
    using (BarCodeReader reader = new BarCodeReader(new Bitmap(imgStream), DecodeType.Code39Standard))
    {
      foreach (BarCodeResult result in reader.ReadBarCodes())
      {
        Console.WriteLine("Codetext found: " + result.CodeText + ", Symbology: " + result.CodeType);
      }
    }
  }
}
Codetext found: 1234567890, Symbology: Code39Standard

รับใบอนุญาตฟรี

คุณสามารถ รับใบอนุญาตชั่วคราวได้ฟรี เพื่อทดลองใช้ห้องสมุดโดยไม่มีข้อจำกัดในการประเมิน

บทสรุป

ในบทความนี้ เราได้เรียนรู้วิธีการ:

  • สร้างเอกสาร Word โดยทางโปรแกรม
  • สร้างภาพบาร์โค้ดและเพิ่มลงในเอกสาร Word
  • สร้างรหัส QR และแทรกลงในเอกสาร Word
  • อ่านภาพบาร์โค้ดจากเอกสาร Word ใน C#

นอกจากนี้ คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับ Aspose.BarCode for .NET API โดยใช้ เอกสารประกอบ ในกรณีที่มีความคลุมเครือ โปรดติดต่อเราได้ที่ ฟอรัม

ดูสิ่งนี้ด้วย