การสร้างตัวอย่างภาพของข้อมูลสเปรดชีตเป็นความต้องการที่พบบ่อยเมื่อสร้างแดชบอร์ดรายงานหรือสรุปอีเมล Conholdate.Total for Java มี SDK ที่แข็งแกร่งซึ่งทำให้กระบวนการแปลง Excel เป็นภาพในแอปพลิเคชัน Java ง่ายขึ้น ในคู่มือนี้คุณจะได้เห็นวิธีโหลดเวิร์กบุ๊ก XLSX ตั้งค่าการส่งออกเป็น JPEG และเรนเดอร์หน้าชีตงานเป็นไฟล์ภาพ เมื่อเสร็จสิ้นคุณจะมีตัวอย่างโค้ดที่พร้อมใช้งานซึ่งคุณสามารถปรับใช้ในโครงการของคุณเองได้

สิ่งที่การแปลงไฟล์ Excel เป็นภาพต้องการจากแอปพลิเคชันของคุณ

นักพัฒนามักต้องการแปลงเนื้อหาแผ่นงานเป็นภาพคงที่สำหรับการแสดงตัวอย่างบนเว็บ, รายงาน PDF หรือภาพย่อบนมือถือ ความต้องการมักรวมถึงการรักษาการจัดรูปแบบของ cell ไว้, การเรนเดอร์เนื้อหา worksheet อย่างแม่นยำ, และการควบคุมความละเอียดของภาพ การจัดการงานเหล่านี้ด้วยตนเองโดยการเปิด Excel, ถ่ายภาพหน้าจอ, และบันทึกภาพนั้นไม่สามารถขยายได้และอาจทำให้ผลลัพธ์ไม่สอดคล้องกัน.

ข้อจำกัดทางเทคนิคสำหรับโซลูชันที่เชื่อถือได้คือ: รองรับไฟล์ XLSX, การเรนเดอร์เค้าโครงแผ่นงานอย่างแม่นยำ, ความละเอียดของภาพที่กำหนดค่าได้, และความสามารถในการจัดการแผ่นงานที่ขยายหลายหน้าที่พิมพ์. การแปลงต้องทำงานบนเซิร์ฟเวอร์หรือสภาพแวดล้อมเดสก์ท็อปโดยไม่ต้องใช้ Microsoft Office.

เลือก Conholdate.Total for Java สำหรับงาน

Conholdate.Total for Java มี API ที่เรียบง่ายซึ่งครอบคลุมความสามารถที่ต้องการทั้งหมด. คลาส Workbook และ Worksheet ให้คุณเข้าถึงเนื้อหา spreadsheet ได้โดยตรง, ในขณะที่ ImageOrPrintOptions ให้การควบคุมละเอียดเกี่ยวกับความละเอียดและรูปแบบภาพ, และ SheetRender จัดการการเรนเดอร์หน้า‑ต่อ‑หน้าอย่างแท้จริง. SDK ทำงานบน Java runtime ใดก็ได้, ต้องการเพียงการพึ่งพา Maven เท่านั้น, และจัดการ workbook ขนาดใหญ่ได้อย่างมีประสิทธิภาพ.

สำหรับการใช้งาน API อย่างละเอียด ดูที่ เอกสารอย่างเป็นทางการ. การอ้างอิงเต็มสำหรับคลาสเช่น Workbook, Worksheet, ImageOrPrintOptions และ SheetRender มีให้ใน อ้างอิง API. คุณสามารถดาวน์โหลดไลบรารีล่าสุดจาก หน้าปล่อยเวอร์ชัน.

การแปลง Excel เป็นรูปภาพใน Java

กระบวนการแปลงสามารถแบ่งออกเป็นขั้นตอนที่ชัดเจนไม่กี่ขั้นตอน ส่วนต่อไปนี้จะพาคุณผ่านแต่ละส่วนพร้อมกับตัวอย่างโค้ดสั้น ๆ ที่นำมาจากตัวอย่างเต็ม

ติดตั้ง Conholdate.Total สำหรับ Java ผ่าน Maven

เพิ่มที่เก็บ Maven ของ Conholdate และการพึ่งพา SDK ลงใน pom.xml ของคุณ:

<repositories>
  <repository>
    <id>conholdate-repo</id>
    <name>Conholdate Maven Repository</name>
    <url>https://repository.conholdate.com/repo/</url>
  </repository>
</repositories>

<dependency>
  <groupId>com.conholdate</groupId>
  <artifactId>conholdate-total</artifactId>
  <version>24.9</version>
  <type>pom</type>
</dependency>

โหลดไฟล์ Excel และเข้าถึง Worksheet

โหลดเวิร์กบุ๊กด้วยคลาส Workbook จากนั้นรับอ้างอิงถึงแผ่นงานที่คุณต้องการแปลง:

// Load Excel file
com.aspose.cells.Workbook book = new com.aspose.cells.Workbook("input.xlsx");

// Get the reference of the desired worksheet
com.aspose.cells.Worksheet sheet = book.getWorksheets().get(0);

กำหนดค่าตัวเลือกการส่งออกภาพสำหรับ JPEG

ตั้งค่าความละเอียดและรูปแบบของภาพที่ต้องการโดยใช้ ImageOrPrintOptions:

// Set image options
com.aspose.cells.ImageOrPrintOptions options = new com.aspose.cells.ImageOrPrintOptions();
options.setHorizontalResolution(200);
options.setVerticalResolution(200);
options.setImageType(com.aspose.cells.ImageType.JPEG);

แสดงแผ่นงานเป็นภาพ JPEG

