RawLineSize

BmpImage.RawLineSize property

Ottiene la dimensione della riga grezza in byte.

public override int RawLineSize { get; }

Valore della proprietà

La dimensione della riga grezza in byte.

Esempi

L’esempio seguente ottiene le informazioni generali sull’immagine, inclusi il formato dei pixel, la dimensione dell’immagine, la risoluzione, la compressione, ecc.

[C#]

using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\sample.bmp"))
{
    Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = (Aspose.Imaging.FileFormats.Bmp.BmpImage)image;                

    System.Console.WriteLine("The pixel format: {0}", bmpImage.RawDataFormat);                
    System.Console.WriteLine("The raw line size in bytes: {0}", bmpImage.RawLineSize);
    System.Console.WriteLine("The bitmap compression: {0}", bmpImage.Compression);
    System.Console.WriteLine("The bitmap width: {0}", bmpImage.Width);
    System.Console.WriteLine("The bitmap height: {0}", bmpImage.Height);
    System.Console.WriteLine("The number of bits per pixel: {0}", bmpImage.BitsPerPixel);

    double hres = bmpImage.HorizontalResolution;
    double vres = bmpImage.VerticalResolution;
    System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", hres);
    System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", vres);

    if (hres != 96.0 || vres != 96.0)
    {
        // Potresti prendere in considerazione l'utilizzo del metodo SetResolution per aggiornare entrambi i valori di risoluzione in una singola chiamata.
        System.Console.WriteLine("Set resolution values to 96 dpi");
        bmpImage.SetResolution(96.0, 96.0);

        System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", bmpImage.HorizontalResolution);
        System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", bmpImage.VerticalResolution);
    }

    //L'output potrebbe essere simile a questo:
    //Il formato pixel: Rgb24Bpp, canali utilizzati: 8,8,8
    //La dimensione della riga grezza in byte: 1500
    //La compressione bitmap: Rgb
    //La larghezza della bitmap: 500
    //L'altezza della bitmap: 375
    //Il numero di bit per pixel: 24
    //La risoluzione orizzontale, in pixel per pollice: 0
    //La risoluzione verticale, in pixel per pollice: 0
    //Imposta i valori di risoluzione a 96 dpi
    //La risoluzione orizzontale, in pixel per pollice: 96.012
    //La risoluzione verticale, in pixel per pollice: 96.012
}

L’esempio seguente mostra come la compressione bitmap influisce sulla dimensione dell’immagine di output.

[C#]

Aspose.Imaging.FileFormats.Bmp.BitmapCompression[] compressions = new Aspose.Imaging.FileFormats.Bmp.BitmapCompression[]
{
    Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rgb,
    Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rle8,
};

Aspose.Imaging.Color[] paletterColors = new Aspose.Imaging.Color[]
{
    Aspose.Imaging.Color.Red,
    Aspose.Imaging.Color.Green,
};

// Crea una tavolozza monocromatica che contenga solo i colori rosso e verde.
Aspose.Imaging.IColorPalette palette = new Aspose.Imaging.ColorPalette(paletterColors);

foreach (Aspose.Imaging.FileFormats.Bmp.BitmapCompression compression in compressions)
{
    // Crea un'immagine BMP a 8 bpp di 100 x 100 px.
    using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100, 8, palette, compression, 0.0, 0.0))
    {
        Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(bmpImage);

        // Riempi di rosso l'intera immagine.
        Aspose.Imaging.Brushes.SolidBrush redBrush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
        gr.FillRectangle(redBrush, bmpImage.Bounds);

        // Salva l'immagine in un flusso per ottenere la dimensione dell'immagine di output.
        using (System.IO.MemoryStream stream = new System.IO.MemoryStream())
        {
            bmpImage.Save(stream);

            System.Console.WriteLine("---------------------------------------------");
            System.Console.WriteLine("The compression={0}", bmpImage.Compression);
            System.Console.WriteLine("The number of bits per pixel={0}", bmpImage.BitsPerPixel);
            System.Console.WriteLine("The image dimensions={0} x {1}", bmpImage.Width, bmpImage.Height);
            System.Console.WriteLine("The raw line size={0}", bmpImage.RawLineSize);
            System.Console.WriteLine("The output size in bytes={0}", stream.Length);
        }
    }
}

// L'output è simile a questo:
// -----------------------------------------------
// La compressione = Rgb
// Il numero di bit per pixel = 8
// Le dimensioni dell'immagine = 100 x 100
// La dimensione della linea grezza = 100
// La dimensione dell'output in byte = 11078
// -----------------------------------------------
// La compressione = Rle8
// Il numero di bit per pixel = 8
// Le dimensioni dell'immagine = 100 x 100
// La dimensione della linea grezza = 100
// La dimensione dell'output in byte = 856

Guarda anche