1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
|
=head1 NAME
Imager::LargeSamples - track/document large sample support
=head1 SYNOPSIS
# make a large sample image
my $im = Imager->new(..., bits => 16);
# call some method
my $result = $im->$method(...);
# was the image modified at its full sample size
=head1 DESCRIPTION
Imager has had in-memory support for large samples for years now, but
many methods still don't work at the higher sample size when supplied
with a large sample image.
This document will track which methods support large samples and which
don't, for future improvements.
=head1 Support by method
Method Support Notes
------ ------- -----
arc Partial [1]
box Partial [1]
circle Partial [1]
convert Full
copy Full
crop Full
difference Full
filter Partial Depends on the filter.
flip Full
flood_fill Partial [1]
getpixel Full
getsamples Full
getscanline Full
map None
masked Full
matrix_transform
Full
paste Full
polygon Partial [1]
polyline None
read Partial See L<File format large sample support>
read_multi Partial See L<File format large sample support>
rotate Full
rubthrough Full
scale Partial Some qtypes support large samples
scaleX None
scaleY None
setpixel Full
setscanline Full
string Full Preserves large samples, but most font drivers
generate 8 or fewer bits of levels of coverage.
transform None
transform2 None
write Partial See L<File format large sample support>
write_multi Partial See L<File format large sample support>
[1] filling an area using the fill parameter works at the full depth
of the image, using filled => 1 and color works at 8-bits/sample
=head1 File format large sample support
Format Format samples Imager support
------ -------------- --------------
BMP 8 8
GIF 8 8
ICO 8 8
JPEG 8, 12 8
PBM 1 1
PGM/PPM 1-16 read any, writes 8, 16
PNG 1, 2, 4, 8, 16 8
RAW 8
SGI 8, 16 8, 16
TGA 8 8
TIFF (many) read/write 8, 16, 32 contig rgb/grey images
read/write bi-level
read/write 4/8 paletted images
=head1 Filter larger sample support
Filter Large sample support
------ --------------------
autolevels No
bumpmap No
bumpmap_complex No
contrast No
conv Yes
fountain Yes
gaussian Yes
gradgen No
hardinvert Yes
mosaic No
postlevels No
radnoise No
turbnoise No
unsharpmask Yes
watermark No
=head1 AUTHOR
Tony Cook <tony@imager.perl.org>
=cut
|