Create a SheetRender สำหรับ worksheet และวนลูปผ่านหน้าต่าง ๆ ของมัน โดยบันทึกแต่ละหน้าเป็นไฟล์ JPEG แยกกัน worksheet อาจครอบคลุมมากกว่าหน้าพิมพ์หนึ่งหน้า ดังนั้น getPageCount() จะบอกจำนวนภาพที่คาดว่าจะได้รับ:

// Convert sheet to JPG image
com.aspose.cells.SheetRender sr = new com.aspose.cells.SheetRender(sheet, options);
for (int j = 0; j < sr.getPageCount(); j++)
{
    sr.toImage(j, "excel-to-jpg" + (j + 1) + ".jpg");
}

ขั้นตอนข้างต้นแสดงวิธี แปลง Excel เป็นภาพ โดยใช้ Conholdate.Total for Java SDK พร้อมให้คุณควบคุมความละเอียด, รูปแบบ, และแผ่นงานหลายหน้า.

ตัวอย่างโค้ดเต็ม: แปลง Excel เป็นภาพพร้อมการสนับสนุนแผ่นงานเต็ม

โค้ดต่อไปนี้แสดงการนำไปใช้ที่สมบูรณ์และพร้อมทำงานตามที่อธิบายไว้ในขั้นตอนข้างต้น.

public class ExcelToImageConverter {
    public static void main(String[] args) throws Exception {
        // Load Excel file
        com.aspose.cells.Workbook book = new com.aspose.cells.Workbook("input.xlsx");

// Get the reference of the desired worksheet
        com.aspose.cells.Worksheet sheet = book.getWorksheets().get(0);

// Set image options
        com.aspose.cells.ImageOrPrintOptions options = new com.aspose.cells.ImageOrPrintOptions();
        options.setHorizontalResolution(200);
        options.setVerticalResolution(200);
        options.setImageType(com.aspose.cells.ImageType.JPEG);

// Convert sheet to JPG image
        com.aspose.cells.SheetRender sr = new com.aspose.cells.SheetRender(sheet, options);
        for (int j = 0; j < sr.getPageCount(); j++)
        {
            sr.toImage(j, "excel-to-jpg" + (j + 1) + ".jpg");
        }

System.out.println("Excel to image conversion completed successfully.");
    }
}

หมายเหตุ: ตัวอย่างโค้ดนี้แสดงการทำงานหลัก ก่อนนำไปใช้ในโครงการของคุณ ให้ตรวจสอบว่าได้อัปเดตเส้นทางไฟล์ (input.xlsx) ให้ตรงกับตำแหน่งไฟล์จริงของคุณ ตรวจสอบว่าขึ้นตอนการติดตั้ง dependencies ทั้งหมดเรียบร้อยแล้ว และทำการทดสอบอย่างละเอียดในสภาพแวดล้อมการพัฒนา หากพบปัญหาใด ๆ โปรดดูที่ เอกสารอย่างเป็นทางการ หรือ ติดต่อ ทีมสนับสนุน เพื่อขอความช่วยเหลือ

สรุป

การแปลง Excel เป็นภาพใน Java จะง่ายขึ้นอย่างมากเมื่อคุณใช้ Conholdate.Total for Java. SDK จะจัดการการเรนเดอร์แผ่นงานและการส่งออก JPEG คุณภาพสูงด้วยโค้ดเพียงเล็กน้อย โดยทำตามคำแนะนำขั้นตอนต่อขั้นตอน คุณสามารถผสานความสามารถนี้เข้ากับเครื่องมือรายงาน ตัวสร้างอีเมล หรือแอปพลิเคชันใด ๆ ที่ต้องการการแสดงผลสเปรดชีตแบบภาพ จำไว้ว่าการใช้งานในสภาพแวดล้อมการผลิตต้องมีใบอนุญาตเชิงพาณิชย์; คุณสามารถสำรวจตัวเลือกการกำหนดราคาได้บนหน้า Conholdate.Total pricing และรับใบอนุญาตชั่วคราวจากหน้า หน้าใบอนุญาตชั่วคราว ระหว่างการประเมิน.

คำถามที่พบบ่อย

  • ฉันจะเปลี่ยน Excel เป็นรูปภาพใน Java อย่างไร?
    โหลดไฟล์ด้วย Workbook , ดึง worksheet ที่ต้องการจาก book.getWorksheets() , กำหนดค่า ImageOrPrintOptions และเรนเดอร์ด้วย SheetRender.

  • ฉันสามารถแปลงแผ่นงาน Excel เฉพาะเป็นภาพได้หรือไม่?
    ใช่. ใช้ book.getWorksheets().get(index) เพื่อเลือกแผ่นงาน, จากนั้นส่งไปยัง SheetRender เพื่อแปลง.

  • ทำไมฉันถึงได้ไฟล์รูปภาพมากกว่าหนึ่งไฟล์จากแผ่นงานเดียว?
    แผ่นงานอาจครอบคลุมหลายหน้าที่พิมพ์ SheetRender.getPageCount() จะคืนค่าจำนวนหน้า และลูปจะบันทึกรูปภาพหนึ่งไฟล์ต่อหน้า.

  • ต้องการใบอนุญาตอะไรสำหรับการใช้งานในผลิตภัณฑ์?
    จำเป็นต้องมีใบอนุญาตเชิงพาณิชย์ ตรวจสอบค่าใช้จ่ายในหน้า Conholdate.Total pricing และรับใบอนุญาตชั่วคราวจากหน้า temporary license page.

อ่านเพิ่มเติม