Working with Image Placement

Contents
[ ]

Avec la sortie de Aspose.PDF pour .NET 7.0.0, nous avons introduit des classes appelées ImagePlacement, ImagePlacementAbsorber et ImagePlacementCollection qui offrent des capacités similaires à celles des classes décrites ci-dessus pour obtenir la résolution et la position d’une image dans un document PDF.

  • ImagePlacementAbsorber effectue une recherche d’utilisation d’image comme la collection d’objets ImagePlacement.
  • ImagePlacement fournit les membres Resolution et Rectangle qui retournent les valeurs réelles de placement de l’image.

Le prochain extrait de code fonctionne également avec une nouvelle interface graphique Aspose.Drawing.

// Pour des exemples complets et des fichiers de données, veuillez aller à https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Le chemin vers le répertoire des documents.
string dataDir = RunExamples.GetDataDir_AsposePdf_Images();


// Charger le document PDF source
Aspose.Pdf.Document doc = new Aspose.Pdf.Document(dataDir+ "ImagePlacement.pdf");
ImagePlacementAbsorber abs = new ImagePlacementAbsorber();

// Charger le contenu de la première page
doc.Pages[1].Accept(abs);
foreach (ImagePlacement imagePlacement in abs.ImagePlacements)
{
    // Obtenir les propriétés de l'image
    Console.Out.WriteLine("largeur de l'image:" + imagePlacement.Rectangle.Width);
    Console.Out.WriteLine("hauteur de l'image:" + imagePlacement.Rectangle.Height);
    Console.Out.WriteLine("LLX de l'image:" + imagePlacement.Rectangle.LLX);
    Console.Out.WriteLine("LLY de l'image:" + imagePlacement.Rectangle.LLY);
    Console.Out.WriteLine("résolution horizontale de l'image:" + imagePlacement.Resolution.X);
    Console.Out.WriteLine("résolution verticale de l'image:" + imagePlacement.Resolution.Y);

    // Récupérer l'image avec les dimensions visibles
    Bitmap scaledImage;
    using (MemoryStream imageStream = new MemoryStream())
    {
        // Récupérer l'image des ressources
        imagePlacement.Image.Save(imageStream, System.Drawing.Imaging.ImageFormat.Png);
        Bitmap resourceImage = (Bitmap)Bitmap.FromStream(imageStream);
        // Créer un bitmap avec les dimensions réelles
        scaledImage = new Bitmap(resourceImage, (int)imagePlacement.Rectangle.Width, (int)imagePlacement.Rectangle.Height);
    }
}