Convertir PDF en PNG
Utilisez la bibliothèque Aspose.PDF pour Android via Java pour convertir des pages PDF en images PNG de manière accessible et pratique.
La classe PngDevice vous permet de convertir des pages PDF en images PNG. Cette classe fournit une méthode nommée Process qui vous permet de convertir une page particulière du fichier PDF au format image PNG.
Convertir les pages PDF en images PNG
Pour convertir toutes les pages d’un fichier PDF en fichiers PNG, parcourez les pages individuelles et convertissez chacune au format PNG. Le fragment de code suivant montre comment parcourir toutes les pages d’un fichier PDF et convertir chacune en image PNG.
Convertir une seule page PDF en image PNG
Passez l’indice de la page comme argument à la méthode Process(..). L’extrait de code suivant montre les étapes pour convertir la première page du PDF au format PNG.
public void convertPDFtoPNG() {
try {
document = new Document(inputStream);
} catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
File file = new File(fileStorage, "PDF-to-PNG.png");
// Créer un objet stream pour enregistrer l'image de sortie
try {
OutputStream imageStream =
new FileOutputStream(file.toString());
// Créer un objet Résolution
Resolution resolution = new Resolution(300);
// Créer un objet PngDevice avec une résolution particulière
PngDevice PngDevice = new PngDevice(resolution);
// Convertir une page particulière et enregistrer l'image dans le stream
PngDevice.process(document.getPages().get_Item(1), imageStream);
// Fermer le stream
imageStream.close();
resultMessage.setText(file.toString());
} catch (IOException e) {
resultMessage.setText(e.getMessage());
}
}
Convertir toutes les pages PDF en image PNG
Aspose.PDF pour Android via Java vous montre comment convertir toutes les pages d’un fichier PDF en images :
- Parcourez toutes les pages du fichier.
- Convertissez chaque page individuellement :
- Créez un objet de la classe Document pour charger le document PDF.
- Obtenez la page que vous souhaitez convertir.
- Appelez la méthode Process pour convertir la page en PNG.
Le code suivant vous montre comment convertir toutes les pages PDF en images PNG.
public void convertPDFtoPNG_AllPages() {
try {
document = new Document(inputStream);
} catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
// Parcourez toutes les pages du fichier PDF
for (int pageCount = 1; pageCount <= document.getPages().size(); pageCount++) {
// Créez un objet de stream pour enregistrer l'image de sortie
File file = new File(fileStorage, "PDF-to-PNG"+pageCount+".png");
java.io.OutputStream imageStream;
try {
imageStream = new java.io.FileOutputStream(file.toString());
} catch (FileNotFoundException e) {
resultMessage.setText(e.getMessage());
return;
}
// Créez un objet Resolution
Resolution resolution = new Resolution(300);
// Créez un objet JpegDevice avec une résolution particulière
PngDevice JpegDevice = new PngDevice(resolution);
// Convertissez une page particulière et enregistrez l'image dans le flux
JpegDevice.process(document.getPages().get_Item(pageCount), imageStream);
// Fermez le flux
try {
imageStream.close();
} catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
}
resultMessage.setText(R.string.success_message);
}
Convertir une page PDF particulière en image PNG
Aspose.PDF pour Android via Java vous montre comment convertir une page particulière au format PNG :
public void convertPDFtoPNG_ParticularPageRegion() {
try {
document = new Document(inputStream);
} catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
// Obtenir le rectangle de la région de la page particulière
//x=0,y=0, w=200, h=125;
Rectangle pageRect = new Rectangle(0, 0, 200, 125);
// définir la valeur de CropBox selon le rectangle de la région de page souhaitée
document.getPages().get_Item(1).setCropBox(pageRect);
// enregistrer le document rogné dans le flux
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
document.save(outStream);
// ouvrir le document PDF rogné depuis le flux et convertir en image
document = new Document(new ByteArrayInputStream(outStream.toByteArray()));
// Créer un objet Resolution
Resolution resolution = new Resolution(300);
// Créer un périphérique Jpeg avec des attributs spécifiés
PngDevice PngDevice = new PngDevice(resolution);
File file = new File(fileStorage, "PDF-to-PNG.png");
try {
// Convertir une page particulière et enregistrer l'image dans le flux
PngDevice.process(document.getPages().get_Item(1), file.toString());
}
catch (Exception e) {
resultMessage.setText(e.getMessage());
}
}