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

ขั้นตอนการแปลง STL เป็น PDF ใน Java

  1. ตรวจสอบไฟล์ STL อินพุต: ตรวจสอบว่าไฟล์ STL ต้นทางมีอยู่และสามารถอ่านได้.
String inputPath = "sample.stl";
if (!Files.isReadable(Paths.get(inputPath))) {
    System.err.println("Input STL file not found or not readable: " + inputPath);
    return;
}
  1. เริ่มต้นตัวแปลง: สร้างอินสแตนซ์ Converter ด้วยเส้นทางไฟล์ STL.
try (Converter converter = new Converter(inputPath)) {
    // conversion logic follows
}
  1. (ไม่บังคับ) ใช้ตัวเลือกการโหลด STL: หากคุณต้องการพฤติกรรมการโหลดแบบกำหนดเอง ให้ยกเลิกการคอมเมนต์บรรทัดตัวเลือกการโหลด
// LoadOptions loadOptions = new StlLoadOptions();
// converter.setLoadOptions(loadOptions);
  1. กำหนดค่าตัวเลือกการแปลง PDF: ตั้งค่าขนาดหน้า, การจัดแนว, คุณภาพ, และการตั้งค่า PDF อื่นๆ.
PdfConvertOptions pdfOptions = new PdfConvertOptions();
pdfOptions.setPageSize(PdfPageSize.A4);
pdfOptions.setPageOrientation(PdfPageOrientation.PORTRAIT);
pdfOptions.setQuality(100);
pdfOptions.setEmbedFonts(true);
pdfOptions.setOptimizeForPrint(true);
pdfOptions.setCompressImages(true);
  1. ดำเนินการแปลงและตรวจสอบความถูกต้อง: เรียก convert แล้วตรวจสอบว่า PDF ที่สร้างขึ้นไม่ว่างเปล่า.
converter.convert("sample.pdf", pdfOptions);
File pdfFile = new File("sample.pdf");
if (pdfFile.exists() && pdfFile.length() > 0) {
    System.out.println("Generated PDF is valid. Size: " + pdfFile.length() + " bytes.");
}

STL to PDF Java - ตัวอย่างโค้ดเต็ม

ตัวอย่างต่อไปนี้แสดงกระบวนการทำงานทั้งหมดสำหรับการแปลง STL เป็น PDF โดยใช้ Conholdate.Total for Java.

import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.enums.PdfPageOrientation;
import com.groupdocs.conversion.enums.PdfPageSize;
import com.groupdocs.conversion.options.convert.PdfConvertOptions;
import com.groupdocs.conversion.options.load.LoadOptions;
import com.groupdocs.conversion.options.load.StlLoadOptions;

import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class StlToPdfDemo {
    public static void main(String[] args) {
        // Input STL file and desired PDF output file
        String inputPath = "sample.stl";
        String outputPath = "sample.pdf";

// Verify that the input file exists and is readable
        if (!Files.isReadable(Paths.get(inputPath))) {
            System.err.println("Input STL file not found or not readable: " + inputPath);
            return;
        }

// Perform conversion inside a try‑with‑resources block to guarantee cleanup
        try (Converter converter = new Converter(inputPath)) {
            // If STL‑specific loading options are required, uncomment the following lines:
            // LoadOptions loadOptions = new StlLoadOptions();
            // converter.setLoadOptions(loadOptions);

// Configure PDF conversion options
            PdfConvertOptions pdfOptions = new PdfConvertOptions();
            pdfOptions.setPageSize(PdfPageSize.A4);
            pdfOptions.setPageOrientation(PdfPageOrientation.PORTRAIT);
            pdfOptions.setQuality(100);                 // Highest visual quality
            pdfOptions.setEmbedFonts(true);             // Ensure fonts are embedded
            pdfOptions.setOptimizeForPrint(true);       // Optimize PDF for printing
            pdfOptions.setCompressImages(true);         // Reduce PDF size without quality loss

// Execute the conversion
            converter.convert(outputPath, pdfOptions);
            System.out.println("STL to PDF conversion completed successfully: " + outputPath);
        } catch (Exception ex) {
            System.err.println("An error occurred during conversion:");
            ex.printStackTrace();
            return;
        }

// Simple validation of the generated PDF
        File pdfFile = new File(outputPath);
        if (pdfFile.exists() && pdfFile.length() > 0) {
            System.out.println("Generated PDF is valid. Size: " + pdfFile.length() + " bytes.");
        } else {
            System.err.println("PDF generation failed or resulted an empty file.");
        }
    }
}

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

