./wip/p5-Imager, Perl module for manipulating gray, color, and RGBA format images

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 1.012, Package name: p5-Imager-1.012, Maintainer: kuli0020

Imager is a perl module for manipulating gray, color and rgba format images.
It can read various file formats and has a builtin interpretered language for
blends, fade and multiimage effects. It also has a plugin interface to write
plugins in C. It also has drawing primitives and supports antialiased truetype
and postscript fonts.

Required to run:
[graphics/tiff] [graphics/freetype2] [graphics/png] [graphics/jpeg] [fonts/t1lib] [lang/perl5] [graphics/giflib]

Required to build:

Master sites: (Expand)

RMD160: f66590e227ad3d37557c76dcc835ee4008ef8be4
Filesize: 1213.528 KB

Version history: (Expand)

CVS history: (Expand)

   2015-07-14 17:45:29 by Filip Hajny | Files touched by this commit (2) | Package updated
Log message:
Update wip/p5-Imager to 1.003.

Imager 1.003 - 12 May 2015

 - update 1.002 release notes to include the center change for filled
   circle drawing.

 - flood_fill() would escape beyond a 4-connected space under some
   Added many more flood_fill() tests.

Imager 1.002 - 3 Apr 2015

 - drawing anti-aliased filled circles is now 10 to 50 times faster
   depending on the size of the circle.
   This also changed the center from being the center of the pixel to
   being the top left of the pixel to match the filled arcs drawn by

 - enhancements to polygon filling:

   - added a mode parameter to control how overlapping regions behave

   - added a polypolygon() method to fill more than one polygon at a

   - polygon filling is now exposed through the API.

 - added colormodel(), alphachannel() and colorchannels() methods.
   These were added for two reasons:

    - a future version of Imager may allow the number of channels in
      an image to not directly represent the color model of an image.
      eg. a greyscale TIFF image with multiple alpha channels.

    - a future version of Imager may allow an image to be read without
      translation, for example a TIFF file that contains measurements
      from an instrument.  Currently Imager transforms the samples into
      the range 0.0 ... 1.0 which may means the user has to translates
      the value back.

      An untranslated image would be unusable as image data, so
      colormodel() would return "unknown" in this case.

      Similarly a CMYK image might be returned as an "unknown" color
      model image, if the caller chooses to disable translation to

Imager 1.001 - 2 Jan 2015

 - both Imager and perl 5.21.3 define my_strerror(), prevent a conflict
   Thanks to Slaven Rezic for the report and the patch.

 - GIF: clean-up a test file if the test for the giflib 4.2.0 file
   version bug fails.

 - fix Imager::Matrix2d::rotate()'s centre point handling

 - ICO: don't apply the icon mask to images with an alpha channel by

 - make verbose probing output more verbose

 - use Imager::Probe to probe for freetype 1.x

 - The --enable and --disable parameters to the top-level Makefile.PL
   work again.

 - update the bundled/modified Devel::CheckLib to handle the gcc-4
   symlink on Cygwin

Imager 1.000 - 28 Jul 2014

There's nothing special about Imager 1.000, it's just another release.

 - fix the skip check for the iolayer qr// buffer test

 - improve error reporting for the iolayer test failing on a small
   number of Win32 CPAN testers

Imager 0.99_02 - 21 Jul 2014

 - Imager::Filter::Mandelbrot (and dynfilt/mandelbrot.c) - initialize
   the blue channel in the generated palette, and allow each color
   component to be in the range 100..255 instead of just 100..254.
   Thanks to Ralf Neubauer.

 - revert "improved the XS for i_io_read() and i_io_raw_read()"
   This caused problems with older perls and didn't provide much of a
   performance improvement.

 - support Inline 0.57 and later.
   Inline 0.57 changed the "with" interface.

 - don't define our own MAXINT macro, it conflicts with windows header
   files and in a few places it was the wrong value to use anyway.

Imager 0.99_01 - 29 Jun 2014

 - GIF: add support for giflib 5.1.0, which added error code pointer
   parameters to EGifCloseFile() and DGifCloseFile().

 - GIF: avoid a double-free when do_write() fails.

 - fix SV type probing to work on perl before 5.12.  Broken in 0.99.

 - PNG: skip the benign error test before libpng 1.6.0, since the
   error we're testing didn't exist before 1.6.0.
   https://rt.cpan.org/Ticket/Display.html?id=94717 (continued)

