Obtener y Buscar Imágenes en PDF

Contents
[ ]

El ImagePlacementAbsorber te permite buscar entre imágenes en todas las páginas de un documento PDF.

El siguiente fragmento de código también funciona con la biblioteca Aspose.PDF.Drawing.

Para buscar un documento completo por imágenes:

  1. Llamar 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.
  2. Recorrer los objetos ImagePlacements y obtener sus propiedades (imagen, dimensiones, resolución, etc.).

El siguiente fragmento de código muestra cómo buscar un documento por todas sus imágenes.

// Para ejemplos completos y archivos de datos, por favor visita https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// La ruta al directorio de documentos.
string dataDir = RunExamples.GetDataDir_AsposePdf_Images();

// Abrir documento
Aspose.Pdf.Document doc = new Aspose.Pdf.Document(dataDir+ "SearchAndGetImages.pdf");

// Crear un objeto ImagePlacementAbsorber para realizar la búsqueda de colocación de imágenes
ImagePlacementAbsorber abs = new ImagePlacementAbsorber();

// Aceptar el absorber para todas las páginas
doc.Pages.Accept(abs);

// Recorrer todos los ImagePlacements, obtener la imagen y las propiedades de ImagePlacement
foreach (ImagePlacement imagePlacement in abs.ImagePlacements)
{
    // Obtener la imagen usando el objeto ImagePlacement
    XImage image = imagePlacement.Image;

    // Mostrar las propiedades de colocación de imágenes para todas las colocaciones
    Console.Out.WriteLine("ancho de la imagen:" + imagePlacement.Rectangle.Width);
    Console.Out.WriteLine("altura de la imagen:" + imagePlacement.Rectangle.Height);
    Console.Out.WriteLine("LLX de la imagen:" + imagePlacement.Rectangle.LLX);
    Console.Out.WriteLine("LLY de la imagen:" + imagePlacement.Rectangle.LLY);
    Console.Out.WriteLine("resolución horizontal de la imagen:" + imagePlacement.Resolution.X);
    Console.Out.WriteLine("resolución vertical de la imagen:" + imagePlacement.Resolution.Y);
}

Para obtener una imagen de una página individual, utiliza el siguiente código:

// Para ejemplos completos y archivos de datos, por favor visita https://github.com/aspose-pdf/Aspose.PDF-for-.NET
doc.Pages[1].Accept(abs);