]> git.imager.perl.org - imager.git/log
imager.git
12 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

12 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

12 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

12 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

12 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.

12 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

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

12 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

12 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

12 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

12 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

12 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

12 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

12 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

12 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

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

12 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

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

12 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

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

12 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

12 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

12 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

12 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

12 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.

12 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

12 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

12 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

12 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.)

12 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

12 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

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

12 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

12 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.

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

12 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.

12 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.

12 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

12 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.

12 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

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

12 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()

12 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.

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

12 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

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

12 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

12 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

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

12 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().

12 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

12 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

12 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

12 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

12 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

12 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

12 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

12 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()

12 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

12 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

12 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

12 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.

12 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

12 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

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

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

12 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

12 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

12 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.)

12 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

12 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

12 years agolibungif support was removed in 0.77_01, note that
Tony Cook [Thu, 5 Jan 2012 23:53:17 +0000 (10:53 +1100)]
libungif support was removed in 0.77_01, note that

12 years agodescribe the OS X README update
Tony Cook [Thu, 5 Jan 2012 23:51:35 +0000 (10:51 +1100)]
describe the OS X README update

12 years ago[rt #73371] describe how to build libgif etc on OS X
Tony Cook [Thu, 5 Jan 2012 23:49:02 +0000 (10:49 +1100)]
[rt #73371] describe how to build libgif etc on OS X

12 years agoUpdate copyright year.
Tony Cook [Thu, 5 Jan 2012 23:48:15 +0000 (10:48 +1100)]
Update copyright year.

12 years ago0.87 release v0.87
Tony Cook [Tue, 3 Jan 2012 05:16:16 +0000 (16:16 +1100)]
0.87 release

12 years agonote the i_render_color() change
Tony Cook [Tue, 3 Jan 2012 05:06:34 +0000 (16:06 +1100)]
note the i_render_color() change

12 years ago[rt #71564] fix i_render_color() to work in normal mode
Tony Cook [Sat, 10 Dec 2011 03:05:21 +0000 (14:05 +1100)]
[rt #71564] fix i_render_color() to work in normal mode

Previously it ignored the color alpha channel when drawing on a 1 or 3
channel image.

12 years agodon't pass a ssize_t to a %d format string
Tony Cook [Tue, 3 Jan 2012 04:54:33 +0000 (15:54 +1100)]
don't pass a ssize_t to a %d format string

12 years ago[rt #72643] font drivers require Imager 0.86 for the alpha fix
Tony Cook [Fri, 25 Nov 2011 10:48:46 +0000 (21:48 +1100)]
[rt #72643] font drivers require Imager 0.86 for the alpha fix

12 years agoupdate "Converting from one file format to another" for i_background
Tony Cook [Mon, 21 Nov 2011 11:56:01 +0000 (22:56 +1100)]
update "Converting from one file format to another" for i_background

12 years ago[rt #67911] add gray, gray4, gray16 preset color palettes
Tony Cook [Mon, 21 Nov 2011 11:43:54 +0000 (22:43 +1100)]
[rt #67911] add gray, gray4, gray16 preset color palettes

12 years agodiag methods missing from the method index or are undocumented
Tony Cook [Mon, 21 Nov 2011 11:43:06 +0000 (22:43 +1100)]
diag methods missing from the method index or are undocumented

12 years ago[rt #72475] make the error messages from read() match reality
Tony Cook [Sat, 19 Nov 2011 02:58:40 +0000 (13:58 +1100)]
[rt #72475] make the error messages from read() match reality

and some other related changes

12 years agonote the purpose of a complex test
Tony Cook [Sat, 19 Nov 2011 02:53:54 +0000 (13:53 +1100)]
note the purpose of a complex test

since I couldn't see the purpose at just a glance

12 years agoadjust the ICO over-size write failure tests for the new limits
Tony Cook [Sat, 12 Nov 2011 11:39:53 +0000 (22:39 +1100)]
adjust the ICO over-size write failure tests for the new limits

12 years ago[rt #69599] correctly handle 256 x 256 ICO files
Tony Cook [Sat, 12 Nov 2011 05:43:18 +0000 (16:43 +1100)]
[rt #69599] correctly handle 256 x 256 ICO files

12 years agodon't include MYMETA.yml in MANIFEST
Tony Cook [Sat, 12 Nov 2011 05:38:08 +0000 (16:38 +1100)]
don't include MYMETA.yml in MANIFEST

12 years ago[rt #68815] document i_psamp_bits() and i_gsamp_bits()
Tony Cook [Sat, 12 Nov 2011 03:42:32 +0000 (14:42 +1100)]
[rt #68815] document i_psamp_bits() and i_gsamp_bits()

12 years ago[rt #72369] Document the return value of the filter() method
Tony Cook [Sat, 12 Nov 2011 02:37:04 +0000 (13:37 +1100)]
[rt #72369] Document the return value of the filter() method

12 years agoinclude the unknown words on STDERR for spelling failures
Tony Cook [Sat, 12 Nov 2011 02:30:02 +0000 (13:30 +1100)]
include the unknown words on STDERR for spelling failures

This avoids a step in tracking down such failures.

12 years agonote the addition of the tests
Tony Cook [Wed, 2 Nov 2011 11:59:59 +0000 (22:59 +1100)]
note the addition of the tests

12 years agoactually include the Imager::Test tests in the dist
Tony Cook [Wed, 2 Nov 2011 11:57:31 +0000 (22:57 +1100)]
actually include the Imager::Test tests in the dist

12 years agoproperly increment $VERSION for Imager::Matrix2d
Tony Cook [Mon, 31 Oct 2011 11:04:03 +0000 (22:04 +1100)]
properly increment $VERSION for Imager::Matrix2d

12 years ago0.86 release v0.86
Tony Cook [Mon, 31 Oct 2011 10:18:46 +0000 (21:18 +1100)]
0.86 release

12 years agoimprove failure reporting for W32 tests
Tony Cook [Thu, 27 Oct 2011 09:15:00 +0000 (20:15 +1100)]
improve failure reporting for W32 tests

12 years ago0.85_02 release v0.85_02
Tony Cook [Mon, 24 Oct 2011 10:05:52 +0000 (21:05 +1100)]
0.85_02 release

12 years agonote the previous change
Tony Cook [Mon, 24 Oct 2011 10:01:48 +0000 (21:01 +1100)]
note the previous change

12 years ago[rt #71643] search a few more places for libraries
Tony Cook [Mon, 24 Oct 2011 09:45:06 +0000 (20:45 +1100)]
[rt #71643] search a few more places for libraries

A raw link find them, but in some cases EU::MM doesn't, so it strips
the libraries causing link failures.

Hopefully this will fix #71643.

12 years agounbreak library probes on non-Win32
Tony Cook [Sun, 23 Oct 2011 00:53:11 +0000 (11:53 +1100)]
unbreak library probes on non-Win32