Mengonversi model 3D menjadi dokumen yang dapat dilihat secara universal adalah kebutuhan yang sering muncul untuk alat rekayasa dan visualisasi. Conholdate.Total for Java menyediakan SDK yang kuat yang membuat konversi STL ke PDF dalam Java menjadi sederhana. Dalam tutorial ini Anda akan menyiapkan perpustakaan, menjalani contoh kode lengkap, menyesuaikan opsi PDF, dan mempelajari praktik terbaik untuk hasil yang dapat diandalkan.

Langkah-langkah Konversi STL ke PDF di Java

  1. Verifikasi File Input STL: Pastikan file STL sumber ada dan dapat dibaca.
String inputPath = "sample.stl";
if (!Files.isReadable(Paths.get(inputPath))) {
    System.err.println("Input STL file not found or not readable: " + inputPath);
    return;
}
  1. Inisialisasi Converter: Buat instance Converter dengan jalur file STL.
try (Converter converter = new Converter(inputPath)) {
    // conversion logic follows
}
  1. (Opsional) Terapkan Opsi Muat STL: Jika Anda memerlukan perilaku pemuatan khusus, hapus komentar pada baris opsi muat.
// LoadOptions loadOptions = new StlLoadOptions();
// converter.setLoadOptions(loadOptions);
  1. Konfigurasikan Opsi Konversi PDF: Atur ukuran halaman, orientasi, kualitas, dan pengaturan PDF lainnya.
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. Jalankan Konversi dan Validasi: Panggil convert dan kemudian periksa bahwa PDF yang dihasilkan tidak kosong.
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 ke PDF Java - Contoh Kode Lengkap

Contoh berikut menunjukkan seluruh alur kerja untuk konversi STL ke PDF menggunakan 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.");
        }
    }
}

Catatan: Contoh kode ini menunjukkan fungsi inti. Sebelum menggunakannya dalam proyek Anda, pastikan untuk memperbarui semua jalur file dan nilai konfigurasi agar sesuai dengan lingkungan Anda yang sebenarnya, verifikasi bahwa semua dependensi yang diperlukan telah terpasang dengan benar, dan uji secara menyeluruh di lingkungan pengembangan Anda. Jika Anda menemukan masalah, silakan merujuk ke dokumentasi resmi atau hubungi tim dukungan untuk bantuan.

Prasyarat dan Penyiapan

Tambahkan repositori Maven Conholdate dan dependensi SDK ke pom.xml Anda:

<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>

Unduh paket SDK terbaru dari halaman unduhan. Perpustakaan memerlukan Java 8 atau yang lebih tinggi.

Mengonfigurasi Opsi Output PDF

Conholdate.Total for Java menawarkan beberapa pengaturan PDF yang dapat Anda sesuaikan:

  • Ukuran Halaman - Pilih dari ukuran standar seperti PdfPageSize.A4 atau PdfPageSize.LETTER.
  • Orientasi Halaman - Atur ke PdfPageOrientation.PORTRAIT atau PdfPageOrientation.LANDSCAPE.
  • Kualitas - Metode setQuality(int) menerima nilai dari 0 hingga 100; 100 memberikan fidelitas visual tertinggi.
  • Sematkan Font - Mengaktifkan setEmbedFonts(true) memastikan semua font dipertahankan dalam PDF output.
  • Optimalkan untuk Pencetakan - setOptimizeForPrint(true) menyesuaikan PDF untuk alur kerja pencetakan.
  • Kompres Gambar - setCompressImages(true) mengurangi ukuran file tanpa kehilangan kualitas yang terlihat.

Opsi-opsi ini ditunjukkan dalam potongan kode di atas dan dapat digabungkan untuk memenuhi kebutuhan proyek tertentu.

Kesimpulan

Conholdate.Total for Java memungkinkan konversi STL ke PDF di Java menjadi sederhana dan kuat. Dengan mengikuti langkah‑langkah, menggunakan contoh kode yang disediakan, dan menyesuaikan opsi PDF, Anda dapat menghasilkan PDF berkualitas tinggi dari model STL 3D untuk aplikasi desktop atau server. Ingatlah untuk memperoleh lisensi yang tepat untuk penggunaan produksi; Anda dapat melihat harga pada halaman harga atau mendapatkan lisensi sementara dari halaman lisensi sementara. Dengan SDK ini, mengintegrasikan konversi model 3D ke dalam proyek Java Anda menjadi sangat mudah.

FAQ

  • Bagaimana cara melakukan konversi STL ke PDF di Java dengan Conholdate.Total?
    Gunakan kelas Converter, konfigurasikan PdfConvertOptions, dan panggil convert() seperti yang ditunjukkan dalam contoh kode lengkap. SDK menangani proses berat dalam merender model 3D menjadi PDF.

  • Format halaman PDF apa yang didukung selama konversi STL ke PDF?
    SDK mendukung semua ukuran halaman PDF standar yang didefinisikan dalam PdfPageSize dan kedua orientasi potret serta lanskap melalui PdfPageOrientation.

  • Apakah memungkinkan untuk menyematkan font khusus dalam PDF yang dihasilkan?
    Ya. Atur pdfOptions.setEmbedFonts(true) untuk menyematkan semua font yang digunakan dalam rendering STL, memastikan PDF terlihat sama di semua penampil.

  • Di mana saya dapat menemukan informasi lebih lanjut tentang lisensi dan dukungan?
    Detail lisensi tersedia di halaman harga dan lisensi sementara dapat diminta melalui halaman lisensi sementara. Untuk bantuan teknis, kunjungi forum dukungan.

Baca Selengkapnya