Imager 0.99 - 25 Jun 2014

 - Imager::IO->new_buffer() (and hence Imager->read()'s data
   parameter) now accepts a reference to a scalar as well as just a
   plain scalar.

 - Imager::IO->new_buffer() now always makes a copy of the passed in
   buffer to avoid problems with temporary objects used for the return
   value of SvPVbyte().

 - improved the XS for i_io_read() and i_io_raw_read()

 - load plugins from absolute paths on Android
   Thanks to Brian Fraser.

 - added the jpeg_optimize parameter for writing JPEG files.  This can
   significantly reduce file sizes, but uses more memory and time.

 - the autolevels filter now works on the luminosity of the image
   rather then working per channel.  The old autolevels filter is
   still available as "autolevels_skew".

 - Imager::File::PNG now supports libpng 1.6.10.
   1.6.10 changed CRC errors from benign errors to normal errors,
   which broke the test which used CRC errors to check for benign
   error support.  Switched to using a 1-bit grey-scale image with a
   palette to test for benign errors.

Imager 0.98 - 3 Jan 2014

Incompatible changes:

 - the return value of setpixel() has changed.

   Previously the return values for undrawable pixels vs caller errors
   changed depending on whether you used the multiple pixel calling
   mechanism, or the single pixel mechanism.


    - for an invalid parameter, such as an unknown colour, or missing
      parameter, an empty list (or undef in scalar context) is
      returned, and errstr() is set,

    - otherwise the number of pixels drawn is returned.  If none of
      the pixels could be drawn (they were all outside the image), "0
      but true" is returned.


Other changes:

 - when drawing on an image with an alpha channel where the source
   minimum is greater than zero, Imager would read from beyond the end
   of a malloc() allocated buffer.  In rare circumstances this could
   lead to some of the source image not being written to the target
   image, or possibly to a segmentation fault.
   I don't believe this has any security concerns beyond that.

 - if the first text drawn with Imager::Font::T1 is not anti-aliased,
   text drawn would be nonsense.  This would also read beyond the end
   of a malloced buffer.

 - non-AA text drawn with an Imager::Font::TT (Truetype 1) font would be
   truncated early.

 - Imager::Font::Wrap no longer requires the image parameter.
   2014-05-31 17:57:19 by Thomas Klausner | Files touched by this commit (18)
Log message:
Stop using mk/giflib, use giflib/bl3.mk directly.
   2013-07-17 14:31:09 by Filip Hajny | Files touched by this commit (2)
Log message:
Update p5-Imager to 0.97. >2 years worth of changes, see changelog:

   2012-10-04 12:45:25 by Aleksej Saushev | Files touched by this commit (38)
Log message:
Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days.
Mark packages that don't or might probably not have staged installation.
   2012-07-21 22:08:13 by Thomas Klausner | Files touched by this commit (59)
Log message:
Remove "WWW: URL" from DESCR. Common in FreeBSD ports, but in pkgsrc the
URL should be as HOMEPAGE in the Makefile.
   2011-05-18 10:18:37 by Filip Hajny | Files touched by this commit (2)
Log message:
Updated wip/p5-Imager to 0.82.

This fixes compatibility with graphics/png 1.5.x. Upstream changelog
too long, see here:

   2010-12-26 06:01:21 by David Sainty | Files touched by this commit (78)
Log message:
Mechanically replace references to graphics/jpeg with the suitable
alternative from mk/jpeg.buildlink3.mk

This allows selection of an alternative jpeg library (namely the x86 MMX,
SSE, SSE2 accelerated libjpeg-turbo) via JPEG_DEFAULT=libjpeg-turbo, and
follows the current standard model for alternatives (fam, motif, fuse etc).

The mechanical edits were applied via the following script:

for d in *; do
  [ -d "$d" ] || continue
  for i in "$d/"Makefile* "$d/"*.mk; do
    case "$i" in *.orig|*"*"*) continue;; esac
    sed -e 's;graphics/jpeg/buildlink3\.mk;mk/jpeg.buildlink3.mk;g' \
        -e 's;BUILDLINK_PREFIX\.jpeg;JPEGBASE;g' \
        < "$i" > "$out"
    if cmp -s "$i" "$out"; then
      rm -f "$out"
      echo "Edited $i"
      mv -f "$i" "$i.orig" && mv "$out" \ 
   2010-06-14 00:47:10 by Thomas Klausner | Files touched by this commit (235)
Log message:
Bump PKGREVISION for libpng shlib name change.
Also add some patches to remove use of deprecated symbols and fix other
problems when looking for or compiling against libpng-1.4.x.