วิธีการแปลงช่วงเซลล์เป็นภาพใน 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
บลรี่ข้อความเพิ่มการตั้งค่าการแก้ปัญหา
 แบบไทย