Changes for version 0.49

  • handle short EXIF user_comment fields correctly, previously Imager would read (and potentially) write beyond the end of an allocated block, or through a NULL pointer if the EXIF user_comment field was less than 8 bytes long. https://rt.cpan.org/Ticket/Display.html?id=17981
  • tifflib 3.8.0 with MDI (Microsoft(tm) TIFF) support produces a different error when it reads a file with a bad magic number. Update the test to handle the possible messages.
  • some jpeg.c logging calls didn't include parameters enough to match the supplied format string. (detected by valgrind)
  • in some cases memory wasn't being freed during error handling when reading jpeg images (detected by valgrind)
  • free the TIFF object correctly when reading a TIFF image and the page number is out of range. (detected by valgrind)
  • i_gsampf() (used to implement getsamples() for floating point samples) was leaking memory. (detected by valgrind)
  • writing to a PNG file was leaking one memory block (detected by valgrind)
  • some error paths when reading GIF images weren't closing the GIF read object. (detected by valgrind)
  • bump to 0.49 (to get #17981 fix out)
    • For latest versions check the Imager-devel pages: http://imager.perl.org/

Documentation

recipes working with Imager
Draw primitives to images
Programmable transformation operations
working with image files
Entire Image Filtering Operations
Internal image representation information
using Imager with Inline::C.
Simple transformations of one image into another.
an introduction to Imager.
decribes the virtual image interface
documents the register virtual machine used by Imager::transform2().

Modules

demonstrates writing a simple function using Imager.
dim alternate lines to emulate a video display
Perl extension for Generating 24 bit Images
filter that renders the Mandelbrot set.
Imager's C API - introduction.
Imager's C API.
Color handling for Imager.
Rough floating point sample colour handling
built-in Imager color table
implements expression parsing and compilation for the expression evaluation engine used by Imager::transform2()
an assembler for producing code for the Imager register machine
functions handy in writing Imager extensions
general fill types
Font handling for Imager.
objects representing the bounding box of a string.
low-level functions for FreeType2 text output
low-level functions for Truetype fonts
low-level functions for Type1 fonts
uses Win32 GDI services for text output
simple wrapped text output
a class for building fountain fills suitable for use by the fountain filter.
simple wrapper for matrix construction
generated information about the register based VM
a library of register machine image transformations

Provides

in lib/Imager/Expr.pm
in lib/Imager/Expr.pm
in DynTest/DynTest.pm
in lib/Imager/Font/Image.pm