วิธีการแปลงช่วงเซลล์เป็นภาพใน C#
วิธีการแปลงช่วงเซลล์เป็นภาพใน C#
การส่งออกช่วงเซลล์ไปยังภาพมีประโยชน์ในการสร้างรายละเอียดการคาดการณ์หรือรายงานบางส่วน คู่มือนี้แสดงให้เห็นวิธีการแปลงช่วงเซลล์ที่กําหนดใน Excel ในภาพที่มีคุณภาพสูงโดยใช้ Aspose.Cells for .NET
กรณีการใช้งาน
- ตารางราคาการส่งออกหรือแคตตาล็อกผลิตภัณฑ์
- แบ่งปันส่วนของแผ่นงานโดยไม่ต้องแสดงไฟล์เต็ม
- การจับภาพแถวไดนามิกสําหรับ dashboards หรือ widgets
คู่มือขั้นตอน
ขั้นตอน 1: ติดตั้ง Aspose.Cells
dotnet add package Aspose.Cells
ขั้นตอนที่ 2: ดาวน์โหลดสมุดงานและแผ่นงาน
Workbook workbook = new Workbook("DataSet.xlsx");
Worksheet worksheet = workbook.Worksheets[0];
ขั้นตอนที่ 3: กําหนดช่วงการส่งออก
// Specify a range like A1:D10
Range range = worksheet.Cells.CreateRange("A1", "D10");
ขั้นตอนที่ 4: การตั้งค่าตัวเลือก Rendering Image
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 200,
VerticalResolution = 200,
OnePagePerSheet = true
};
ขั้นตอน 5: สร้าง SheetRender และ Render the Range
// You can use SheetRender with printing bounds if needed
SheetRender renderer = new SheetRender(worksheet, options);
ขั้นตอน 6: การส่งออกช่วงเป็นภาพ
Aspose.Cells ไม่ได้มีชั้น RangeRender โดยตรง แต่คุณยังสามารถคลิกภาพโดยมุ่งเน้นการนําเสนอไปยังช่วงที่เลือกเท่านั้น:
// Set print area manually for the worksheet
worksheet.PageSetup.PrintArea = "A1:D10";
// Recreate SheetRender with print settings now applied
renderer = new SheetRender(worksheet, options);
// Render and export
renderer.ToImage(0, "range_output.png");
ขั้นตอน 7: การบันทึกและตรวจสอบการออก
ตอนนี้คุณจะมีภาพที่ทําความสะอาดของช่วง Excel ที่เลือก
รหัสตัวอย่างเต็มรูปแบบ
using System;
using Aspose.Cells;
class Program
{
static void Main()
{
// Load the workbook
Workbook workbook = new Workbook("DataSet.xlsx");
// Access the first worksheet
Worksheet worksheet = workbook.Worksheets[0];
// Define range to export (A1 to D10)
Range range = worksheet.Cells.CreateRange("A1", "D10");
// Set the print area to this range
worksheet.PageSetup.PrintArea = range.RefersTo;
// Set image export options
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 200,
VerticalResolution = 200,
OnePagePerSheet = true
};
// Render only the specified range
SheetRender renderer = new SheetRender(worksheet, options);
// Export to image
renderer.ToImage(0, "range_output.png");
Console.WriteLine("Cell range exported successfully as image.");
}
}
เคล็ดลับการแก้ปัญหา
ปัญหา | โซลูชั่น |
---|---|
รูปภาพรวมถึงแถว / คอลัมน์เพิ่มเติม | ตรวจสอบให้แน่ใจว่าพื้นที่พิมพ์ได้รับการกําหนดอย่างเคร่งครัด |
ช่วงที่ไม่ได้ปลูกอย่างถูกต้อง | ชุด OnePagePerSheet = true |
บลรี่ข้อความ | เพิ่มการตั้งค่าการแก้ปัญหา |