imager.git
9 years ago[rt #77063] improve rotate(degrees => ...) results.
Tony Cook [Sat, 26 May 2012 02:32:53 +0000 (12:32 +1000)]
[rt #77063] improve rotate(degrees => ...) results.

9 years ago[rt #77173] improve error reporting on an API version mismatch
Tony Cook [Thu, 24 May 2012 09:09:41 +0000 (19:09 +1000)]
[rt #77173] improve error reporting on an API version mismatch

9 years agoelimintate IIM_new and IIM_DESTROY from Imager's internals
Tony Cook [Fri, 11 May 2012 12:28:50 +0000 (22:28 +1000)]
elimintate IIM_new and IIM_DESTROY from Imager's internals

They only matter for XS

9 years agoyes 0.90 has been released
Tony Cook [Fri, 11 May 2012 11:52:32 +0000 (21:52 +1000)]
yes 0.90 has been released

9 years ago0.90 release v0.90
Tony Cook [Mon, 30 Apr 2012 09:02:56 +0000 (19:02 +1000)]
0.90 release

9 years agoupdate PNG Changes/.pm for release
Tony Cook [Mon, 30 Apr 2012 09:00:04 +0000 (19:00 +1000)]
update PNG Changes/.pm for release

9 years agoMerge branch 'png'
Tony Cook [Sun, 29 Apr 2012 04:54:18 +0000 (14:54 +1000)]
Merge branch 'png'

9 years agoPNG re-work: prepare for merge
Tony Cook [Sun, 29 Apr 2012 04:53:35 +0000 (14:53 +1000)]
PNG re-work: prepare for merge

9 years agoPNG re-work: finish up the tag documentation
Tony Cook [Sun, 29 Apr 2012 03:11:32 +0000 (13:11 +1000)]
PNG re-work: finish up the tag documentation

9 years agoPNG re-work: start documenting new tags
Tony Cook [Mon, 23 Apr 2012 05:18:08 +0000 (15:18 +1000)]
PNG re-work: start documenting new tags

9 years agoPNG re-work: saving imager tags as PNG chunks
Tony Cook [Fri, 20 Apr 2012 10:15:25 +0000 (20:15 +1000)]
PNG re-work: saving imager tags as PNG chunks

9 years agoPNG re-work: fix line length calculations for pngdump.pl
Tony Cook [Fri, 20 Apr 2012 10:14:51 +0000 (20:14 +1000)]
PNG re-work: fix line length calculations for pngdump.pl

9 years agoPNG re-work: process the bKGD chunk into an i_background tag
Tony Cook [Mon, 16 Apr 2012 09:05:53 +0000 (19:05 +1000)]
PNG re-work: process the bKGD chunk into an i_background tag

9 years agoPNG re-work: test tags from PNG reads and re-work a little
Tony Cook [Sun, 15 Apr 2012 04:50:52 +0000 (14:50 +1000)]
PNG re-work: test tags from PNG reads and re-work a little

libpng synthesizes gAMA and cHRM chunks on input when sRGB is present,
so ignore them if sRGB is present.

No longer generate a png_text tag when the keyword is recognized.

Added png_time

9 years agoPNG re-work: ignore some build and test detritus for the PNG manifest
Tony Cook [Sun, 15 Apr 2012 04:48:07 +0000 (14:48 +1000)]
PNG re-work: ignore some build and test detritus for the PNG manifest

9 years agoPNG re-work: update pngdump.pl to dump IDAT data
Tony Cook [Sun, 15 Apr 2012 04:47:14 +0000 (14:47 +1000)]
PNG re-work: update pngdump.pl to dump IDAT data

9 years agoPNG re-work: avoid the comment in qw() warning
Tony Cook [Sun, 15 Apr 2012 04:46:49 +0000 (14:46 +1000)]
PNG re-work: avoid the comment in qw() warning

9 years agoPNG re-work: update Changes for the most recent changes
Tony Cook [Sun, 15 Apr 2012 03:26:13 +0000 (13:26 +1000)]
PNG re-work: update Changes for the most recent changes

9 years agoPNG-rework: forward png flush output through to i_io_flush()
Tony Cook [Sun, 15 Apr 2012 03:20:19 +0000 (13:20 +1000)]
PNG-rework: forward png flush output through to i_io_flush()

9 years agoPNG re-work: support writing 16-bit/sample images
Tony Cook [Sat, 14 Apr 2012 02:52:22 +0000 (12:52 +1000)]
PNG re-work: support writing 16-bit/sample images

9 years agoPNG re-work: handle writing bilevel files
Tony Cook [Thu, 12 Apr 2012 12:55:45 +0000 (22:55 +1000)]
PNG re-work: handle writing bilevel files

9 years agoPNG re-work: paletted file writes
Tony Cook [Thu, 12 Apr 2012 09:55:56 +0000 (19:55 +1000)]
PNG re-work: paletted file writes

9 years agoPNG re-work: split out write handling
Tony Cook [Tue, 10 Apr 2012 08:32:59 +0000 (18:32 +1000)]
PNG re-work: split out write handling

9 years agoPNG re-work: collect more text tags
Tony Cook [Mon, 9 Apr 2012 11:03:42 +0000 (21:03 +1000)]
PNG re-work: collect more text tags

9 years agoPNG re-work: remove unused variables
Tony Cook [Mon, 9 Apr 2012 11:03:22 +0000 (21:03 +1000)]
PNG re-work: remove unused variables

9 years agoPNG re-work: test results of new and old read handlers
Tony Cook [Mon, 9 Apr 2012 11:02:39 +0000 (21:02 +1000)]
PNG re-work: test results of new and old read handlers

9 years agoPNG re-work: expand the pngdump.pl tool a bit
Tony Cook [Mon, 9 Apr 2012 04:59:49 +0000 (14:59 +1000)]
PNG re-work: expand the pngdump.pl tool a bit

9 years agoPNG re-work: add more test images and fix the PNG/ MANIFEST
Tony Cook [Mon, 9 Apr 2012 02:58:43 +0000 (12:58 +1000)]
PNG re-work: add more test images and fix the PNG/ MANIFEST

9 years agoPNG re-work: change note for the previous + some TODO
Tony Cook [Mon, 9 Apr 2012 02:49:11 +0000 (12:49 +1000)]
PNG re-work: change note for the previous + some TODO

9 years agoPNG re-work: read 16-bit PNG as 16-bit
Tony Cook [Fri, 6 Apr 2012 13:18:45 +0000 (23:18 +1000)]
PNG re-work: read 16-bit PNG as 16-bit

9 years agoPNG re-work: read 1 bit grey images as the common internal bilevel format
Tony Cook [Fri, 6 Apr 2012 07:30:39 +0000 (17:30 +1000)]
PNG re-work: read 1 bit grey images as the common internal bilevel format

which is really paletted

9 years agoPNG re-work: implement paletted read
Tony Cook [Fri, 6 Apr 2012 05:13:20 +0000 (15:13 +1000)]
PNG re-work: implement paletted read

9 years agoPNG re-work: remove obsolete comment and the associated unused code
Tony Cook [Mon, 2 Apr 2012 11:53:16 +0000 (21:53 +1000)]
PNG re-work: remove obsolete comment and the associated unused code

This appears to have been copied from libpng's example.c

9 years agoPNG re-work: remove direct image access
Tony Cook [Mon, 2 Apr 2012 11:49:37 +0000 (21:49 +1000)]
PNG re-work: remove direct image access

the PNG driver has long directly accessed Imager idata data
directly, which is invalid.

I may change the internal format of the data in the future for simpler
MMX/SSE implementation.

9 years agoPNG re-work: simple structural dump script for PNG files
Tony Cook [Mon, 2 Apr 2012 11:32:03 +0000 (21:32 +1000)]
PNG re-work: simple structural dump script for PNG files

9 years agoWIP PNG re-work
Tony Cook [Sat, 12 Nov 2011 05:38:41 +0000 (16:38 +1100)]
WIP PNG re-work

9 years agoPNG re-work: save png_bits and png_interlace tags
Tony Cook [Mon, 7 Nov 2011 09:11:18 +0000 (20:11 +1100)]
PNG re-work: save png_bits and png_interlace tags

9 years agoPNG re-work: add more image type TODO tests
Tony Cook [Wed, 2 Nov 2011 11:58:53 +0000 (22:58 +1100)]
PNG re-work: add more image type TODO tests

9 years agoPNG re-work: simple tests for reading various images types
Tony Cook [Tue, 14 Jun 2011 13:49:51 +0000 (23:49 +1000)]
PNG re-work: simple tests for reading various images types

including TODOs for paletted checks

9 years agoPNG re-work: test size limit handling of very wide or tall PNG images
Tony Cook [Tue, 14 Jun 2011 13:34:47 +0000 (23:34 +1000)]
PNG re-work: test size limit handling of very wide or tall PNG images

9 years agoPNG re-work: provide perl level access to the libpng version number
Tony Cook [Tue, 14 Jun 2011 13:34:11 +0000 (23:34 +1000)]
PNG re-work: provide perl level access to the libpng version number

9 years agoPNG re-work: improve error reporting for PNG read/write
Tony Cook [Sat, 11 Jun 2011 03:55:07 +0000 (13:55 +1000)]
PNG re-work: improve error reporting for PNG read/write

9 years agoignore some build detritus for the manifest
Tony Cook [Sun, 15 Apr 2012 04:47:40 +0000 (14:47 +1000)]
ignore some build detritus for the manifest

9 years agoi_get_file_background[f]?() now return int
Tony Cook [Mon, 16 Apr 2012 09:04:59 +0000 (19:04 +1000)]
i_get_file_background[f]?() now return int

9 years agofix a typo
Tony Cook [Sat, 28 Apr 2012 02:48:49 +0000 (12:48 +1000)]
fix a typo

9 years ago[rt #74043] handle static linking of libpng with libz
Tony Cook [Sat, 28 Apr 2012 02:45:13 +0000 (12:45 +1000)]
[rt #74043] handle static linking of libpng with libz

9 years agochange note for 535921f
Tony Cook [Fri, 27 Apr 2012 12:01:43 +0000 (22:01 +1000)]
change note for 535921f

9 years ago[rt #75869] make sure EU::MM can find libraries found via pkg-config
Tony Cook [Fri, 27 Apr 2012 11:56:10 +0000 (21:56 +1000)]
[rt #75869] make sure EU::MM can find libraries found via pkg-config

9 years agomore verbose probe output
Tony Cook [Fri, 27 Apr 2012 10:18:35 +0000 (20:18 +1000)]
more verbose probe output

9 years agoPNG re-work: handle libpng 1.5 correctly
Tony Cook [Tue, 14 Jun 2011 13:32:59 +0000 (23:32 +1000)]
PNG re-work: handle libpng 1.5 correctly

9 years ago[rt #76782] improve documentation and error reporting for missing I/O callbacks
Tony Cook [Wed, 25 Apr 2012 02:18:10 +0000 (12:18 +1000)]
[rt #76782] improve documentation and error reporting for missing I/O callbacks

9 years agochange notes for the BMP updates
Tony Cook [Tue, 24 Apr 2012 09:50:29 +0000 (19:50 +1000)]
change notes for the BMP updates

9 years agoodd run lengths for BI_RLE4 compressed BMP files were handled incorrectly
Tony Cook [Tue, 24 Apr 2012 09:23:21 +0000 (19:23 +1000)]
odd run lengths for BI_RLE4 compressed BMP files were handled incorrectly

9 years agohandle odd-width BI_RLE4 width overflow
Tony Cook [Tue, 24 Apr 2012 07:12:46 +0000 (17:12 +1000)]
handle odd-width BI_RLE4 width overflow

Some BMP BI_RLE4 writers compress scanlines as if they were an extra
pixel in width, eg. GIMP.

Imager would fail to read these images, I now allow one pixel of
overflow.

9 years agoreport basic information to the log for one scanline overflow
Tony Cook [Mon, 23 Apr 2012 12:18:36 +0000 (22:18 +1000)]
report basic information to the log for one scanline overflow

9 years agounshipped regression tests for BMP files
Tony Cook [Mon, 23 Apr 2012 12:17:17 +0000 (22:17 +1000)]
unshipped regression tests for BMP files

9 years agostart of a BMP file structure dumper
Tony Cook [Mon, 23 Apr 2012 12:16:01 +0000 (22:16 +1000)]
start of a BMP file structure dumper

9 years ago[rt #76736] fix BI_BITFIELDS handling
Tony Cook [Mon, 23 Apr 2012 12:05:32 +0000 (22:05 +1000)]
[rt #76736] fix BI_BITFIELDS handling

I didn't have any test images when I wrote the BI_BITFIELDS code,
unfortunately it was completely broken.

Updated and tested (with some unshipped images for now.)

9 years agodocument the i_comment common tag
Tony Cook [Mon, 9 Apr 2012 11:02:58 +0000 (21:02 +1000)]
document the i_comment common tag

9 years agore-work sample down-conversion to rounding
Tony Cook [Sat, 14 Apr 2012 04:06:07 +0000 (14:06 +1000)]
re-work sample down-conversion to rounding

9 years agochange note for 360e674ef3d
Tony Cook [Sat, 14 Apr 2012 03:07:08 +0000 (13:07 +1000)]
change note for 360e674ef3d

9 years agofix the prototype for Imager::Test::is_imaged
Tony Cook [Sat, 14 Apr 2012 02:51:47 +0000 (12:51 +1000)]
fix the prototype for Imager::Test::is_imaged

9 years agofix the brokeness introduced in 5ee60746
Tony Cook [Tue, 20 Mar 2012 09:56:13 +0000 (20:56 +1100)]
fix the brokeness introduced in 5ee60746

as modified it only compared the first byte, change it to expand into
an array ref and use is_deeply() is compare.

9 years ago0.89 release v0.89
Tony Cook [Sun, 18 Mar 2012 01:31:12 +0000 (12:31 +1100)]
0.89 release

9 years ago[rt #70388] debug mymalloc() no longer builds a string, just stores the pointer
Tony Cook [Sat, 10 Mar 2012 03:13:26 +0000 (14:13 +1100)]
[rt #70388] debug mymalloc() no longer builds a string, just stores the pointer

The debug malloc() code would use snprintf() (or even worse,
sprintf()) to build a string to track when the memory allocation was
performed for later tracking.

Now we just store the pointers, which should come from __FILE__ and
hence be static.

9 years ago[rt #75560] don't fallback to using DynaLoader when XSLoader fails
Tony Cook [Fri, 9 Mar 2012 08:15:32 +0000 (19:15 +1100)]
[rt #75560] don't fallback to using DynaLoader when XSLoader fails

This was masking errors when the loadable object failed to load for
some reason other than XSLoader being unavailable.

The alternative was to only eval the load of XSLoader and keep the
fallback, but XSLoader has been core perl for a while.

9 years ago[rt #71495] method index links now point at the method documentation
Tony Cook [Mon, 5 Mar 2012 10:34:15 +0000 (21:34 +1100)]
[rt #71495] method index links now point at the method documentation

9 years ago[rt #75258] fix the utterly broken i_gpixf() for paletted images
Tony Cook [Mon, 5 Mar 2012 09:54:37 +0000 (20:54 +1100)]
[rt #75258] fix the utterly broken i_gpixf() for paletted images

This is implemented as a wrapper around the underlying i_gpix()
implementation and was handling the return value from i_gpix()
incorrectly.

Add tests and fix it.

9 years agocompare unpacked data to avoid unintelligble cpan testers output
Tony Cook [Sat, 25 Feb 2012 03:40:47 +0000 (14:40 +1100)]
compare unpacked data to avoid unintelligble cpan testers output

9 years agoImager 0.88 release v0.88
Tony Cook [Wed, 22 Feb 2012 05:08:28 +0000 (16:08 +1100)]
Imager 0.88 release

9 years ago[rt #73697] re-work getpixel() and setpixel()
Tony Cook [Sat, 18 Feb 2012 08:53:13 +0000 (19:53 +1100)]
[rt #73697] re-work getpixel() and setpixel()

9 years agosplit Imager's typemap into internal, public and old perl bugfixes
Tony Cook [Fri, 17 Feb 2012 12:27:31 +0000 (23:27 +1100)]
split Imager's typemap into internal, public and old perl bugfixes

Split as follows:

typemap.local - handle types specific to Imager.xs
typemap - types that Imager's API publishes
typemap.oldperl - fix broken typemap entries in old perl

typemap.oldperl only fixes issues I've run into with perl.

9 years agoMerge branch 'psamp'
Tony Cook [Thu, 16 Feb 2012 13:00:28 +0000 (00:00 +1100)]
Merge branch 'psamp'

9 years agoChanges note for the psamp/setsamples work
Tony Cook [Thu, 16 Feb 2012 12:58:07 +0000 (23:58 +1100)]
Changes note for the psamp/setsamples work

9 years agodocument setsamples() new capabilities
Tony Cook [Thu, 16 Feb 2012 07:41:26 +0000 (18:41 +1100)]
document setsamples() new capabilities

9 years agoadd offset and width parameters to setsamples() for new psamp/psampf
Tony Cook [Tue, 14 Feb 2012 11:52:56 +0000 (22:52 +1100)]
add offset and width parameters to setsamples() for new psamp/psampf

9 years agowe don't use D::C's pod coverage, don't collect it
Tony Cook [Tue, 14 Feb 2012 09:31:43 +0000 (20:31 +1100)]
we don't use D::C's pod coverage, don't collect it

9 years agoOO API
Tony Cook [Mon, 13 Feb 2012 09:57:59 +0000 (20:57 +1100)]
OO API

9 years agodon't supply a default for a missing channel list
Tony Cook [Sun, 12 Feb 2012 00:59:59 +0000 (11:59 +1100)]
don't supply a default for a missing channel list

The underlying XS will supply a NULL chan_list which uses a faster
code path i_gsamp/i_psamp().

9 years agoi_psamp()/i_psampf() coverage tests for paletted images
Tony Cook [Sat, 11 Feb 2012 13:33:33 +0000 (00:33 +1100)]
i_psamp()/i_psampf() coverage tests for paletted images

9 years agoi_psamp()/i_psampf() coverage tests for masked images
Tony Cook [Sat, 11 Feb 2012 01:52:45 +0000 (12:52 +1100)]
i_psamp()/i_psampf() coverage tests for masked images

9 years agoi_psamp()/i_psampf() bad channel count tests
Tony Cook [Fri, 10 Feb 2012 09:30:47 +0000 (20:30 +1100)]
i_psamp()/i_psampf() bad channel count tests

9 years agoi_psamp()/i_psampf() coverage tests for double/sample images
Tony Cook [Fri, 10 Feb 2012 09:30:14 +0000 (20:30 +1100)]
i_psamp()/i_psampf() coverage tests for double/sample images

9 years agoi_psamp()/i_psampf() tests for 16-bit/sample images
Tony Cook [Fri, 10 Feb 2012 08:49:17 +0000 (19:49 +1100)]
i_psamp()/i_psampf() tests for 16-bit/sample images

9 years agocoverage tests for 8-bits/sample psamp/psampf
Tony Cook [Fri, 3 Feb 2012 13:05:21 +0000 (00:05 +1100)]
coverage tests for 8-bits/sample psamp/psampf

9 years agoallow imcover.perl to specify a subset of tests to run
Tony Cook [Fri, 3 Feb 2012 13:05:02 +0000 (00:05 +1100)]
allow imcover.perl to specify a subset of tests to run

and:

- allow for more verbose output

- disable duplicate gcov runs

9 years agoinitial XS interfaces to i_psamp()/i_psampf()
Tony Cook [Mon, 30 Jan 2012 12:06:49 +0000 (23:06 +1100)]
initial XS interfaces to i_psamp()/i_psampf()

9 years agoadd psamp(), psampf() to C image API
Tony Cook [Mon, 30 Jan 2012 12:04:27 +0000 (23:04 +1100)]
add psamp(), psampf() to C image API

9 years agore-work XS handling of channel lists
Tony Cook [Mon, 30 Jan 2012 09:42:50 +0000 (20:42 +1100)]
re-work XS handling of channel lists

9 years agochange note for getsamples(target) fix
Tony Cook [Sun, 12 Feb 2012 00:40:30 +0000 (11:40 +1100)]
change note for getsamples(target) fix

9 years ago[rt #74882] fix getsamples(target => \@foo, ...)
Tony Cook [Sun, 12 Feb 2012 00:35:09 +0000 (11:35 +1100)]
[rt #74882] fix getsamples(target => \@foo, ...)

This was broken except for the i_gsamp_bits() case and was treating
the target parameter as a hashref instead of an array reference.

9 years ago[rt #69244] remove long unused gif case from read
Tony Cook [Thu, 26 Jan 2012 03:35:33 +0000 (14:35 +1100)]
[rt #69244] remove long unused gif case from read

9 years ago[rt #70014] re-work win32 text output to work in normal mode
Tony Cook [Mon, 23 Jan 2012 07:55:31 +0000 (18:55 +1100)]
[rt #70014] re-work win32 text output to work in normal mode

9 years agoignore more generated files
Tony Cook [Mon, 23 Jan 2012 07:29:16 +0000 (18:29 +1100)]
ignore more generated files

9 years agonote Debian inconsistency
Tony Cook [Fri, 20 Jan 2012 11:41:46 +0000 (22:41 +1100)]
note Debian inconsistency

9 years agoadd to the valid links list so the previous commit passes the link check
Tony Cook [Fri, 20 Jan 2012 11:41:17 +0000 (22:41 +1100)]
add to the valid links list so the previous commit passes the link check

9 years ago[rt #73906] add some other image processing modules to SEE ALSO
Tony Cook [Fri, 20 Jan 2012 11:29:35 +0000 (22:29 +1100)]
[rt #73906] add some other image processing modules to SEE ALSO

9 years ago[rt #69261] fix incorrect image size and color calculations for rotate()
Tony Cook [Fri, 20 Jan 2012 11:16:47 +0000 (22:16 +1100)]
[rt #69261] fix incorrect image size and color calculations for rotate()

and matrix_transform().

For rotate() the calculation used integer abs() instead of fabs() when
calculating the size of the new image.

This made the image a little too small, hiding a bug at the corners
where a very low coverage pixel would reveal another bug where bad
rounding of the output level could result in all samples being maxed
out (8-bit images only.)

9 years agorotate.c -> rotate.im transition
Tony Cook [Thu, 5 Jan 2012 23:39:39 +0000 (10:39 +1100)]
rotate.c -> rotate.im transition

convert to use the preprocessor to reduce code duplication

9 years agoreformat the release date of 0.87
Tony Cook [Sun, 8 Jan 2012 01:57:16 +0000 (12:57 +1100)]
reformat the release date of 0.87