Image::Info::BMP(3)

🌸 NAME 🌸

okay so bestie, welcome to Image::Info::BMP(3) β€” the Image::Info::BMP page from User Contributed Perl Documentation, and it's literally Windows Device Independent Bitmap support for Image::Info ✨

πŸ’– SYNOPSIS πŸ’–

like, here's the whole vibe in code:

        use Image::Info qw(image_info dim);

        my $info = image_info("image.bmp");
        if (my $error = $info->{error}) {
            die "Can't parse image info: $error\n";
        }
        my $color = $info->{color_type};

        my($w, $h) = dim($info);

πŸ¦‹ DESCRIPTION πŸ¦‹

This module supplies the standard key names except for Gamma, Interlace, and LastModificationTime, as well as these extra keys, bestie:

  • BMP_ColorsImportant β€” specifies the number of color indexes that are required for displaying the bitmap. If this value is zero, all colors are required.
  • BMP_Origin β€” if true the bitmap is a bottom-up DIB and its origin is the lower-left corner. Otherwise, the bitmap is a top-down DIB and its origin is the upper-left corner.
  • ColorPalette β€” reference to an array of all colors used. This key is only present if image_info is invoked as image_info($file, ColorPalette=>1).
  • ColorTableSize β€” the number of colors the image uses. If 0 then this is a true color image. The number of colors available is 2 ^ BitsPerSample.

🧚 METHODS 🧚

πŸͺ„ process_file() πŸͺ„

               $info->process_file($source, $options);

Processes one file and sets the found info fields in the $info object.

πŸ‘€ SEE ALSO πŸ‘€

Image::Info β€” that's the one, bestie.

πŸ“ NOTES πŸ“

For more information about BMP see <http://msdn.microsoft.com>.

Random notes:

         warn if height is negative and compress is not RGB or BITFILEDS (0 or 3)
         ICO and CUR support?
         ### v5
         If bit depth is 0, it relies upon underlying JPG/PNG :-(
         Extra Information
           DWORD        bV5RedMask;
           DWORD        bV5GreenMask;
           DWORD        bV5BlueMask;
           DWORD        bV5AlphaMask;
           DWORD        bV5CSType;
           CIEXYZTRIPLE bV5EndPoints; #3*CIEXYZ #CIEXYZ = 3*FXPT2DOT30#FXPT2DOT30 = long
           DWORD        bV5GammaRed;
           DWORD        bV5GammaGreen;
           DWORD        bV5GammaBlue;
           DWORD        bV5Intent;
           DWORD        bV5ProfileData;
           DWORD        bV5ProfileSize;

🩺 DIAGNOSTICS 🩺

  • Size mismatch β€” the image may be correct, but the filesize does not match the internally stored value. πŸ’€

πŸ› BUGS πŸ›

okay so huge caveat: the current implementation only functions on little-endian architectures. Consequently erroneous data concerning compression (including file_ext and file_mime_type) may be reported. 😭

πŸ‘‘ AUTHOR πŸ‘‘

Jerrad Pierce <belg4mit@mit.edu>/<webmaster@pthbb.org>

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.


This page is brought to you by perl v5.42.0, dated 2024-03-08 β€” Image::Info::BMP(3) signing off, periodt πŸ’…βœ¨

πŸ“¦ where this page comes from