Convertir PDF a BMP
La clase BmpDevice te permite convertir páginas de PDF a imágenes BMP. Esta clase proporciona un método llamado Process que te permite convertir una página particular del archivo PDF al formato de imagen Bmp.
La clase BmpDevice te permite convertir páginas de PDF a imágenes BMP. Esta clase proporciona un método llamado process(..) que te permite convertir una página específica del archivo PDF a imagen BMP.
Convertir una Página de PDF a Imagen BMP
Para convertir una página de PDF a una imagen BMP:
- Crea un objeto de la clase Document, para obtener la página específica que deseas convertir.
- Llama al método process(..) para convertir la página a BMP.
El siguiente fragmento de código te muestra cómo convertir una página específica a imagen BMP.
//Convertir PDF a BMP
public void convertPDFtoBMP() {
try {
document = new Document(inputStream);
} catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
File file = new File(fileStorage, "PDF-to-BMP.bmp");
// Crear objeto de flujo para guardar la imagen de salida
try {
OutputStream imageStream =
new FileOutputStream(file.toString());
// Crear objeto Resolution
Resolution resolution = new Resolution(300);
// Crear objeto BmpDevice con resolución específica
BmpDevice BmpDevice = new BmpDevice(resolution);
// Convertir una página específica y guardar la imagen en el flujo
BmpDevice.process(document.getPages().get_Item(1), imageStream);
// Cerrar el flujo
imageStream.close();
resultMessage.setText(file.toString());
} catch (IOException e) {
resultMessage.setText(e.getMessage());
}
}
Convertir Todas las Páginas de PDF a Imágenes BMP
Para convertir todas las páginas de un archivo PDF a formato BMP, necesitas iterar para obtener cada página individual y convertirla a formato BMP. El siguiente fragmento de código te muestra cómo recorrer todas las páginas de un archivo PDF y convertirlas a BMP.
public void convertPDFtoBMP_AllPages() {
try {
document = new Document(inputStream);
} catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
// Recorre todas las páginas del archivo PDF
for (int pageCount = 1; pageCount <= document.getPages().size(); pageCount++) {
// Crea un objeto de flujo para guardar la imagen de salida
File file = new File(fileStorage, "PDF-to-BMP"+pageCount+".BMP");
java.io.OutputStream imageStream;
try {
imageStream = new java.io.FileOutputStream(file.toString());
} catch (FileNotFoundException e) {
resultMessage.setText(e.getMessage());
return;
}
// Crea un objeto Resolution
Resolution resolution = new Resolution(300);
// Crea un objeto BmpDevice con una resolución particular
BmpDevice BmpDevice = new BmpDevice(resolution);
// Convierte una página particular y guarda la imagen en el flujo
BmpDevice.process(document.getPages().get_Item(pageCount), imageStream);
// Cierra el flujo
try {
imageStream.close();
} catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
}
resultMessage.setText(R.string.success_message);
}
Convertir una región particular de la página a Imagen (DOM)
Podemos convertir documentos PDF a diferentes formatos de imagen utilizando objetos de dispositivos de imagen de Aspose.PDF. Sin embargo, a veces hay un requisito para convertir una región particular de la página en formato de imagen. Podemos cumplir con este requisito en dos pasos. Inicialmente recortar la página PDF a la región deseada y luego convertirla en imagen utilizando el objeto de dispositivo de imagen deseado.
El siguiente fragmento de código te muestra cómo convertir páginas PDF a imágenes.
public void convertPDFtoBmp_ParticularPageRegion() {
try {
document = new Document(inputStream);
} catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
// Obtener el rectángulo de una región particular de la página
//x=0,y=0, w=200, h=125;
Rectangle pageRect = new Rectangle(0, 0, 200, 125);
// establecer el valor de CropBox según el rectángulo de la región deseada de la página
document.getPages().get_Item(1).setCropBox(pageRect);
// guardar el documento recortado en un flujo
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
document.save(outStream);
// abrir el documento PDF recortado desde el flujo y convertirlo a imagen
document = new Document(new ByteArrayInputStream(outStream.toByteArray()));
// Crear objeto de Resolución
Resolution resolution = new Resolution(300);
// Crear dispositivo BMP con atributos especificados
BmpDevice BmpDevice = new BmpDevice(resolution);
File file = new File(fileStorage, "PDF-to-BMP.BMP");
try {
// Convertir una página particular y guardar la imagen en un flujo
BmpDevice.process(document.getPages().get_Item(1), file.toString());
}
catch (Exception e) {
resultMessage.setText(e.getMessage());
}
resultMessage.setText(R.string.success_message);
}