Rendering Excel ไฟล์เป็นภาพเป็นสิ่งสําคัญเมื่อรวมแผ่น spreadsheets ในหน้าเว็บเอกสารหรือรายงาน บทความนี้แสดงให้เห็นว่าวิธีการแปลงสมุดงาน Excel ทั้งหมดเป็นรูปแบบภาพที่มีคุณภาพสูงโดยใช้ Aspose.Cells สําหรับ .NET
บทนํา
การแปลงสมุดงาน Excel ในรูปแบบภาพสามารถใช้ได้อย่างไม่น่าเชื่อสําหรับแอพต่างๆเช่นการสร้างหน้าแปลของไฟล์ Excel, การจัดเก็บแผ่นในรูปแบบที่เข้าถึงได้มากขึ้น, รวมเนื้อหาของแผ่นงานในรายงานหรือกระแสงานพิมพ์, และแสดงแผ่นตัวในแอปที่ไม่ได้สนับสนุนการดู Excel ที่บ้าน คู่มือนี้จะช่วยให้คุณผ่านกระบวนการโดยใช้ Aspose.Cells สําหรับ .NET, บิตยสารที่มีประสิทธิภาพที่ออกแบบมาเพื่อจัดการการดําเนินงานที่ซับซ้อนของ Excelได้อย่างง่ายดาย
การดําเนินการขั้นตอนขั้นตอน
ขั้นตอน 1: ติดตั้ง Aspose.Cells สําหรับ .NET
ก่อนที่เราเริ่มต้นให้แน่ใจว่าคุณได้ติดตั้ง Aspose.Cells ในโครงการของคุณ คุณสามารถทําเช่นนี้ผ่านการจัดการแพคเกจ NuGet:
dotnet add package Aspose.Cells
ขั้นตอน 2: ดาวน์โหลดไฟล์ Excel
ขั้นตอนแรกคือการโหลดไฟล์ Excel ใน A Workbook
วัตถุซึ่งแสดงให้เห็นถึงหนังสือทํางานของ Excel ในหน่วยความจํา
Workbook workbook = new Workbook("Book1.xlsx");
ขั้นตอนที่ 3: การตั้งค่าตัวเลือกภาพ
ต่อไปนี้ตั้งค่าตัวเลือกภาพที่ควบคุมวิธีภาพของคุณจะถูกนําเสนอ ซึ่งรวมถึงการกําหนดรูปแบบการส่งออกและความละเอียด
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
OnePagePerSheet = true,
HorizontalResolution = 200,
VerticalResolution = 200
};
การตั้งค่าเหล่านี้ควบคุมรูปแบบการออกและความละเอียด คุณยังสามารถกําหนดคุณสมบัติอื่น ๆ เช่น Transparent
สําหรับพื้นหลัง OnlyArea
การยกเลิก margin และ PrintingPageType
สําหรับเนื้อหาใดที่จะรวม
ขั้นตอนที่ 4: Render the Workbook
สร้างตัวอย่างของ WorkbookRender
คลาสกับหนังสือทํางานของคุณและตัวเลือก:
WorkbookRender renderer = new WorkbookRender(workbook, options);
ขั้นตอน 5: แปลงแต่ละหน้าเป็นภาพ
ผ่านแต่ละหน้าในหนังสือทํางานและส่งออกเป็นภาพ ตัวอย่างนี้บันทึกไฟล์ภาพแต่ละไฟล์ไปยังดิสก์โดยใช้ชื่อที่กําหนด
using System;
using Aspose.Cells;
class Program
{
static void Main()
{
// Step 2: Load the Excel file
Workbook workbook = new Workbook("Book1.xlsx");
// Step 3: Configure Image Options
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
OnePagePerSheet = true,
HorizontalResolution = 200,
VerticalResolution = 200
};
// Step 4: Render the Workbook
WorkbookRender renderer = new WorkbookRender(workbook, options);
// Step 5: Convert Each Page to Image and Save
for (int i = 0; i < renderer.PageCount; i++)
{
string fileName = $"workbook_page_{i + 1}.png";
renderer.ToImage(i, fileName);
Console.WriteLine($"Saved: {fileName}");
}
}
}
นี้จะสร้างภาพหนึ่งต่อหน้า logic ตาม layout พิมพ์ปัจจุบัน
ขั้นตอน 6: การบันทึกภาพ
รหัสข้างต้นจะบันทึกไฟล์ภาพแต่ละไฟล์ไปยังดิสก์โดยใช้ชื่อที่กําหนด คุณสามารถปรับแต่งกระบวนการนี้ได้ตามความต้องการ
// Output:
// workbook_page_1.png
// workbook_page_2.png
// ...
ขั้นตอน 7: การปรับปรุงทางเลือก
คุณสามารถปรับปรุงการแสดงภาพของคุณโดยใช้การตั้งค่าเพิ่มเติมเช่นแสดงเส้นเครือหรือให้แน่ใจว่าแผ่นกว้างจะแสดงในหน้าเดียว
options.ShowGridLines = true;
options.AllColumnsInOnePagePerSheet = true;
แนวทางที่ดีที่สุด
- ใช้ความละเอียดสูง (200+ dpi) สําหรับภาพพิมพ์คุณภาพ
- อนุญาต
AllColumnsInOnePagePerSheet
สําหรับแผ่นกว้าง - ผสมผลลัพธ์ลงในไฟล์ PDF หรือกล่องภาพสําหรับการนําเสนอ
ปัญหาทั่วไปและโซลูชั่น
ปัญหา | โซลูชั่น |
---|---|
ภาพส่งออกเป็นสีขาว | บันทึกการทํางานที่โหลดและมีข้อมูลที่เห็นได้ชัด |
ภาพถูกตัดออก | ชุด OnePagePerSheet = true หรือปรับ Page Scaling |
ผลิตภัณฑ์ที่มีคุณภาพต่ํา ประสิทธิภาพสูง HorizontalResolution
และ VerticalResolution