La conversion de modèles 3D en documents universellement consultables est une exigence fréquente pour les outils d’ingénierie et de visualisation. Conholdate.Total for Java fournit un SDK robuste qui rend la conversion de STL vers PDF en Java simple. Dans ce tutoriel, vous configurerez la bibliothèque, parcourrez un exemple de code complet, ajusterez les options PDF et apprendrez les meilleures pratiques pour obtenir des résultats fiables.

Étapes de la conversion STL en PDF en Java

  1. Vérifier le fichier STL d’entrée : Assurez-vous que le fichier STL source existe et est lisible.
String inputPath = "sample.stl";
if (!Files.isReadable(Paths.get(inputPath))) {
    System.err.println("Input STL file not found or not readable: " + inputPath);
    return;
}
  1. Initialiser le convertisseur : Créez une instance Converter avec le chemin du fichier STL.
try (Converter converter = new Converter(inputPath)) {
    // conversion logic follows
}
  1. (Optionnel) Appliquer les options de chargement STL: Si vous avez besoin d’un comportement de chargement personnalisé, décommentez les lignes d’options de chargement.
// LoadOptions loadOptions = new StlLoadOptions();
// converter.setLoadOptions(loadOptions);
  1. Configure PDF Conversion Options: Définissez la taille de la page, l’orientation, la qualité et d’autres paramètres 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. Exécuter la conversion et valider : Appelez convert puis vérifiez que le PDF généré n’est pas vide.
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 vers PDF Java - Exemple de code complet

L’exemple suivant montre l’ensemble du flux de travail pour la conversion de STL en PDF en utilisant 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 in an empty file.");
        }
    }
}

Remarque : Cet exemple de code démontre la fonctionnalité principale. Avant de l’utiliser dans votre projet, assurez‑vous de mettre à jour tous les chemins de fichiers et les valeurs de configuration pour qu’ils correspondent à votre environnement réel, vérifiez que toutes les dépendances requises sont correctement installées et testez soigneusement dans votre environnement de développement. Si vous rencontrez des problèmes, veuillez consulter la documentation officielle ou contacter l’équipe de support pour obtenir de l’aide.

Prérequis et configuration

Ajoutez le référentiel Maven Conholdate et la dépendance SDK à votre 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>

Téléchargez le dernier package SDK depuis la page de téléchargement. La bibliothèque nécessite Java 8 ou une version supérieure.

Configuration des options de sortie PDF

Conholdate.Total for Java propose plusieurs paramètres PDF que vous pouvez ajuster :

  • Taille de page - Choisissez parmi les tailles standard telles que PdfPageSize.A4 ou PdfPageSize.LETTER.
  • Orientation de page - Définissez sur PdfPageOrientation.PORTRAIT ou PdfPageOrientation.LANDSCAPE.
  • Qualité - La méthode setQuality(int) accepte des valeurs de 0 à 100 ; 100 donne la meilleure fidélité visuelle.
  • Incorporer les polices - Activer setEmbedFonts(true) garantit que toutes les polices sont conservées dans le PDF de sortie.
  • Optimiser pour l’impression - setOptimizeForPrint(true) adapte le PDF aux flux de travail d’impression.
  • Compresser les images - setCompressImages(true) réduit la taille du fichier sans perte de qualité perceptible.

Ces options sont démontrées dans l’extrait de code ci‑dessus et peuvent être combinées pour répondre à des exigences de projet spécifiques.

Conclusion

Conholdate.Total for Java rend la conversion STL vers PDF en Java à la fois simple et puissante. En suivant les étapes, en utilisant l’exemple de code fourni et en ajustant les options PDF, vous pouvez générer des PDF de haute qualité à partir de modèles 3D STL pour des applications de bureau ou serveur. N’oubliez pas d’obtenir une licence appropriée pour une utilisation en production ; vous pouvez consulter les tarifs sur la page de tarification ou obtenir une licence temporaire depuis la page de licence temporaire. Avec ce SDK, l’intégration de la conversion de modèles 3D dans vos projets Java devient un jeu d’enfant.

FAQ

  • Comment effectuer la conversion STL vers PDF en Java avec Conholdate.Total ?
    Utilisez la classe Converter, configurez PdfConvertOptions et appelez convert() comme indiqué dans l’exemple de code complet. Le SDK prend en charge le travail lourd de rendu du modèle 3D en PDF.

  • Quels formats de page PDF sont pris en charge lors de la conversion STL en PDF ?
    Le SDK prend en charge toutes les tailles de page PDF standard définies dans PdfPageSize ainsi que les orientations portrait et paysage via PdfPageOrientation.

  • Est‑il possible d’intégrer des polices personnalisées dans le PDF généré ?
    Oui. Définissez pdfOptions.setEmbedFonts(true) pour intégrer toutes les polices utilisées lors du rendu STL, garantissant que le PDF apparaît de la même manière sur n’importe quel visualiseur.

  • Où puis‑je trouver plus d’informations sur la licence et le support ?
    Les détails de la licence sont disponibles sur la page de tarification et une licence temporaire peut être demandée depuis la page de licence temporaire. Pour une aide technique, consultez le forum de support.

En savoir plus