Buscar y Obtener Imágenes de un Documento PDF usando C++
Contents
[
Hide
]
El ImagePlacementAbsorber te permite buscar entre las imágenes en todas las páginas de un documento PDF.
Para buscar imágenes en todo el documento:
- Llama al método Accept de la colección Pages. El método Accept toma un objeto ImagePlacementAbsorber como parámetro. Esto devuelve una colección de objetos ImagePlacement.
- Recorre los objetos ImagePlacements y obtén sus propiedades (Imagen, dimensiones, resolución, etc.).
El siguiente fragmento de código muestra cómo buscar un documento para todas sus imágenes.
using namespace System;
using namespace Aspose::Pdf;
using namespace Aspose::Pdf::Text;
void SearchAndGetImagesFromPDFDocument() {
String _dataDir("C:\\Samples\\");
// Abrir documento
auto document = MakeObject<Document>(_dataDir + u"SearchAndGetImages.pdf");
// Crear objeto ImagePlacementAbsorber para realizar la búsqueda de colocación de imágenes
auto abs = MakeObject<ImagePlacementAbsorber>();
// Aceptar el absorbedor para todas las páginas
document->get_Pages()->Accept(abs);
// Recorre todos los ImagePlacements, obtiene la imagen y las Propiedades de ImagePlacement
for(auto imagePlacement : abs->get_ImagePlacements())
{
// Obtener la imagen usando el objeto ImagePlacement
auto image = imagePlacement->get_Image();
// Mostrar propiedades de colocación de imagen para todas las colocaciones
Console::WriteLine(u"ancho de la imagen: {0}", imagePlacement->get_Rectangle()->get_Width());
Console::WriteLine(u"altura de la imagen:{0}", imagePlacement->get_Rectangle()->get_Height());
Console::WriteLine(u"LLX de la imagen:{0}", imagePlacement->get_Rectangle()->get_LLX());
Console::WriteLine(u"LLY de la imagen:{0}", imagePlacement->get_Rectangle()->get_LLY());
Console::WriteLine(u"resolución horizontal de la imagen:{0}", imagePlacement->get_Resolution()->get_X());
Console::WriteLine(u"resolución vertical de la imagen:{0}", imagePlacement->get_Resolution()->get_Y());
}
}