GD.pm (PDL-2.081) | : | GD.pm (PDL-2.082) | ||
---|---|---|---|---|
skipping to change at line 68 | skipping to change at line 68 | |||
The general version just provides several image IO utility functions you can use with | The general version just provides several image IO utility functions you can use with | |||
ndarray variables. It's deceptively useful, however. | ndarray variables. It's deceptively useful, however. | |||
=cut | =cut | |||
#line 70 "GD.pm" | #line 70 "GD.pm" | |||
=head1 FUNCTIONS | =head1 FUNCTIONS | |||
=cut | =cut | |||
#line 949 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 958 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
=head2 write_png | =head2 write_png | |||
=for sig | =for sig | |||
Signature: (byte img(x,y); byte lut(i,j); char* filename) | Signature: (byte img(x,y); byte lut(i,j); char* filename) | |||
Writes a 2-d PDL variable out to a PNG file, using the supplied color look-up-ta ble ndarray | Writes a 2-d PDL variable out to a PNG file, using the supplied color look-up-ta ble ndarray | |||
(hereafter referred to as a LUT). | (hereafter referred to as a LUT). | |||
The LUT contains a line for each value 0-255 with a corresponding R, G, and B va lue. | The LUT contains a line for each value 0-255 with a corresponding R, G, and B va lue. | |||
=for bad | =for bad | |||
write_png does not process bad values. | write_png does not process bad values. | |||
It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | |||
=cut | =cut | |||
#line 107 "GD.pm" | #line 107 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*write_png = \&PDL::write_png; | *write_png = \&PDL::write_png; | |||
#line 114 "GD.pm" | #line 114 "GD.pm" | |||
#line 949 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 958 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
=head2 write_png_ex | =head2 write_png_ex | |||
=for sig | =for sig | |||
Signature: (img(x,y); lut(i,j); char* filename; int level) | Signature: (img(x,y); lut(i,j); char* filename; int level) | |||
Same as write_png(), except you can specify the compression level (0-9) as the l ast argument. | Same as write_png(), except you can specify the compression level (0-9) as the l ast argument. | |||
=for bad | =for bad | |||
write_png_ex does not process bad values. | write_png_ex does not process bad values. | |||
It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | |||
=cut | =cut | |||
#line 138 "GD.pm" | #line 138 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*write_png_ex = \&PDL::write_png_ex; | *write_png_ex = \&PDL::write_png_ex; | |||
#line 145 "GD.pm" | #line 145 "GD.pm" | |||
#line 949 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 958 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
=head2 write_true_png | =head2 write_true_png | |||
=for sig | =for sig | |||
Signature: (img(x,y,z); char* filename) | Signature: (img(x,y,z); char* filename) | |||
Writes an (x, y, z(3)) PDL variable out to a PNG file, using a true color format . | Writes an (x, y, z(3)) PDL variable out to a PNG file, using a true color format . | |||
This means a larger file on disk, but can contain more than 256 colors. | This means a larger file on disk, but can contain more than 256 colors. | |||
=for bad | =for bad | |||
write_true_png does not process bad values. | write_true_png does not process bad values. | |||
It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | |||
=cut | =cut | |||
#line 171 "GD.pm" | #line 171 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*write_true_png = \&PDL::write_true_png; | *write_true_png = \&PDL::write_true_png; | |||
#line 178 "GD.pm" | #line 178 "GD.pm" | |||
#line 949 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 958 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
=head2 write_true_png_ex | =head2 write_true_png_ex | |||
=for sig | =for sig | |||
Signature: (img(x,y,z); char* filename; int level) | Signature: (img(x,y,z); char* filename; int level) | |||
Same as write_true_png(), except you can specify the compression level (0-9) as the last argument. | Same as write_true_png(), except you can specify the compression level (0-9) as the last argument. | |||
=for bad | =for bad | |||
write_true_png_ex does not process bad values. | write_true_png_ex does not process bad values. | |||
It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | |||
=cut | =cut | |||
#line 202 "GD.pm" | #line 202 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*write_true_png_ex = \&PDL::write_true_png_ex; | *write_true_png_ex = \&PDL::write_true_png_ex; | |||
#line 209 "GD.pm" | #line 209 "GD.pm" | |||
#line 315 "GD.pd" | #line 315 "GD.pd" | |||
=head2 write_png_best | =head2 write_png_best | |||
Like write_png(), but it assumes the best PNG compression (9). | Like write_png(), but it assumes the best PNG compression (9). | |||
skipping to change at line 260 | skipping to change at line 260 | |||
my $x = _get_png_xs($filename); | my $x = _get_png_xs($filename); | |||
my $y = _get_png_ys($filename); | my $y = _get_png_ys($filename); | |||
#print "\$x=$x\t\$y=$y\n"; | #print "\$x=$x\t\$y=$y\n"; | |||
my $temp = zeroes(long, $x, $y, 3); | my $temp = zeroes(long, $x, $y, 3); | |||
_read_true_png($temp, $filename); | _read_true_png($temp, $filename); | |||
return byte($temp); | return byte($temp); | |||
} # End of read_png()... | } # End of read_png()... | |||
#line 318 "GD.pm" | #line 318 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*_read_true_png = \&PDL::_read_true_png; | *_read_true_png = \&PDL::_read_true_png; | |||
#line 325 "GD.pm" | #line 325 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*_read_png = \&PDL::_read_png; | *_read_png = \&PDL::_read_png; | |||
#line 332 "GD.pm" | #line 332 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*_gd_image_to_pdl_true = \&PDL::_gd_image_to_pdl_true; | *_gd_image_to_pdl_true = \&PDL::_gd_image_to_pdl_true; | |||
#line 339 "GD.pm" | #line 339 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*_gd_image_to_pdl = \&PDL::_gd_image_to_pdl; | *_gd_image_to_pdl = \&PDL::_gd_image_to_pdl; | |||
#line 346 "GD.pm" | #line 346 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*_pdl_to_gd_image_true = \&PDL::_pdl_to_gd_image_true; | *_pdl_to_gd_image_true = \&PDL::_pdl_to_gd_image_true; | |||
#line 353 "GD.pm" | #line 353 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*_pdl_to_gd_image_lut = \&PDL::_pdl_to_gd_image_lut; | *_pdl_to_gd_image_lut = \&PDL::_pdl_to_gd_image_lut; | |||
#line 360 "GD.pm" | #line 360 "GD.pm" | |||
#line 717 "GD.pd" | #line 717 "GD.pd" | |||
=head2 read_png_lut( $filename ) | =head2 read_png_lut( $filename ) | |||
Reads a color LUT from an already-existing palette PNG file. | Reads a color LUT from an already-existing palette PNG file. | |||
skipping to change at line 307 | skipping to change at line 307 | |||
sub read_png_lut | sub read_png_lut | |||
{ | { | |||
my $filename = shift; | my $filename = shift; | |||
my $lut = zeroes(byte, 3, 256); | my $lut = zeroes(byte, 3, 256); | |||
_read_png_lut($lut, $filename); | _read_png_lut($lut, $filename); | |||
return $lut; | return $lut; | |||
} # End of read_png_lut()... | } # End of read_png_lut()... | |||
#line 381 "GD.pm" | #line 381 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*_read_png_lut = \&PDL::_read_png_lut; | *_read_png_lut = \&PDL::_read_png_lut; | |||
#line 388 "GD.pm" | #line 388 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*_gdImageColorAllocates = \&PDL::_gdImageColorAllocates; | *_gdImageColorAllocates = \&PDL::_gdImageColorAllocates; | |||
#line 395 "GD.pm" | #line 395 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*_gdImageColorAllocateAlphas = \&PDL::_gdImageColorAllocateAlphas; | *_gdImageColorAllocateAlphas = \&PDL::_gdImageColorAllocateAlphas; | |||
#line 402 "GD.pm" | #line 402 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*_gdImageSetPixels = \&PDL::_gdImageSetPixels; | *_gdImageSetPixels = \&PDL::_gdImageSetPixels; | |||
#line 409 "GD.pm" | #line 409 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*_gdImageLines = \&PDL::_gdImageLines; | *_gdImageLines = \&PDL::_gdImageLines; | |||
#line 416 "GD.pm" | #line 416 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*_gdImageDashedLines = \&PDL::_gdImageDashedLines; | *_gdImageDashedLines = \&PDL::_gdImageDashedLines; | |||
#line 423 "GD.pm" | #line 423 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*_gdImageRectangles = \&PDL::_gdImageRectangles; | *_gdImageRectangles = \&PDL::_gdImageRectangles; | |||
#line 430 "GD.pm" | #line 430 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*_gdImageFilledRectangles = \&PDL::_gdImageFilledRectangles; | *_gdImageFilledRectangles = \&PDL::_gdImageFilledRectangles; | |||
#line 437 "GD.pm" | #line 437 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*_gdImageFilledArcs = \&PDL::_gdImageFilledArcs; | *_gdImageFilledArcs = \&PDL::_gdImageFilledArcs; | |||
#line 444 "GD.pm" | #line 444 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*_gdImageArcs = \&PDL::_gdImageArcs; | *_gdImageArcs = \&PDL::_gdImageArcs; | |||
#line 451 "GD.pm" | #line 451 "GD.pm" | |||
#line 951 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | #line 960 "/home/osboxes/pdl-code/blib/lib/PDL/PP.pm" | |||
*_gdImageFilledEllipses = \&PDL::_gdImageFilledEllipses; | *_gdImageFilledEllipses = \&PDL::_gdImageFilledEllipses; | |||
#line 458 "GD.pm" | #line 458 "GD.pm" | |||
#line 804 "GD.pd" | #line 804 "GD.pd" | |||
=head1 OO INTERFACE | =head1 OO INTERFACE | |||
Object Oriented interface to the GD image library. | Object Oriented interface to the GD image library. | |||
End of changes. 25 change blocks. | ||||
25 lines changed or deleted | 25 lines changed or added |