วิธีแยกรูปภาพออกจากเอกสาร Word ใน C#

บทความนี้จะอธิบาย วิธีแยกรูปภาพจากเอกสาร Word ใน C# ซึ่งให้รายละเอียดเกี่ยวกับการกำหนดค่าของสภาพแวดล้อมที่จำเป็นสำหรับการทดสอบโค้ดตัวอย่าง ขั้นตอนแบบเป็นขั้นตอน และโค้ดตัวอย่างที่เรียกใช้ได้ซึ่งอ่านไฟล์ DOCX และบันทึกแต่ละภาพเป็นไฟล์ PNG นอกจากนี้ยังมีคำอธิบายเกี่ยวกับคลาส วิธีการ และคุณสมบัติที่จำเป็นในการ แยกรูปภาพทั้งหมดออกจากเอกสาร Word ใน C#

ขั้นตอนในการแยกรูปภาพออกจาก Word ใน C#

  1. สร้างสภาพแวดล้อมเพื่อเพิ่ม Aspose.Words for .NET เพื่อแยกรูปภาพ
  2. โหลดไฟล์ Word ต้นฉบับพร้อมรูปภาพในวัตถุคลาส Document
  3. รับชุดรูปร่างจากเอกสาร Word โดยใช้วิธี GetChildNodes()
  4. วนซ้ำองค์ประกอบทั้งหมดในคอลเลกชันรูปร่าง
  5. บันทึกแต่ละรูปร่างที่มีรูปภาพเป็นภาพแยกต่างหาก

ขั้นตอนเหล่านี้ให้รายละเอียดในการ แยกรูปภาพจากเอกสาร Word ใน C# ขั้นแรก ไฟล์ Word ต้นทางจะถูกโหลดลงในออบเจกต์คลาส Document จากนั้นจึงเข้าถึงคอลเลกชันรูปร่างได้โดยใช้เมธอด GetChildNodes() ที่ใช้ตัวแจงนับ NodeType.Shape เป็นอาร์กิวเมนต์ ในขั้นตอนถัดไป คอลเลกชันนี้จะถูกวนซ้ำและแต่ละรูปร่างจะได้รับการทดสอบว่ามีรูปภาพหรือไม่ และหากพบ ให้บันทึกเป็นไฟล์รูปภาพแยกต่างหาก

รหัสเพื่อแยกรูปภาพจากไฟล์ Word ใน C

using System;
using Aspose.Words;
using Aspose.Words.Drawing;
namespace AsposeProjects
{
class Program
{
static void Main(string[] args) // Main function to extract all the images from a Word document
{
// Initialize licenses
Aspose.Words.License licWords = new Aspose.Words.License();
licWords.SetLicense("Aspose.Total.lic");
// Load a document having images in it
Document wordDocument = new Document("WordFileWithImages.docx");
// Get collection of pictures from the Word document
NodeCollection allShapes = wordDocument.GetChildNodes(NodeType.Shape, true);
int index = 0;
// Iterate through all the pictures and save as a separate image file
foreach (Shape shape in allShapes)
{
if (shape.HasImage)
{
string imageFile = "Aspose_" + (index++).ToString() + "_" + shape.Name + ".png";
shape.ImageData.Save(imageFile);
}
}
Console.WriteLine("Done");
}
}
}

โค้ดนี้สาธิตขั้นตอนการ แยกรูปภาพจากเอกสาร Word ใน C# ที่ใช้ออบเจกต์คลาส Document ซึ่งมีฟังก์ชันโอเวอร์โหลดที่แตกต่างกันซึ่งรองรับฟีเจอร์มากมาย เช่น การตั้งค่าการเข้ารหัส การตั้งค่าแบบอักษร การตั้งค่าภาษา และอื่นๆ อีกมากมาย ในทำนองเดียวกัน คุณสามารถดึงโหนดย่อยประเภทอื่นๆ โดยใช้เมธอด GetChildNodes() เช่น ส่วน ส่วนหัว/ส่วนท้าย ตาราง แถว เซลล์ และย่อหน้า เพื่อระบุชื่อไม่กี่รายการ

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

 ไทย