Extraer imágenes de un archivo PDF usando Python
Contents
[
Hide
]
Utilice esta página cuando necesite reutilizar gráficos incrustados, archivar recursos de imágenes o procesar contenido de imágenes fuera del PDF.
- Cargar el PDF de origen con
ap.Document(infile). - Seleccione la página objetivo y el índice del recurso de imagen.
- Guarde el objeto de imagen en un flujo de salida.
import aspose.pdf as ap
from io import FileIO
def extract_image(infile, outfile):
document = ap.Document(infile)
x_image = document.pages[1].resources.images[1]
with FileIO(outfile, "wb") as output_image:
x_image.save(output_image)
Extraer imágenes de una región específica en PDF
Este ejemplo extrae imágenes ubicadas dentro de una región rectangular especificada en una página PDF y las guarda como archivos separados.
- Cargar el PDF de origen.
- Crear
ImagePlacementAbsorbery aceptarlo en la página de destino. - Define el rectángulo de destino.
- Itera a través de las colocaciones de imágenes y verifica si los límites de cada imagen encajan en la región.
- Guardar imágenes coincidentes en archivos de salida.
import aspose.pdf as ap
from io import FileIO
def extract_image_from_specific_region(infile, outfile):
document = ap.Document(infile)
rectangle = ap.Rectangle(0, 0, 590, 590, True)
absorber = ap.ImagePlacementAbsorber()
document.pages[1].accept(absorber)
index = 1
for image_placement in absorber.image_placements:
point1 = ap.Point(image_placement.rectangle.llx, image_placement.rectangle.lly)
point2 = ap.Point(image_placement.rectangle.urx, image_placement.rectangle.ury)
if rectangle.contains(point1, True) and rectangle.contains(point2, True):
with FileIO(outfile.replace("index", str(index)), "wb") as output_image:
image_placement.image.save(output_image)
index += 1