DOKK / manpages / debian 12 / libimager-perl / Imager::File::JPEG.3pm.en
JPEG(3pm) User Contributed Perl Documentation JPEG(3pm)

Imager::File::JPEG - read and write JPEG files

  use Imager;
  my $img = Imager->new;
  $img->read(file=>"foo.jpg")
    or die $img->errstr;
  $img->write(file => "foo.jpg")
    or die $img->errstr;
  my $version = Imager::File::JPEG->libjpeg_version();
  if (Imager::File::JPEG->is_turbojpeg) { ... }
  if (Imager::File::JPEG->is_mozjpeg) { ... }
  if (Imager::File::JPEG->has_arith_coding) { ... }

Imager's JPEG support is documented in Imager::Files.

Besides providing JPEG support, Imager::File::JPEG has the following methods:

  Imager::File::JPEG->libjpeg_version();
    

Returns version information about the variety of "libjpeg" Imager::File::JPEG was compiled with. This is determined at build time. This includes:

  • The library type, one of "libjpeg", "libjpeg-turbo" or "mozjpeg".
  • "version" followed by the library version number.
  • "api" followed by the "libjpeg" API version.

For "libjpeg" the API and library versions are always equal.

  Imager::File::JPEG->is_turbojpeg();
    

Returns true if Imager::File::JPEG was built with "libjpeg-turbo". Note that "mozjpeg" is built on top of "libjpeg-turbo" so this will return true for "mozjpeg".

  Imager::File::JPEG->is_mozjpeg();
    

Returns true if Imager::File::JPEG was built with "mozjpeg". Note that "mozjpeg" doesn't define its own version numbering, so "mozjpeg" is detected by defines that only "mozjpeg" currently defines.

Returns true if the "libjpeg" variant "Imager::File::JPEG" was built with has both encoding and decoding support for arithmetic coding.
Returns true if the "libjpeg" variant "Imager::File::JPEG" was built with has encoding support for arithmetic coding.
Returns true if the "libjpeg" variant "Imager::File::JPEG" was built with has decoding support for arithmetic coding.

Tony Cook <tonyc@cpan.org>

Imager, Imager::Files.

2023-01-11 perl v5.36.0