Convertir HTML en PDF en Java

Les fichiers PDF présentent de nombreux avantages par rapport à d’autres formats, et il peut arriver que vous ayez besoin de convertir HTML en PDF. Cette conversion est particulièrement utile pour créer des versions de haute qualité et faciles à imprimer de pages web, pour générer des rapports ou pour partager des documents difficiles à éditer ou à modifier.

La possibilité de convertir facilement et de manière fiable des documents HTML dans d’autres formats est l’une des principales caractéristiques d’Aspose.HTML for Java. Dans cet article, vous trouverez des informations sur la manière de convertir du HTML en PDF en utilisant les méthodes convertHTML() de la classe Converter, et sur la manière d’appliquer les paramètres PdfSaveOptions.

HTML en PDF par une seule ligne de code Java

La conversion de HTML en PDF est une fonctionnalité très recherchée, et Aspose.HTML for Java offre une solution simple. Grâce aux méthodes statiques de la classe Converter, vous pouvez convertir un document HTML en fichier PDF en une seule ligne de code !

1// Invoke the convertHTML() method to convert the HTML to PDF
2Converter.convertHTML("<h1>Convert HTML to PDF!</h1>", ".", new PdfSaveOptions(), "convert-with-single-line.pdf");

Dans l’exemple, nous utilisons la méthode convertHTML(content, baseUri, options, outputPath) de la classe Converter qui prend quatre paramètres : une chaîne avec le code HTML à convertir, le dossier de base pour le fichier HTML d’entrée, une instance de la classe PdfSaveOptions et le chemin du fichier de sortie où le fichier converti sera enregistré.

Convertir HTML en PDF en Java

Voyons les instructions pas à pas d’un scénario simple de conversion de HTML en PDF :

  1. Chargez un fichier HTML en utilisant l’un des constructeurs HTMLDocument() de la classe HTMLDocument. Vous pouvez charger du HTML à partir d’un fichier, d’un code HTML, d’un flux ou d’une URL (voir l’article Création d’un document HTML). Dans l’exemple, nous utilisons le constructeur HTMLDocument(address) qui initialise un document HTML à partir d’un fichier.
  2. Créez un nouvel objet PdfSaveOptions. Utilisez le constructeur vide PdfSaveOptions() pour convertir avec les options d’enregistrement par défaut.
  3. Utilisez la méthode сonvertHTML(document, options, outputPath) de la classe Converter pour enregistrer HTML en tant que fichier PDF.

Veuillez examiner l’extrait de code Java suivant, qui illustre le processus de conversion de HTML en PDF avec des instructions étape par étape :

 1// Prepare HTML code and save it to a file
 2String code = "<span>Hello, World!!</span>";
 3try (java.io.FileWriter fileWriter = new java.io.FileWriter("link-to-incoming-document.html")) {
 4    fileWriter.write(code);
 5}
 6
 7// Initialize an HTML document from the file
 8HTMLDocument document = new HTMLDocument("link-to-incoming-document.html");
 9
10// Initialize PdfSaveOptions
11PdfSaveOptions options = new PdfSaveOptions();
12
13// Convert HTML to PDF
14Converter.convertHTML(document, options, "document-output.pdf");

Options d’enregistrement – Classe PdfSaveOptions

Aspose.HTML for Java permet de convertir du HTML en PDF en utilisant des options d’enregistrement par défaut ou personnalisées. PdfSaveOptions vous permet de personnaliser le processus de rendu. Vous pouvez spécifier la taille de la page, les marges, les autorisations de fichier, le type de média, etc.

MetodDescription
setJpegQuality(value)Specifies the quality of JPEG compression for images. The default value is 95.
getCss()Gets a CssOptions object which is used for configuration of CSS properties processing.
setBackgroundColor(value)Sets the color that will fill the background of every page. By default, this property is Transparent.
setPageSetup(value)This method sets a page setup object and uses it for configuration output page-set.
setHorizontalResolution(value)Sets horizontal resolution for internal images, in pixels per inch. By default this property is 300 dpi.
setVerticalResolution(value)Sets vertical resolution for output images in pixels per inch. The default value is 300 dpi.
setEncryptionThis method gets or sets encryption details. If it is not set, then no encryption will be performed.

Pour en savoir plus sur les PdfSaveOptions, veuillez lire l’article Convertisseurs à réglage fin.