ข้อกำหนดเบื้องต้นและการตั้งค่า

เพิ่ม Conholdate Maven repository และการพึ่งพา 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>

ดาวน์โหลดแพ็กเกจ SDK ล่าสุดจาก หน้าดาวน์โหลด. ไลบรารีต้องการ Java 8 หรือสูงกว่า.

กำหนดค่าตัวเลือกการส่งออก PDF

Conholdate.Total for Java มีการตั้งค่า PDF หลายอย่างที่คุณสามารถปรับได้:

  • ขนาดหน้า - เลือกจากขนาดมาตรฐานเช่น PdfPageSize.A4 หรือ PdfPageSize.LETTER.
  • การวางแนวหน้า - ตั้งค่าเป็น PdfPageOrientation.PORTRAIT หรือ PdfPageOrientation.LANDSCAPE.
  • คุณภาพ - เมธอด setQuality(int) รับค่าตั้งแต่ 0 ถึง 100; ค่า 100 ให้ความคมชัดสูงสุด.
  • ฝังฟอนต์ - การเปิดใช้งาน setEmbedFonts(true) ทำให้ฟอนต์ทั้งหมดถูกเก็บไว้ใน PDF ที่ส่งออก.
  • ปรับให้เหมาะกับการพิมพ์ - setOptimizeForPrint(true) ปรับ PDF ให้เหมาะกับกระบวนการพิมพ์.
  • บีบอัดรูปภาพ - setCompressImages(true) ลดขนาดไฟล์โดยไม่สูญเสียคุณภาพที่สังเกตได้.

ตัวเลือกเหล่านี้ได้ถูกสาธิตในโค้ดสแนปชอตด้านบนและสามารถรวมกันเพื่อให้ตรงตามความต้องการของโครงการเฉพาะได้.

สรุป

Conholdate.Total for Java ทำให้การแปลง STL เป็น PDF ใน Java ทั้งง่ายและมีประสิทธิภาพ โดยการทำตามขั้นตอน ใช้ตัวอย่างโค้ดที่ให้ไว้ และปรับแต่งตัวเลือก PDF คุณสามารถสร้าง PDF คุณภาพสูงจากโมเดล STL 3D สำหรับแอปพลิเคชันเดสก์ท็อปหรือเซิร์ฟเวอร์ได้ จำไว้ว่าให้รับใบอนุญาตที่เหมาะสมสำหรับการใช้งานในผลิตภัณฑ์; คุณสามารถสำรวจราคาได้บน หน้าราคา หรือรับใบอนุญาตชั่วคราวจาก หน้าลิขสิทธิ์ชั่วคราว. ด้วย SDK นี้ การรวมการแปลงโมเดล 3D เข้ากับโครงการ Java ของคุณก็ง่ายดาย

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

  • ฉันจะทำการแปลง STL เป็น PDF ใน Java ด้วย Conholdate.Total อย่างไร?
    ใช้คลาส Converter กำหนดค่า PdfConvertOptions และเรียก convert() ตามที่แสดงในตัวอย่างโค้ดเต็ม SDK จะจัดการการประมวลผลหนักของการเรนเดอร์โมเดล 3 มิติเป็น PDF.

  • What PDF page formats are supported during STL to PDF conversion?
    SDK รองรับขนาดหน้ากระดาษ PDF มาตรฐานทั้งหมดที่กำหนดใน PdfPageSize รวมถึงการวางแนวตั้งและแนวนอนผ่าน PdfPageOrientation.

  • สามารถฝังฟอนต์ที่กำหนดเองใน PDF ที่สร้างขึ้นได้หรือไม่?
    ใช่. ตั้งค่า pdfOptions.setEmbedFonts(true) เพื่อฝังฟอนต์ใด ๆ ที่ใช้ในการเรนเดอร์ STL, ทำให้ PDF มีลักษณะเดียวกันบนผู้ชมทุกคน.

  • ฉันจะหาข้อมูลเพิ่มเติมเกี่ยวกับการให้สิทธิ์และการสนับสนุนได้จากที่ไหน?
    รายละเอียดการให้สิทธิ์สามารถดูได้ที่ หน้าการกำหนดราคา และสามารถขอใบอนุญาตชั่วคราวได้จาก หน้าการขอใบอนุญาตชั่วคราว. สำหรับความช่วยเหลือทางเทคนิค, ไปที่ ฟอรั่มสนับสนุน.

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