Nous utilisons régulièrement des fichiers PDF car ils fournissent un support incroyable pour le contenu texte et image. Une fois ces éléments placés à l’intérieur du document, la mise en page du fichier est conservée quelle que soit la plateforme que vous utilisez pour les visualiser. Mais, nous pouvons avoir besoin d’extraire des images PDF. Cela peut être accompli à l’aide de l’application de visualisation PDF, mais vous devez parcourir manuellement chaque page et enregistrer individuellement chaque image. De plus, dans un autre scénario, si vous avez un PDF basé sur des images et que vous devez effectuer un OCR PDF, vous devez d’abord extraire toutes les images, puis effectuer l’opération OCR. Cela devient vraiment difficile lorsque vous avez un grand nombre de documents, mais une solution programmatique peut être une solution fiable et rapide. Donc, dans cet article, nous allons explorer les options pour extraire des images de PDF en utilisant Java Cloud SDK
- API de conversion PDF en JPG
- Extraire des images PDF en Java
- Enregistrer des images PDF à l’aide des commandes cURL
API de conversion PDF en JPG
Afin de convertir PDF en JPG ou JPG en PDF dans une application Java, Aspose.PDF Cloud SDK for Java est un choix incroyable. En même temps, il vous permet également d’extraire des images de PDF, d’extraire du texte de PDF, d’extraire des pièces jointes de PDF et offre une pléthore d’options pour la manipulation de PDF. Donc, pour implémenter la fonctionnalité d’enregistrement des images PDF dans l’application Java, nous devons d’abord ajouter la référence Cloud SDK dans notre projet. Veuillez donc ajouter les détails suivants dans pom.xml du projet de type de construction maven.
<repositories>
<repository>
<id>aspose-cloud</id>
<name>artifact.aspose-cloud-releases</name>
<url>https://artifact.aspose.cloud/repo</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf-cloud</artifactId>
<version>21.11.0</version>
</dependency>
</dependencies>
Une fois que la référence SDK a été ajoutée et que vous n’avez pas de compte existant sur Aspose Cloud, veuillez créer un compte gratuit en utilisant une adresse e-mail valide. Connectez-vous ensuite à l’aide du compte nouvellement créé et recherchez/créez l’ID client et le secret client sur Cloud Dashboard. Ces informations sont requises à des fins d’authentification dans les sections suivantes.
Extraire des images PDF en Java
Veuillez suivre les étapes ci-dessous pour extraire les images du PDF et une fois l’opération terminée, les images sont stockées dans un dossier séparé sur le stockage Cloud.
- Nous devons d’abord créer un objet PdfApi tout en fournissant ClientID et Client secret comme arguments
- Deuxièmement, chargez le fichier PDF d’entrée à l’aide de l’instance de fichier
- Téléchargez le PDF d’entrée sur le stockage en nuage à l’aide de la méthode uploadFile(…)
- Nous allons également utiliser un paramètre facultatif pour définir les détails de hauteur et de largeur pour les images extraites
- Enfin, appelez la méthode putImagesExtractAsJpeg(…) qui prend le nom du PDF d’entrée, PageNumber pour extraire les images, les dimensions des images extraites et le nom du dossier sur le stockage Cloud pour enregistrer les images extraites
try
{
// Obtenez ClientID et ClientSecret à partir de https://dashboard.aspose.cloud/
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// créer une instance de PdfApi
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
// nom du document PDF d'entrée
String inputFile = "marketing.pdf";
// lire le contenu du fichier PDF d'entrée
File file = new File("//Users//"+inputFile);
// télécharger le PDF sur le stockage en nuage
pdfApi.uploadFile("input.pdf", file, null);
// Page de PDF pour extraire des images
int pageNumber =1;
// largeur pour les images extraites
int width = 600;
// hauteur des images extraites
int height = 800;
// dossier pour enregistrer les images extraites
String folderName = "NewFolder";
// Extrayez des images PDF et enregistrez-les sur Cloud Storage
pdfApi.putImagesExtractAsJpeg(inputFile, pageNumber, width, height, null, null, folderName);
// imprimer le message de réussite
System.out.println("PDF images Successsuly extracted !");
}catch(Exception ex)
{
System.out.println(ex);
}
L’exemple de fichier PDF utilisé dans l’exemple ci-dessus peut être téléchargé à partir de input.pdf.
Enregistrer des images PDF à l’aide des commandes cURL
Nous allons maintenant appeler l’API pour l’extraction d’images PDF à l’aide des commandes cURL. Maintenant, comme condition préalable à cette approche, nous devons d’abord générer un jeton d’accès JWT (basé sur les informations d’identification du client) lors de l’exécution de la commande suivante.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Une fois que nous avons le jeton JWT, veuillez exécuter la commande suivante pour enregistrer les images PDF dans un dossier séparé sur le stockage Cloud.
curl -X PUT "https://api.aspose.cloud/v3.0/pdf/input_file.pdf/pages/1/images/extract/jpeg?width=0&height=0&destFolder=NewFolder" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>"
Conclusion
Après avoir lu cet article, vous avez appris une approche simple mais fiable pour extraire des images PDF à l’aide d’un extrait de code Java ainsi que via des commandes cURL. Comme nous l’avons remarqué, nous obtenons un effet de levier pour extraire des images d’une page spécifiée du fichier PDF et offrons plus de contrôle sur le processus d’extraction. Le produit Documentation est enrichi d’un éventail de sujets étonnants expliquant plus en détail les capacités de cette API.
De plus, comme tous nos SDK Cloud sont publiés sous licence MIT, vous pouvez envisager de télécharger le code source complet à partir de GitHub et de le modifier selon vos besoins. En cas de problème, vous pouvez envisager de nous contacter pour une résolution rapide via le [forum de support produit] gratuit 9.
Articles Liés
Veuillez visiter les liens suivants pour en savoir plus sur :