Vous pouvez télécharger les exemples complets et les fichiers de données à partir de GitHub.

Convertir HTML en PDF à l’aide de PdfSaveOptions

Avec Aspose.HTML for Java, vous pouvez convertir des fichiers de manière programmatique en contrôlant totalement un large éventail de paramètres de conversion. Il suffit de suivre quelques étapes :

  1. Charger un fichier HTML en utilisant l’un des constructeurs HTMLDocument() de la classe HTMLDocument.
  2. Créez un nouvel objet PdfSaveOptions et spécifiez les propriétés requises. Le constructeur PdfSaveOptions() initialise une instance de la classe PdfSaveOptions qui est transmise à la méthode convertHTML().
  3. Utilisez la méthode сonvertHTML(document, options, outputPath) de la classe Converter pour enregistrer HTML en tant que fichier PDF.

L’exemple Java suivant montre comment utiliser PdfSaveOptions et créer un fichier PDF avec une taille de page, des marges, des résolutions, une couleur d’arrière-plan et une compression personnalisées :

 1// Initialize an HTML document from a file
 2HTMLDocument document = new HTMLDocument("drawing.html");
 3
 4// Initialize PdfSaveOptions. Set up the page-size 500x300 pixels, margins,
 5// resolutions and change the background color to AliceBlue
 6PdfSaveOptions options = new PdfSaveOptions();
 7options.setHorizontalResolution(new Resolution(200, UnitType.AUTO));
 8options.setVerticalResolution(new Resolution(200, UnitType.AUTO));;
 9options.setBackgroundColor(Color.getAliceBlue());
10options.setJpegQuality(100);
11options.getPageSetup().setAnyPage(new Page(new Size(500, 300), new Margin(20, 10, 10, 10)));
12
13// Convert HTML to PDF
14Converter.convertHTML(document, options, "drawing-options.pdf");

Dans l’exemple ci-dessus, plusieurs options d’enregistrement de PDF ont été utilisées :

Un autre exemple Java. Ici, nous créons un document HTML à partir de zéro – nous préparons le code HTML et l’enregistrons dans un fichier. Ensuite, nous appliquons PdfSaveOptions pour convertir le HTML en PDF :

 1// Prepare HTML code and save it to a file
 2String code = "<h1>  PdfSaveOptions Class</h1> " +
 3        "<p>Using PdfSaveOptions Class, you can programmatically " +
 4        "apply a wide range of conversion parameters " +
 5        "such as BackgroundColor, HorizontalResolution, VerticalResolution, PageSetup, etc.</p>";
 6
 7FileHelper.writeAllText("save-options.html", code);
 8
 9// Initialize an HTML Document from the HTML file
10HTMLDocument document = new HTMLDocument("save-options.html");
11
12// Set up the page-size, margins and change the background color to AntiqueWhite
13PdfSaveOptions options = new PdfSaveOptions();
14options.setBackgroundColor(Color.getAntiqueWhite());
15options.getPageSetup().setAnyPage(
16        new Page(
17                new Size(Length.fromInches(4.9f), Length.fromInches(3.5f)),
18                new Margin(30, 20, 10, 10)
19        )
20);
21
22// Convert HTML to PDF
23Converter.convertHTML(document, options, "save-options-output.pdf");

Conclusion

La conversion de HTML en PDF est une fonctionnalité utile pour créer des documents de haute qualité, partageables et faciles à imprimer. Aspose.HTML for Java fournit une solution robuste avec la classe Converter, qui vous permet de convertir facilement du HTML au PDF en utilisant des méthodes flexibles telles que convertHTML() et des PdfSaveOptions personnalisables.

La classe PdfSaveOptions permet aux développeurs de personnaliser la sortie en spécifiant la taille des pages, les marges, les résolutions, les couleurs d’arrière-plan, les options de compression, le cryptage, etc. Si vous créez des rapports et enregistrez du contenu web sous forme de documents PDF, Aspose.HTML for Java simplifie le processus avec un minimum de code.

Aspose.HTML propose un Convertisseur de HTML en PDF en ligne gratuit qui convertit HTML en PDF avec une grande qualité, facilement et rapidement. Il suffit de télécharger, de convertir vos fichiers et d’obtenir le résultat en quelques secondes !

Texte “Convertisseur de HTML en PDF”

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.