ควบคุมทรัพยากรภายนอกใน Excel เป็น PDF ใน Aspose.Cells
การแนะนำ
ในยุคดิจิทัลทุกวันนี้ การแปลงสเปรดชีต Excel เป็นเอกสาร PDF ถือเป็นงานทั่วไป ไม่ว่าจะเป็นการเตรียมรายงาน ข้อมูลทางการเงิน หรือเอกสารนำเสนอ คุณคงอยากจะแน่ใจว่า PDF ของคุณมีลักษณะตรงตามที่ต้องการ Aspose.Cells สำหรับ .NET เป็นไลบรารีที่มีประสิทธิภาพที่ให้คุณควบคุมกระบวนการแปลงนี้ได้อย่างละเอียด โดยเฉพาะเมื่อต้องจัดการกับทรัพยากรภายนอก เช่น รูปภาพที่มากับไฟล์ Excel ของคุณ ในคู่มือนี้ เราจะเจาะลึกถึงวิธีการควบคุมทรัพยากรภายนอกระหว่างกระบวนการแปลง Excel เป็น PDF โดยใช้ Aspose.Cells หยิบเครื่องดื่มที่คุณชอบแล้วเริ่มกันเลย!
ข้อกำหนดเบื้องต้น
ก่อนที่เราจะเริ่มต้นลงรายละเอียด เรามาตรวจสอบกันก่อนว่าคุณได้เตรียมทุกอย่างที่จำเป็นแล้ว นี่คือรายการตรวจสอบโดยย่อ:
- Visual Studio หรือ IDE ที่เข้ากันได้กับ .NET ใด ๆ: คุณจะต้องการสภาพแวดล้อมในการเขียนและทดสอบโค้ดของคุณ
- Aspose.Cells สำหรับ .NET: หากคุณยังไม่ได้ติดตั้ง ให้ไปที่ดาวน์โหลด Aspose หน้าและรับเวอร์ชั่นล่าสุด
- ความรู้พื้นฐานเกี่ยวกับ C#: ความคุ้นเคยกับภาษาการเขียนโปรแกรม C# จะเป็นประโยชน์ หากคุณไม่แน่ใจเกี่ยวกับแนวคิดใด ๆ อย่าลังเลที่จะค้นหา
- ตัวอย่างไฟล์ Excel: เตรียมไฟล์ Excel พร้อมทรัพยากรภายนอกใดๆ ที่คุณต้องการแปลง คุณสามารถใช้ไฟล์ตัวอย่างที่ให้มา “samplePdfSaveOptions_StreamProvider.xlsx”
- ไฟล์รูปภาพสำหรับการทดสอบ: ไฟล์นี้จะใช้เป็นทรัพยากรภายนอกระหว่างการแปลง ไฟล์รูปภาพ “newPdfSaveOptions_StreamProvider.png” เป็นตัวแทนที่ดี
แพ็คเกจนำเข้า
ในการเริ่มต้น คุณจะต้องนำเข้าเนมสเปซที่จำเป็นจากไลบรารี Aspose.Cells ซึ่งเป็นสิ่งสำคัญสำหรับการเข้าถึงฟังก์ชันต่างๆ ของไลบรารี อย่าลืมเพิ่มคำสั่ง using ต่อไปนี้ที่ด้านบนสุดของไฟล์:
using System.IO;
using System.Drawing;
using System.Drawing.Imaging;
using Aspose.Cells;
using Aspose.Cells.Drawing;
using Aspose.Cells.Rendering;
using System;
แพ็คเกจเหล่านี้จะมอบคลาสและวิธีการที่จำเป็นทั้งหมดที่คุณจำเป็นต้องใช้ในการดำเนินการงานของคุณ
ขั้นตอนที่ 1: สร้างคลาสผู้ให้บริการสตรีมของคุณ
ลำดับแรกของธุรกิจคือการสร้างคลาสผู้ให้บริการสตรีมที่ใช้งานIStreamProvider
อินเทอร์เฟซ คลาสนี้จะช่วยให้คุณควบคุมวิธีการโหลดทรัพยากรภายนอกได้
class MyStreamProvider : IStreamProvider
{
public void CloseStream(StreamProviderOptions options)
{
Debug.WriteLine("-----Close Stream-----");
}
public void InitStream(StreamProviderOptions options)
{
string sourceDir = "Your Document Directory";
Debug.WriteLine("-----Init Stream-----");
// อ่านภาพใหม่ในสตรีมหน่วยความจำและกำหนดให้กับคุณสมบัติสตรีม
byte[] bts = File.ReadAllBytes(sourceDir + "newPdfSaveOptions_StreamProvider.png");
MemoryStream ms = new MemoryStream(bts);
options.Stream = ms;
}
}
ในชั้นเรียนนี้:
- CloseStream: วิธีการนี้จะถูกเรียกใช้เมื่อสตรีมถูกปิด ในตอนนี้ เรากำลังเขียนข้อความดีบักเพื่อติดตาม
- InitStream: นี่คือจุดเริ่มต้นของเวทมนตร์ ที่นี่ คุณจะอ่านภาพภายนอกของคุณเป็นอาร์เรย์ไบต์ แปลงเป็นสตรีมหน่วยความจำ และกำหนดให้กับ
options.Stream
คุณสมบัติ.
ขั้นตอนที่ 2: ตั้งค่าไดเร็กทอรีแหล่งที่มาและเอาต์พุต
ตอนนี้ผู้ให้บริการสตรีมของคุณพร้อมแล้ว ถึงเวลาที่จะกำหนดว่าไฟล์ Excel ของคุณอยู่ที่ไหน และคุณต้องการบันทึก PDF ไว้ที่ใด
// ไดเรกทอรีแหล่งที่มา
string sourceDir = "Your Document Directory";
// ไดเรกทอรีผลลัพธ์
string outputDir = "Your Document Directory";
เพียงแค่แทนที่"Your Document Directory"
ด้วยเส้นทางจริงบนคอมพิวเตอร์ของคุณซึ่งไฟล์ของคุณอยู่ การจัดระเบียบไฟล์ของคุณจึงเป็นสิ่งสำคัญ!
ขั้นตอนที่ 3: โหลดไฟล์ Excel ของคุณ
จากนั้นคุณจะโหลดไฟล์ Excel ที่คุณต้องการสร้าง PDF
// โหลดไฟล์ Excel ต้นฉบับที่มีรูปภาพภายนอก
Workbook wb = new Workbook(sourceDir + "samplePdfSaveOptions_StreamProvider.xlsx");
เรากำลังใช้Workbook
คลาสจาก Aspose.Cells ซึ่งแสดงไฟล์ Excel ของคุณ ไฟล์ดังกล่าวสามารถรวมทรัพยากรภายนอกต่างๆ เช่น รูปภาพ ที่คุณต้องการควบคุมในระหว่างการแปลง
ขั้นตอนที่ 4: ตั้งค่าตัวเลือกการบันทึก PDF
ก่อนที่คุณจะบันทึกสมุดงานเป็น PDF เรามาระบุก่อนว่าคุณต้องการบันทึกอย่างไร คุณสามารถปรับเปลี่ยนตัวเลือกเหล่านี้ได้ตามความต้องการของคุณ
// ระบุตัวเลือกการบันทึก PDF - ผู้ให้บริการสตรีม
PdfSaveOptions opts = new PdfSaveOptions();
opts.OnePagePerSheet = true; // บันทึกแต่ละแผ่นในหน้าใหม่
ที่นี่เรากำลังสร้างอินสแตนซ์ใหม่ของPdfSaveOptions
ซึ่งช่วยให้คุณปรับแต่งรูปแบบ PDF ของคุณได้OnePagePerSheet
ตัวเลือกนี้มีประโยชน์สำหรับการให้แน่ใจว่าแผ่นงาน Excel แต่ละแผ่นจะมีหน้าของตัวเองใน PDF ขั้นสุดท้าย
ขั้นตอนที่ 5: กำหนดผู้ให้บริการสตรีมของคุณ
เมื่อคุณตั้งค่าตัวเลือก PDF แล้ว คุณต้องแจ้งให้ Aspose ใช้ผู้ให้บริการสตรีมแบบกำหนดเองสำหรับทรัพยากรภายนอก
wb.Settings.StreamProvider = new MyStreamProvider();
เส้นนี้เชื่อมต่อของคุณWorkbook
ตัวอย่างด้วยMyStreamProvider
คลาสที่คุณสร้างไว้ก่อนหน้านี้ ซึ่งหมายความว่าเมื่อใดก็ตามที่พบทรัพยากรภายนอกระหว่างการแปลง ผู้ให้บริการของคุณจะจัดการทรัพยากรเหล่านั้นตามที่ระบุ
ขั้นตอนที่ 6: บันทึกสมุดงานเป็น PDF
เมื่อทุกอย่างพร้อมแล้ว ในที่สุดก็ได้เวลาบันทึกเวิร์กบุ๊ก Excel ของคุณเป็น PDF
// บันทึกสมุดงานเป็น PDF
wb.Save(outputDir + "outputPdfSaveOptions_StreamProvider.pdf", opts);
โดยการโทรหาSave
วิธีการบนวัตถุเวิร์กบุ๊กและส่งผ่านไดเร็กทอรีเอาต์พุตของคุณพร้อมกับตัวเลือก PDF คุณกำลังแปลงไฟล์ Excel เป็น PDF ที่มีการจัดรูปแบบสวยงาม
ขั้นตอนที่ 7: ยืนยันการดำเนินการสำเร็จ
โดยสรุปแล้ว การยืนยันว่ากระบวนการของคุณประสบความสำเร็จนั้นเป็นเรื่องที่ดีเสมอ!
Console.WriteLine("ControlLoadingOfExternalResourcesInExcelToPDF executed successfully.\r\n");
การพิมพ์ข้อความแจ้งความสำเร็จไปยังคอนโซลจะช่วยให้คุณทราบสถานะการดำเนินการของคุณ การรวมข้อความยืนยันเล็กๆ น้อยๆ เหล่านี้ไว้ในโค้ดของคุณถือเป็นนิสัยที่ดี
บทสรุป
เท่านี้คุณก็ทำได้แล้ว! ด้วยการทำตามขั้นตอนง่ายๆ เหล่านี้ คุณสามารถควบคุมวิธีการจัดการทรัพยากรภายนอกระหว่างการแปลง Excel เป็น PDF ได้อย่างเชี่ยวชาญโดยใช้ Aspose.Cells ซึ่งหมายความว่าตอนนี้เอกสารของคุณสามารถรวมรูปภาพและองค์ประกอบภายนอกอื่นๆ ได้อย่างแม่นยำ ทำให้มั่นใจได้ว่าผลิตภัณฑ์ขั้นสุดท้ายจะออกมาสมบูรณ์แบบทุกครั้ง
คำถามที่พบบ่อย
Aspose.Cells คืออะไร?
Aspose.Cells เป็นไลบรารีอันทรงพลังสำหรับนักพัฒนา .NET ที่ช่วยให้คุณสามารถสร้าง จัดการ แปลง และเรนเดอร์ไฟล์ Excel ในรูปแบบต่างๆ ได้
ฉันจะดาวน์โหลด Aspose.Cells ได้อย่างไร?
คุณสามารถดาวน์โหลด Aspose.Cells เวอร์ชันล่าสุดได้จากลิงค์ดาวน์โหลด.
ฉันสามารถทดลองใช้ Aspose.Cells ฟรีได้หรือไม่?
ใช่! คุณสามารถทดลองใช้งานฟรีได้โดยเข้าไปที่หน้าทดลองใช้งานฟรี.
ฉันสามารถค้นหาการสนับสนุนสำหรับ Aspose.Cells ได้ที่ไหน
สำหรับคำถามที่เกี่ยวข้องกับการสนับสนุนใด ๆ คุณสามารถเยี่ยมชมได้ที่ฟอรั่มสนับสนุน Aspose.
ฉันจะขอใบอนุญาตชั่วคราวสำหรับ Aspose.Cells ได้อย่างไร
คุณสามารถสมัครขอใบอนุญาตชั่วคราวได้ที่นี่.