เพิ่มวัตถุ SVG ในไฟล์ PDF
ในบทช่วยสอนนี้ เราจะได้เรียนรู้วิธีเพิ่มออบเจ็กต์ SVG ในไฟล์ PDF โดยใช้ไลบรารี Aspose.PDF สำหรับ .NET SVG (Scalable Vector Graphics) เป็นรูปแบบยอดนิยมสำหรับกราฟิกแบบเวกเตอร์ที่สามารถปรับขนาดได้อย่างง่ายดายโดยไม่สูญเสียคุณภาพ ด้วย Aspose.PDF คุณสามารถเพิ่มออบเจ็กต์ SVG ลงในเอกสาร PDF ของคุณโดยทางโปรแกรมได้
ความต้องการ
ก่อนที่เราจะเริ่ม ตรวจสอบให้แน่ใจว่าคุณมีสิ่งต่อไปนี้:
- ติดตั้ง Visual Studio แล้ว
- ติดตั้ง Aspose.PDF สำหรับไลบรารี .NET แล้ว
ขั้นตอนที่ 1: ตั้งค่าสภาพแวดล้อม
ขั้นแรก มาตั้งค่าสภาพแวดล้อมโดยการสร้างโปรเจ็กต์ C# ใหม่ใน Visual Studio เปิด Visual Studio และทำตามขั้นตอนเหล่านี้:
- คลิกที่ “ไฟล์” > “ใหม่” > “โครงการ” เพื่อสร้างโครงการใหม่
- เลือกเทมเพลต “แอปคอนโซล (.NET Framework)” หรือ “แอปคอนโซล (.NET Core)” ขึ้นอยู่กับการตั้งค่าของคุณ
- เลือกชื่อและที่ตั้งที่เหมาะสมสำหรับโครงการของคุณ จากนั้นคลิก “สร้าง”
ขั้นตอนที่ 2: สร้างวัตถุเอกสารและรูปภาพ
ในขั้นตอนนี้ เราจะสร้างออบเจ็กต์ที่จำเป็นสำหรับเอกสาร PDF และรูปภาพ SVG ของเรา เปิดไฟล์ C# ของโครงการของคุณและเพิ่มรหัสต่อไปนี้:
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = "YOUR DOCUMENT DIRECTORY";
// วัตถุเอกสารทันที
Document doc = new Document();
// สร้างอินสแตนซ์รูปภาพ
Aspose.Pdf.Image img = new Aspose.Pdf.Image();
ขั้นตอนที่ 3: ตั้งค่าคุณสมบัติรูปภาพ
ต่อไป เราจะตั้งค่าคุณสมบัติของรูปภาพ SVG ของเรา เราจะระบุประเภทไฟล์เป็น SVG เส้นทางไปยังไฟล์ SVG และขนาดของรูปภาพ เพิ่มรหัสต่อไปนี้หลังจากขั้นตอนก่อนหน้า:
// ตั้งค่าประเภทรูปภาพเป็น SVG
img.FileType = Aspose.Pdf.ImageFileType.Svg;
// เส้นทางสำหรับไฟล์ต้นฉบับ
img.File = dataDir + "SVGToPDF.svg";
// กำหนดความกว้างของอินสแตนซ์รูปภาพ
img. FixWidth = 50;
// กำหนดความสูงของอินสแตนซ์รูปภาพ
img.FixHeight = 50;
ขั้นตอนที่ 4: สร้างและกำหนดค่าตาราง
ตอนนี้ เรามาสร้างวัตถุตารางและตั้งค่าความกว้างของคอลัมน์กันดีกว่า เราจะสร้างตารางที่มีสองคอลัมน์ แต่ละคอลัมน์มีความกว้าง 100 หน่วย เพิ่มรหัสต่อไปนี้:
// สร้างตารางตัวอย่าง
Aspose.Pdf.Table table = new Aspose.Pdf.Table();
// กำหนดความกว้างให้กับเซลล์ตาราง
table. ColumnWidths = "100 100";
ขั้นตอนที่ 5: เพิ่มเซลล์ลงในตาราง
ในขั้นตอนนี้ เราจะเพิ่มแถวและเซลล์ลงในตาราง แต่ละแถวแสดงถึงแถวแนวนอนในตาราง และเซลล์จะถูกเพิ่มลงในแถว เพิ่มรหัสต่อไปนี้:
//สร้างวัตถุแถวและเพิ่มลงในอินสแตนซ์ของตาราง
Aspose.Pdf.Row row = table.Rows.Add();
// สร้างวัตถุเซลล์และเพิ่มลงในอินสแตนซ์แถว
Aspose.Pdf.Cell cell = row.Cells.Add();
ขั้นตอนที่ 6: เพิ่มข้อความและรูปภาพลงในเซลล์
ต่อไป มาเพิ่มข้อความและรูปภาพ SVG ลงในเซลล์ของตาราง เราจะเพิ่มข้อความ “เซลล์แรก” ลงในเซลล์แรกและรูปภาพ SVG ลงในเซลล์ที่สอง เพิ่มรหัสต่อไปนี้:
// เพิ่ม textfragment ให้กับคอลเลกชันย่อหน้าของวัตถุเซลล์
cell.Paragraphs.Add(new TextFragment("First cell"));
// เพิ่มเซลล์อื่นให้กับวัตถุแถว
cell = row. Cells. Add();
// เพิ่มรูปภาพ SVG ลงในคอลเลกชันย่อหน้าของอินสแตนซ์เซลล์ที่เพิ่งเพิ่ม
cell.Paragraphs.Add(img);
ขั้นตอนที่ 7: สร้างและเพิ่มหน้าลงในเอกสาร
ตอนนี้ เรามาสร้างออบเจ็กต์หน้าและเพิ่มลงในเอกสารกันดีกว่า ตารางจะถูกเพิ่มลงในคอลเลกชันย่อหน้าของหน้า เพิ่มรหัสต่อไปนี้:
// สร้างวัตถุหน้าและเพิ่มลงในคอลเลกชันหน้าของอินสแตนซ์เอกสาร
Page page = doc.Pages.Add();
// เพิ่มตารางลงในคอลเลกชันย่อหน้าของวัตถุหน้า
page.Paragraphs.Add(table);
ขั้นตอนที่ 8: บันทึกไฟล์ PDF
สุดท้ายเราจะบันทึกไฟล์ PDF ไปยังตำแหน่งที่ระบุ เพิ่มรหัสต่อไปนี้:
dataDir = dataDir + "AddSVGObject_out.pdf";
// บันทึกไฟล์ PDF
doc.Save(dataDir);
Console.WriteLine("\nSVG image added successfully inside a table cell.\nFile saved at " + dataDir);
ตัวอย่างซอร์สโค้ดสำหรับเพิ่มวัตถุ SVG โดยใช้ Aspose.PDF สำหรับ .NET
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = "YOUR DOCUMENT DIRECTORY";
// สร้างอินสแตนซ์วัตถุเอกสาร
Document doc = new Document();
// สร้างอินสแตนซ์รูปภาพ
Aspose.Pdf.Image img = new Aspose.Pdf.Image();
// ตั้งค่าประเภทรูปภาพเป็น SVG
img.FileType = Aspose.Pdf.ImageFileType.Svg;
// เส้นทางสำหรับไฟล์ต้นฉบับ
img.File = dataDir + "SVGToPDF.svg";
// กำหนดความกว้างของอินสแตนซ์รูปภาพ
img.FixWidth = 50;
// กำหนดความสูงของอินสแตนซ์รูปภาพ
img.FixHeight = 50;
// สร้างอินสแตนซ์ของตาราง
Aspose.Pdf.Table table = new Aspose.Pdf.Table();
// กำหนดความกว้างให้กับเซลล์ตาราง
table.ColumnWidths = "100 100";
//สร้างวัตถุแถวและเพิ่มลงในอินสแตนซ์ของตาราง
Aspose.Pdf.Row row = table.Rows.Add();
// สร้างวัตถุเซลล์และเพิ่มลงในอินสแตนซ์แถว
Aspose.Pdf.Cell cell = row.Cells.Add();
// เพิ่ม textfragment ให้กับคอลเลกชันย่อหน้าของวัตถุเซลล์
cell.Paragraphs.Add(new TextFragment("First cell"));
// เพิ่มเซลล์อื่นให้กับวัตถุแถว
cell = row.Cells.Add();
// เพิ่มรูปภาพ SVG ลงในคอลเลกชันย่อหน้าของอินสแตนซ์เซลล์ที่เพิ่งเพิ่ม
cell.Paragraphs.Add(img);
// สร้างวัตถุหน้าและเพิ่มลงในคอลเลกชันหน้าของอินสแตนซ์เอกสาร
Page page = doc.Pages.Add();
// เพิ่มตารางลงในคอลเลกชันย่อหน้าของวัตถุหน้า
page.Paragraphs.Add(table);
dataDir = dataDir + "AddSVGObject_out.pdf";
// บันทึกไฟล์ PDF
doc.Save(dataDir);
Console.WriteLine("\nSVG image added successfully inside a table cell.\nFile saved at " + dataDir);
บทสรุป
ในบทช่วยสอนนี้ เราได้เรียนรู้วิธีเพิ่มออบเจ็กต์ SVG ลงในไฟล์ PDF โดยใช้ Aspose.PDF สำหรับไลบรารี .NET เราได้กล่าวถึงกระบวนการทีละขั้นตอนในการสร้างเอกสาร การตั้งค่าสภาพแวดล้อม การเพิ่มรูปภาพ SVG ลงในเซลล์ตาราง และการบันทึกไฟล์ PDF ตอนนี้คุณสามารถรวมวัตถุ SVG เข้ากับเอกสาร PDF ของคุณโดยทางโปรแกรมได้
คำถามที่พบบ่อยสำหรับการเพิ่มวัตถุ SVG ในไฟล์ PDF
ถาม: ฉันสามารถเพิ่มออบเจ็กต์ SVG หลายรายการลงในเอกสาร PDF ได้หรือไม่
ตอบ: ได้ คุณสามารถเพิ่มออบเจ็กต์ SVG หลายรายการลงในเอกสาร PDF ได้ เพียงสร้างและกำหนดค่าเพิ่มเติมAspose.Pdf.Image
อินสแตนซ์สำหรับรูปภาพ SVG แต่ละภาพที่คุณต้องการเพิ่ม จากนั้นเพิ่มลงในเซลล์ตารางหรือย่อหน้าที่ต้องการในเอกสาร PDF
ถาม: ฉันจะปรับขนาดและตำแหน่งของรูปภาพ SVG ในเซลล์ตารางได้อย่างไร
ตอบ: หากต้องการปรับขนาดและตำแหน่งของรูปภาพ SVG ในเซลล์ตาราง คุณสามารถแก้ไขได้FixWidth
และFixHeight
คุณสมบัติของAspose.Pdf.Image
ตัวอย่าง. คุณยังสามารถใช้คุณสมบัติอื่น ๆ เช่นHorizontalAlignment
และVerticalAlignment
ของเซลล์ตารางเพื่อควบคุมการวางตำแหน่ง
ถาม: เป็นไปได้ไหมที่จะเพิ่มข้อความข้างรูปภาพ SVG ในเซลล์ตารางเดียวกัน
ตอบ: ได้ คุณสามารถเพิ่มข้อความข้างรูปภาพ SVG ในเซลล์ตารางเดียวกันได้ คุณสามารถใช้cell.Paragraphs.Add(new TextFragment("Your Text Here"));
วิธีการเพิ่มข้อความลงในเซลล์พร้อมกับรูปภาพ SVG
ถาม: ฉันสามารถเพิ่มไฮเปอร์ลิงก์ไปยังรูปภาพ SVG ได้หรือไม่
ตอบ: ได้ คุณสามารถเพิ่มไฮเปอร์ลิงก์ไปยังรูปภาพ SVG ได้โดยใช้Hyperlink
ทรัพย์สินของAspose.Pdf.Image
ตัวอย่าง. ตั้งค่า URL ของไฮเปอร์ลิงก์หรือการดำเนินการเพื่อทำให้รูปภาพสามารถคลิกได้
ถาม: Aspose.PDF สำหรับ .NET เข้ากันได้กับ .NET Core 3.1 หรือเวอร์ชันที่ใหม่กว่าหรือไม่
ตอบ: ได้ Aspose.PDF สำหรับ .NET เข้ากันได้กับ .NET Core 3.1 และเวอร์ชันที่ใหม่กว่า คุณสามารถใช้ได้ทั้งในแอปพลิเคชัน .NET Framework และ .NET Core