Commit | Line | Data |
---|---|---|
02d1d628 AMH |
1 | Revision history for Perl extension Imager. |
2 | ||
3 | 0.01 Thu May 6 15:25:03 1999 | |
fd9f67c1 | 4 | - original version; created by h2xs 1.18 |
02d1d628 AMH |
5 | |
6 | 0.02 Mon May 10 20:20:20 1999 | |
7 | - Added PPM writer, and a new return type to | |
fd9f67c1 TC |
8 | be used to return undef() from a function returning |
9 | (int)0. | |
02d1d628 AMH |
10 | |
11 | 0.03 Thu May 20 23:23:23 1999 | |
12 | - Added Pseudo image handling thingies, now | |
fd9f67c1 | 13 | you can use your own get and put pixel routines. |
02d1d628 AMH |
14 | |
15 | 0.04 Mon May 24 22:14:55 1999 | |
16 | - Rewrote parts of jpeg support. | |
17 | ||
18 | 0.05 Tue May 25 23:40:01 1999 | |
fd9f67c1 TC |
19 | - Added png support with libpng |
20 | fixed error reporting and return types from | |
21 | some format routines. | |
02d1d628 AMH |
22 | |
23 | 0.06 Wed May 26 19:05:39 1999 | |
24 | - Fixed Data::Dumper being used when it shouldn't have | |
fd9f67c1 TC |
25 | added feature checking to see at run time if |
26 | certain formats are avaliable. | |
27 | removed some ancient C++ style comments that hadn't | |
28 | been properly removed, some out of bounds errors in ppm.c | |
29 | fixed tests so missing features are skipped. | |
02d1d628 AMH |
30 | |
31 | 0.07 Thu May 27 03:15:00 1999 | |
32 | - Fixed the typemap for i_img and i_color so that you can pass | |
fd9f67c1 TC |
33 | a null pointer to them without getting a warning when warnings |
34 | are enabled. Maybe this is counter perl but it greatly increases | |
35 | the usability of the functions. | |
02d1d628 AMH |
36 | |
37 | 0.08 Fri May 28 14:13:21 1999 | |
38 | - Added support for gif via, giflib or libungif. | |
fd9f67c1 TC |
39 | gif is so ridden with patent issues but the user |
40 | can decide which library to use since they have the same | |
41 | include files and calling interface. | |
02d1d628 AMH |
42 | |
43 | 0.09 Mon May 31 17:52:32 1999 | |
44 | - Added image scaling per axis - faster than doing both | |
fd9f67c1 TC |
45 | axes at the same time. The current method uses lancoz |
46 | kernel and filtering. But more types should be added - | |
47 | including: nearest neighbor, linear, and bicubic. | |
02d1d628 AMH |
48 | |
49 | 0.10 Mon Jun 7 03:25:54 1999 | |
50 | - Added T1 postscript font handling. It's very primitive | |
fd9f67c1 TC |
51 | at the moment but creative people can do nice stuff |
52 | with it. Currently it is not possible to have it | |
53 | generate an image of the correct size for a given string | |
54 | but that is on the way. | |
02d1d628 AMH |
55 | |
56 | 0.11 Mon Jun 7 14:43:35 1999 | |
57 | - Added T1 features for direct to image rendering in | |
fd9f67c1 TC |
58 | a single color. fixed some debug messages going to |
59 | stderr instead of a log file. | |
02d1d628 AMH |
60 | |
61 | 0.12 Tue Jun 8 02:58:43 1999 | |
62 | - Fixed bugs in jpeg.c when loading images. Also specified | |
fd9f67c1 TC |
63 | prototype behaviour to on in the Imager.xs file. The |
64 | Makefile.PL step doesn't complain anymore so that is | |
65 | hopefully fixed. | |
02d1d628 AMH |
66 | |
67 | 0.13 Wed Jun 9 06:55:58 1999 | |
68 | - Fixed Imager.xs for init_log call. Minor fixes here | |
fd9f67c1 | 69 | and there. |
02d1d628 AMH |
70 | |
71 | 0.14 Thu Jun 10 14:11:22 1999 | |
72 | - Rewrote most of the logging stuff so that it is now | |
fd9f67c1 TC |
73 | possible to remove all logging from the XS part of the |
74 | module. Also some primitive check of memory usage was | |
75 | added. Claes Jacobsson sent in some filters, inverter, | |
76 | contrast and a noise filter. | |
02d1d628 AMH |
77 | |
78 | 0.15 Mon Jun 14 08:13:29 1999 | |
fd9f67c1 TC |
79 | - Wrote minor enhancement on the calling syntax list. |
80 | Started on the object interface - added better support | |
81 | for quering avaliable filetypes. Fixed memory leaks in | |
82 | most loaders. New filters from Claes in this version | |
83 | are bumpmap, postlevels and mosaic. | |
84 | ||
85 | 0.16 Wed Jun 16 20:54:33 1999 | |
86 | - Added fixes to the BEGIN and END parts, added writer | |
87 | function for the OO interface. Also added basic IPTC | |
88 | reading support for jpegs. Also a few filters have been | |
89 | added to the OO interface. | |
90 | ||
91 | 0.17 Thu Jun 24 11:09:15 1999 | |
92 | - Added dynamic loading stuff - It's still missing a nice | |
93 | global symbol table. This will be fixed in next release. | |
94 | also calling the plugins is not all to easy at the moment. | |
95 | ||
96 | ||
97 | 0.18 Mon Jun 28 12:31:33 1999 | |
98 | - Added global symbol table - plugins now need a symbol | |
99 | table pointer in them. When the module is loaded it is | |
100 | set to point at the global symbol table. Also some barebones | |
101 | Makefile.PL has been made in the dynfilt directory - it works | |
102 | on my system - I hope it does on yours. | |
103 | ||
104 | ||
105 | 0.19 Fri Jul 1 15:00:03 1999 | |
106 | - Added a way new scaling method for creating easy previews. | |
107 | It only uses nearest neighbor, so it's doesn't look very nice | |
108 | but it may be better for applications like remote sensing. | |
109 | ||
110 | 0.20 Mon Jul 5 10:15:37 1999 | |
111 | - Added and rewrote documentation. | |
112 | ||
113 | 0.21 Mon Jul 6 19:15:37 1999 | |
114 | - Fixed a bug in the scaling routine - it wasn't | |
115 | handling 0< cases. | |
116 | ||
117 | 0.22 Sat Oct 9 07:04:14 1999 | |
118 | - Added a new method to write gif images - now | |
119 | it is possible to have a part of a palette fixed. | |
120 | this is very usefull if one needs to make sure that | |
121 | some color like white is in the pallete. This method | |
122 | also allows some ditherding and gives better colormap | |
123 | than the mediancut from the gif libraries. It does | |
124 | need much more cpu power though. Hopefully later versions | |
125 | will be faster. | |
126 | ||
127 | 0.23 **************** Internal release only | |
128 | - Fixed the %instances bug - caused ALL memory to be leaked. | |
129 | Added real noise function - need feedback on how it should | |
130 | be used. Also box(), and polyline are now in place. Polygon | |
131 | is missing but antialiased line drawing with integer endpoints are | |
02d1d628 | 132 | done but should be replaced with a version that can have |
fd9f67c1 | 133 | floating point endvalues. Two noise filters addded. |
02d1d628 | 134 | |
fd9f67c1 TC |
135 | 0.24 **************** Internal release only |
136 | - Converted i_color into an object from a reference, so now it's | |
137 | giving an object instead of a void ptr or an integer or something. | |
02d1d628 | 138 | |
fd9f67c1 TC |
139 | 0.25 **************** Internal release only |
140 | - Added basic Truetype functionality - still needs a rewrite | |
141 | to be decent. Currently it's a port of a demo program that | |
142 | uses an awful amount of global variables and there is much IO since | |
143 | no caching of glyphs is done. | |
02d1d628 AMH |
144 | |
145 | 0.26 Tue Nov 23 03:57:00 1999 > Development release < | |
fd9f67c1 TC |
146 | - Added transformations so that an image can be wrapped. |
147 | To achive decent speed a C based stackmachine is included. As a result | |
148 | transformations need to be specified in rpn (postfix) notation. It | |
149 | also can use the Affix::Infix2Postfix class to do the conversion for it. | |
02d1d628 AMH |
150 | |
151 | 0.27 Tue Dec 28 03:57:00 1999 > CPAN release < | |
fd9f67c1 TC |
152 | - This is a bugfix version mostly, thanks to claes for pointing |
153 | out the problems - fixed palette saving wasn't working correctly after | |
154 | version 0.24 - rather surprised this didn't crash everything. | |
155 | Also fixed that for t1 fonts the bounding box wasn't being reported | |
156 | unless the font had been used before. This is either a bug in t1lib | |
157 | or a mistake in it's documentation. Another lingering bug since 0.24 | |
158 | what that $img->box() wasn't creating it's default color properly. | |
159 | Added i_tt_text() method and more debuging to the truetype routines. | |
160 | truetype testcase fixed and old debug rubish removed. | |
02d1d628 AMH |
161 | |
162 | 0.28 Tue Jan 4 05:25:58 2000 > CPAN release < | |
fd9f67c1 TC |
163 | - Only fixes to truetype test and transformation tests. |
164 | Thanks to schinder of cpan testers for testing and reporting. | |
02d1d628 AMH |
165 | |
166 | 0.29 Tue Jan 4 21:49:57 2000 > CPAN release < | |
fd9f67c1 TC |
167 | - fixes to get rid of warnings under pre 5.005, |
168 | Fixed broken preproccessor directives to work on non gnu | |
169 | compilers. Fixed DSO test on HPUX - both code errors and | |
170 | HPUX creates .sl instead of .so so the tests were failing. | |
02d1d628 AMH |
171 | |
172 | 0.30 Sun Jan 7 05:00:06 2000 > Bunch of Alpha releases < | |
fd9f67c1 | 173 | - An attempt to automate installation. |
02d1d628 AMH |
174 | |
175 | 0.31 Sat Jan 15 03:58:29 2000 > Fixes fixes fixes < | |
fd9f67c1 TC |
176 | - Fixed a bug pointed out by Leolo where loading gifs |
177 | skips the first line of the imageload() has been | |
178 | by read() - for now load is an alias for read. It will | |
179 | be removed in the future. Also, fixes dynamic loading on | |
180 | systems that prepend an underscore to symbols. At the present | |
181 | the only system that I know of that needs this is OpenBSD. | |
182 | BUT YOU MUST RECOMPILE ALL OF YOUR OLD MODULES AGAINST THIS BUILD. | |
183 | Added getchannels() method ( How did I manage to delay this | |
184 | untill now ). Some document changes but nothing substantial. | |
185 | Also fixed the png read/write routines to handle all colorspaces | |
186 | and images with alpha information. Also now it's possible to | |
187 | have Imager guess the format of the files to load or save | |
188 | when passing files to read or save from the filename. | |
189 | Also all of the tests except dynamic loading now pass on OS/2. | |
02d1d628 AMH |
190 | |
191 | 0.32 Tue Feb 29 17:26:00 2000 CPAN RELEASE | |
192 | - Added the getcolorcount method. Fixed interlace handling | |
fd9f67c1 TC |
193 | on png images. Fixed the missing channel count in crop() |
194 | method. Rewrote most of t1lib database stuff - created color | |
195 | and font classes. T1 stuff is mostly done - TT things were | |
196 | rewritten too and now include most of what is needed for | |
197 | pixmap caching. Added documentation for fonts. Comments have | |
198 | been added to some of the relevant c-routines. Added a copy() | |
199 | function in Imager.xs and a corresponding method name. | |
200 | Changed the underlying data type for the raw XS images from | |
201 | pointers to objects - this will hopefully catch the most | |
202 | basic errors and keep the segfaulting down. This means that | |
203 | all of the underlying XS calls for readjpeg, readgif, readpng | |
204 | and readraw do not take the first parameter any more. | |
205 | Made fixes to keep it not spewing warning on 5.004 perl. | |
206 | ||
207 | **** If you had any code that didn't use the OO interface **** | |
208 | **** It will probably not work any longer **** | |
209 | ||
210 | 0.33 Beta -- No final | |
211 | - Fixed the end message from Imager 0.32. Destroy called | |
212 | on an empty image. Did some work on the polygon method. | |
213 | Some clean up in the Makefile.PL script. Fixed a buffer | |
214 | overrun in the t_transform in Imager.XS. Fixed the | |
215 | error handling in the jpeg loader. It now correctly | |
216 | returns undef if a load on an image fails. It also | |
217 | sends the error messages to the log file. Added errstr() | |
218 | method to the image object. Added a new way to read() | |
219 | objects from scalars. So far this is only implemented for | |
220 | jpeg, png and gif. ppm and raw soon - as always if someone | |
221 | wants to do an overhaul on the ppm stuff feel free. It seems | |
222 | like such a basic format that interfacing with a library is more | |
223 | work than implementing all of the needed routines instead. | |
02d1d628 AMH |
224 | |
225 | 0.34 Beta -- No final | |
fd9f67c1 TC |
226 | - Bunch of documentation fixes, backed out ppm code. |
227 | Put in TonyC's giant transform2 patch. Fixed the patch | |
228 | to make it ansi compliant. Fixed a bunch of bugs in the | |
229 | Freetype code with regard to vertical and horizontal | |
230 | positioning and bounding boxes. Cleaned up a lot of the | |
231 | code so it runs under -Wall. Code that is still in | |
232 | development such as the polygon converter do not compile | |
233 | cleanly. Fixed the non antialiased versions of truetype | |
234 | dump to image routines. Also removed the FIXME for the | |
235 | hardcoding of antialias in the Imager string method. | |
236 | Fixed sign error and a missing cache of the bounding box | |
237 | calculation for the rasterize function. Removed some | |
238 | debugging code I forgot to remove. Added iolayer.h | |
239 | and iolayer.c but they don't do anything for now. | |
240 | ||
241 | 0.35 pre2 -- No time yet | |
242 | - Fixed some compile warnings for various files under -Wall. | |
243 | Added functionality for jpeg reading of seekable files, it's not | |
244 | really working yet. This version is pretty much *not* working. | |
245 | Do not install unless you intend to do a lot of development. | |
246 | Repeat - it doesn't even pass tests (but it compiles). Ok now reading | |
247 | jpegs works from scalars, my guess is that it also works from non | |
248 | seeking sources such as sockets or pipes. | |
02d1d628 AMH |
249 | |
250 | 0.35 pre3 - No time yet | |
fd9f67c1 TC |
251 | - Added the *right* patch from Tony which combines |
252 | the common code from i_readgif and i_readgif_scalar into | |
253 | i_readgif_low. Added tiff reading support through iolayer. | |
02d1d628 AMH |
254 | |
255 | 0.35 pre4 - No time yet | |
fd9f67c1 TC |
256 | - Added tiff writing (no options) support through |
257 | iolayer. Also made some small fixes for the iolayer reading | |
258 | (was always doing two reads when one was needed). Patched the | |
259 | Imager::read() call so that it now uses a mixture of old and new | |
260 | functions. | |
02d1d628 AMH |
261 | |
262 | 0.35 pre5 - No time yet | |
fd9f67c1 TC |
263 | - Fixed various gnu'isms in the c code (some bugs in the link list |
264 | implmentation). Fixed missing #skip codes when gif format is not | |
265 | present in any form. Added fixes for 5.004_04 in the transform2 function. | |
266 | Made sure it compiles cleanly with sun's cc. Switched from a .jpeg | |
267 | for transform2 check to a .ppm file so it runs when jpeg is not | |
268 | present. Added a test for tiff files in t10formats.t. | |
02d1d628 AMH |
269 | |
270 | ||
271 | 0.35 pre6 - No time yet | |
fd9f67c1 TC |
272 | - Fixes to Makefile.PL. Should find freetype includes on more |
273 | distributions now. Ran tests on Solaris and Hpux, minor fixes. | |
274 | Compiles with some warnings on with both hpux and solaris' cc. | |
275 | Made some minor changes to the documentation. Fixes to tiff.c log | |
276 | code. | |
02d1d628 AMH |
277 | |
278 | 0.35 pre7 - No time yet | |
fd9f67c1 TC |
279 | - Fixes 64 bit bug on freebsd. While libtiff mirrors the effects of |
280 | lseek it's toff_t is a uint32, while lseek uses off_t which can be a 64 | |
281 | bit quantity. Added the IM_LFLAGS environment variable to help | |
282 | people with broken libgifs (that want to link with X). | |
02d1d628 AMH |
283 | |
284 | 0.35 Sun Jan 28 19:42:59 EST 2001 | |
fd9f67c1 TC |
285 | - More makefile fixes, fixed a few signedness warnings. |
286 | Checked to see if it compiled cleanly on Solaris and HPUX. | |
287 | Fixed a 5.004_04 warning and added more ENV flags for makefile. | |
288 | ||
289 | 0.36 Mon Jan 29 09:36:11 EST 2001 | |
290 | - String as 0 or "" caused an error in $img->string(). Fixed a | |
291 | documentation error invoving string() method syntax. Merged a patch | |
292 | for non antialised truetype fonts. Fixed an error in the Makefile.PL | |
293 | which caused a makefile to be generated that bombed with sgi's make. | |
294 | ||
295 | 0.37 Mon Tue 30 09:36:11 EST 2001 | |
296 | - Several documentation fixes. Pod documentation for almost every | |
297 | function in image.c. Added sys/types.h include in iolayer which was | |
298 | causing problems on various linux systems. | |
299 | ||
300 | 0.38 pre1 - No time yet | |
301 | - Fixed a braindamaged fix on the Makefile.PL file. Moved the | |
302 | code for Imager::Color into lib/Imager/Color.pm. Wrote some pod | |
303 | about how it works. Made the names of Imager::Color XS routines | |
304 | all begin with ICL_ and used the prefix rules of XS to get nice names | |
305 | in perl. Found a bug (not fixed) in how XS handles | |
306 | returning an object to an object it had as a parameter (double | |
307 | free). | |
308 | ||
309 | 0.38 pre2 - No time yet | |
310 | - Fixes lots of for documentation, patch for freetype bounding | |
311 | box handling. Split put code for Imager::Font into Font.pm and added | |
312 | more documentation for Font.pm. Added string local ascender and | |
313 | descender for tt fonts. Note that this needs to be added to t1 fonts | |
314 | before 0.38 final. | |
315 | ||
316 | 0.38 pre3 - No time yet | |
317 | - Fixed an in consistency in the bounding box functions for t1 | |
318 | fonts. Now both versions get the 6 argument bounding_box method | |
319 | described in Imager::Font. Started converting the comments in | |
320 | font.c so that they are viewable by doco.perl. Added two examples | |
321 | of filters. Need to make them more usefull and then add more | |
322 | notes than are in compile.txt. | |
323 | ||
324 | ||
325 | 0.38 pre4 - No time yet | |
326 | - Completed adding pod comments to font.c, tiff.c and iolayer.c. | |
327 | Those along with image.c should now have every single function | |
328 | described in pod format. | |
329 | ||
330 | 0.38 pre5 - No time yet | |
331 | - Replaced ppm.c with pnm.c which adds support for pbm/pgm/ppm | |
332 | files ascii and binary formats. Added patches for the gif routines. | |
333 | Patched some of the color quantizing routines (Leolo and TonyC). | |
334 | There is one bomb and one warning in this test, and frankly I don't | |
335 | see why they are suddenly there. | |
336 | ||
337 | 0.38 pre6 - No time yet | |
338 | - Patch from Tony that fixes infix when Parse::RecDescent is present. | |
339 | Checked some cases where malloc/free were used instead of mymalloc/myfree. | |
340 | Added bufchain iolayer code. You can now write to a chain of buffers and | |
341 | later slurp it all into a single perl scalar. Found some oddity of t/t10 | |
342 | test not giving the right return value when malloc debugging was enabled. | |
343 | Fixed some of the logging code and the malloc debugging options. Added | |
344 | more tests for tiffs. | |
345 | ||
346 | 0.38 pre7 - No time yet | |
347 | - Added i_gradgen code and put it into the filters hash. Think a | |
348 | seperate pod for filters would be a good idea. Also removed some of the | |
349 | debugging code from the iolayer. Added pod comments to filters.c and | |
350 | looked over the code. | |
351 | ||
352 | 0.38 pre8 - No time yet | |
353 | - limited Win32 support, Imager installs and builds using VC++, | |
354 | but there's no image/font format support yet. | |
02d1d628 AMH |
355 | |
356 | 0.38 pre9 - No time yet | |
fd9f67c1 TC |
357 | - Added lots of color quantization code from Tony with benchmarks. |
358 | Also fixes ugly stack overrun in old version. Added fixes for the lmfixed | |
359 | problem. Four of them, let's see which is fastest. This version adds | |
360 | some voronoi partitioning - it's dog slow but it's a reference implementation | |
361 | to check if faster algorithms are doing the right thing [tm]. Added a check | |
362 | for giflib 3. | |
363 | - Win32 support for libpng | |
364 | - fixed set_internal creating 2 refs to one object | |
365 | - Win32 support for jpeg | |
366 | - Win32 support for tiff | |
367 | - base level error reporting code added, I still need to modify | |
6829f5f6 | 368 | older code to use it |
930c963d | 369 | - fix translate=>'giflib' handling of single-colour images. |
fd9f67c1 TC |
370 | Previously a single colour image would cause an error in |
371 | MakeMapObject(). | |
930c963d | 372 | - fix t/t10formats.t tests against giflib3 |
0e03521f TC |
373 | - added test for transparent gifs |
374 | - minor doc fixes for transparent gifs | |
375 | - make it less error-prone to write transparent gifs | |
fd9f67c1 | 376 | - documented the options for reading raw images |
6829f5f6 AMH |
377 | - Changes switched to use spaces for formatting |
378 | - switch gif.c to new error reporting with related changes to | |
379 | Imager.xs, Imager.pm | |
fd9f67c1 TC |
380 | - each of the image formats now have their own test file, |
381 | extracted from t10formats.t, usually with som extra tests | |
df917a00 AMH |
382 | - Added flip() and docs to Imager.pm and i_flipxy to image.c. |
383 | Added testcases too. | |
6829f5f6 AMH |
384 | - Fixed an overflow bug in png.c |
385 | - added the colors parameter to Imager::read() which receives | |
386 | the arrayref of colours that i_readgif(_scalar) returns | |
387 | - fixed a problem in makemap_addi in quant.c where only the first | |
388 | image was compared against the palette when the palette was being | |
389 | refined. I screwed up on this originally (TC). This is the other | |
390 | half of a fix for Leolo's lmfixed problem <sigh>. | |
391 | - makemap_addi() now only puts colours into the palette that it | |
392 | found while optimizing the palette (so we don't get 256 colour | |
393 | palettes for 2 colour images :) | |
394 | - initial implementation of a row-based interface to low-level | |
395 | images (for performance) | |
396 | - changed Imager::read() for GIF so that the arrayref pointed to | |
397 | by the ref supplied in colors contains Imager::Color objects | |
398 | instead of more arrayrefs, keep this interface stable until we | |
399 | can make an informed choice about i_readgif() | |
400 | - incorporated Micksa's faxable tiff support, treating as a type | |
401 | of tiff rather than a separate format | |
402 | - t/t70newgif.t now checks for gif support | |
403 | - added the convert() method | |
404 | - Added support for transparent to alpha conversion during loading | |
ae448e5a | 405 | of png files. Note that libpng 1.0.1 is broken in handling this, |
7828ca98 AMH |
406 | we know that 1.0.5 works. |
407 | - support for writing PGM (portable gray map) files | |
408 | - Fix for i_gifread_low() for images with only a local and no global | |
409 | colormap and an abort if no colormap is present (which is legal | |
410 | in gif). | |
43a881d3 | 411 | - several fixes to i_readgif_low() |
299a3866 | 412 | - Fixed crop() method so that it is consistent with documentation. |
de2b8bae | 413 | - make clean now removes the testout directory |
4c2d6970 TC |
414 | - added tests for the OO interface for tiff, added an option to |
415 | choose the resolution for fax tiffs, removed some unused code, | |
416 | fixed minor problems with Imager::write() handling of image types | |
e3ddf807 TC |
417 | - changed README note on libgif bug to refer to t105gif.t instead |
418 | of t10formats.t | |
02d1d628 | 419 | |
96190b6e TC |
420 | 0.39 pre1 |
421 | - split Imager::Font into a base, *::Type1 and *::Truetype | |
faa9b3e7 TC |
422 | - writing faxable tiff now allows 2 and 4 channel images |
423 | - virtual image interface - 8-bit/sample images | |
424 | - paletted images | |
425 | - 16-bit/sample images | |
426 | - masked images | |
427 | - writing non-8bit images to raw | |
428 | - writing '' '' to tiff | |
429 | - i_convert support for high-bit images and paletted images | |
430 | - i_copy for high-bit and paletted images | |
431 | - tests for rubthru | |
432 | - rubthru can now rub a 2 channel image over a 1 or 3 channel | |
433 | image | |
434 | - rubthru for high-bit images | |
435 | - i_readgif_multi functions, which return all the frames from a | |
436 | GIF file, along with a bunch of meta-information as tag | |
437 | - OO interface to tags | |
438 | - OO interface read_multi() to read multi-image files (just GIF | |
439 | so far) | |
440 | - documentation for the multi-image GIF reading and tags | |
441 | - rotate() method with rotate by steps of 90 degrees (and docs) | |
442 | - fixed a bug in i_img_pal_new_low() | |
443 | - added gaussian to the filters list | |
444 | - documented the individual filters | |
445 | - fixed the right-hand side of bounding boxes for TT fonts | |
446 | where the last character overlaps the advance width (eg. | |
447 | italic fonts) | |
448 | - added rotation by exact amounts in degrees or radians, | |
449 | implemented using the matrix idea from Addi. The procedural | |
450 | matrix transformer is exposed, but still needs testing (as XS) | |
451 | and needs an OO interface, hopefully with some helper tools, | |
452 | like the preset interface with ->convert(). | |
453 | - MY::postamble() in Makefile.PL included a broken rule | |
454 | (Makefile.PL 1.13.2.5) | |
455 | - support for GDI fonts under Win32 | |
456 | - made that work for cygwin too (needs the w32api package) | |
457 | - freetype1 support under Win32 | |
458 | - t1lib support under Win32 | |
459 | - fixed a minor bug in font.c (invalid font files caused a SEGV) | |
460 | - checked cygwin for both t1lib and freetype1 | |
461 | - freetype 2 support | |
462 | - exposed the matrix_transform() function to the OO interface | |
463 | - added Imager::Matrix2d convenience class | |
464 | - support for setting the resolution when writing to PNG | |
465 | - retrieve physical resolution to tags when reading from PNG | |
466 | - found an XS bug in the interface to i_tags_add() | |
467 | - fixed handling of writing text to a channel with freetype2 | |
468 | (sometimes the edge of a character would damage the edge of the | |
469 | previous character) | |
470 | - some utf8 support for freetype2 | |
471 | - some vertical layout support for freetype2 | |
472 | - named parameters for specifying colors, with quite a few options. | |
c3cc977e | 473 | - glyph size issues for freetyp2 |
6064813e | 474 | - minor problem in handling of canon option |
261f91c5 | 475 | - low-level bmp writing (moving it to laptop) |
705fd961 | 476 | - Windows BMP reading and writing |
d08b8f85 TC |
477 | - added OO interfaces for the mosaic, bumpmap, postlevels and |
478 | watermark filters | |
479 | - added t/t61filters.t to test the filters | |
c3cc977e | 480 | - fixed some problems in jpeg handling from the exp_represent merge |
cf692b64 | 481 | - fixed buffer flushing for wiol jpeg code |
c3cc977e | 482 | - added some tests that will hopefully catch it in the future |
6607600c TC |
483 | - added the OO interfaces to the mosaic, bumpmap, postlevels and |
484 | watermark filters, and documented them | |
485 | - fixed a sample size conversion problem in i_gpixf_d() etc. | |
486 | - added simple color representation conversion functions (used | |
487 | in i_fountain().) | |
488 | - added the fountain filter: | |
489 | - creates gradients similar to paint software | |
490 | - 90% support for GIMP gradient files | |
491 | - OO interface and documentation | |
492 | - Imager::Fountain for building/loading fill definitions | |
493 | - named value translation for filters | |
f1ac5027 TC |
494 | - added a generic fill mechanism |
495 | - created versions of i_box() and i_arc() that can fill using | |
496 | generic fills | |
497 | - solid generic fills (with alpha blending if asked for) | |
498 | - hatched generic fills (with some options) | |
499 | - fountain generic fills | |
500 | - sample code to generate an examples page | |
7a606d29 | 501 | - improved the scale* hatches a bit |
cc6483e0 TC |
502 | - add the flood_fill() method (using the existing i_flood_fill) |
503 | - implement i_flood_cfill() based on i_flood_fill, and | |
504 | add general fills to the flood_fill() method | |
55268d8f TC |
505 | - generalize the combine parameter to get different ways of |
506 | combining the fill with the target | |
aa6e55eb TC |
507 | - the tt driver (freetype 1) didn't handle the first character |
508 | hanging off the left of the character cell | |
509 | - the tt driver produces some artifacts when characters | |
510 | overlapped | |
f873cb01 | 511 | - error handling for writing jpeg images |
bf9dd17c TC |
512 | - writing paletted images to GIF now uses the image palette |
513 | if it's small enough | |
0d321238 TC |
514 | - $img->arc() now calls i_circle_aa() if a complete circle is |
515 | being drawn in a plain color | |
f576ce7e | 516 | - image based fills |
b6381851 | 517 | - unsharp mask |
0958329a TC |
518 | - make i_conv() clamp the bottom end of the samples range too |
519 | (makes it useful for sharpening) | |
a923fade TC |
520 | - adjust ascender/descender values for FT1.x to avoid losing |
521 | descenders (specifically the bottom of "g" in ImUgly.ttf or | |
522 | arial.ttf at 14pixels) | |
c3cc977e AMH |
523 | - added tga.c to read targa images |
524 | - added i_bumpmap_complex to do more accurate bumpmapping | |
365ea842 | 525 | - added an image type with doubles as samples |
af3c2450 | 526 | - change i_copy() and i_sametype() to handle double/sample images |
bf94b653 TC |
527 | - added basic POD to trans2.c |
528 | - transform2 now uses the error interface | |
c3cc977e | 529 | - myrealloc() is implemented for malloc debug mode |
07d70837 | 530 | - now buffer chains are freed when destructor for Imager::IO |
c3cc977e | 531 | is called |
cd388046 AMH |
532 | - adjusted the Lanczos window width for the scaling code and |
533 | added code to normalize the filter generated to preserve | |
534 | intensity scaling. | |
535 | - constant edge extension for scaling operations | |
569795e8 | 536 | - better error checking of automatic fill conversions |
4c033fd4 | 537 | - fix some range checking for the fountain fill segment type |
07d70837 | 538 | |
38e6b53d AMH |
539 | 0.39 pre2 |
540 | - A few scattered mymalloc/free fixes | |
541 | - io_buffer implemented as a source for io layer and | |
542 | XS and perl OO code added. | |
543 | - Test for iolayer t/t07iolayer.t implemented. | |
412e7a35 | 544 | - Fixed known memory leaks. |
46a04ceb | 545 | - gif screen was wasn't being calculated correctly |
96190b6e | 546 | |
412e7a35 AMH |
547 | 0.39 Released: Nov 2 2001. |
548 | ||
43c5dacb TC |
549 | 0.40 pre1 |
550 | - anti-aliased polygon fill | |
551 | - add general fill to polygon fill | |
3a9a4241 | 552 | - make color values smarter for the drawing functions |
fd9a31d2 TC |
553 | - implemented reading and writing the TIFF text tags |
554 | - added prototypes for some of the derivative tags functions | |
5bb828f1 TC |
555 | - read paletted tiff images into Imager paletted images |
556 | - on partial tiff image reads, set the i_incomplete tag | |
557 | - tiff reading now uses the error stack | |
558 | - use the error stack value from reading bmp files | |
559 | - fix an error message in bmp.c | |
3dec2c92 | 560 | - added has_chars() method to Imager::Font::FreeType2 |
f62b2d84 TC |
561 | - freetype 2 bounding box function didn't know UTF8 (doh!) |
562 | - write paletted images as paletted to tiff | |
230e675b | 563 | - initialize counter for packing 4 bit data |
9cfd5724 TC |
564 | - don't allocate hashboxes as locals since it overflows the |
565 | stack by default in Darwin | |
6b012d62 | 566 | - applied T1 afm patch from Claes Jacobsson |
d67f1b7b TC |
567 | - split IM_INCPATH and IM_LIBPATH with $Config{path_sep}, so they |
568 | work on Windows | |
10461f9a TC |
569 | - Added memory pools for easy cleanup of temp buffers |
570 | - Added read support for sgi .rgb files. | |
571 | - io_new_fd() now creates a FDSEEK io object | |
572 | - implemented i_readgif_wiol() | |
573 | - Imager->read() now uses i_readgif_wiol(); | |
574 | - extend callback iolayers at C and Perl levels | |
575 | - implemented i_writegif_wiol() | |
576 | - split out Perl iolayer initialization into private methods | |
577 | - add tests for each type of iolayer in t50basicoo.t | |
578 | - read/write multi-image tiff files | |
579 | - tests in t50basicoo.t for multi-image/file | |
91492c5e | 580 | - ASCII PBM files were reading white as dark gray (255 vs 1) |
db6d10cc TC |
581 | - modify the Freetype2 font code to pick it's own encoding |
582 | rather than using whatever strange translation FT2 happens to | |
583 | pick | |
27e79497 TC |
584 | - modify the FT1 font code to use the first encoding as a default |
585 | if we don't find a unicode encoding | |
586 | - use the glyph bbox to calculate the glyph bitmaps for rendering | |
587 | with FT1 rather than the global ascender/descender. This helps | |
588 | with fonts that have broken metrics. | |
b72644d0 TC |
589 | - fix calculation of descender for FT2, it was calculating the |
590 | minimum decent rather than the maximum for the characters in | |
591 | the string | |
fec2a434 TC |
592 | - didn't set default for bounding_box() utf8 parameter (caused a |
593 | warning when calling bounding_box() on a FT2 font with no utf8 | |
594 | parameter) | |
7144e056 | 595 | - Added lib/Imager/Draw.pod documentation of primitives. |
8435f780 | 596 | - Added lib/Imager/Transformations.pod, some docs of simple transforms. |
83dadefe | 597 | - Added lib/Imager/ImageTypes.pod, draft of ImageType pod. |
cdd23610 | 598 | - Added lib/Imager/Filters.pod, draft of Filters pod. |
3e1be2c1 | 599 | - Added lib/Imager/Engines.pod, draft of Engines pod. |
591b5954 | 600 | - added getpixel() and setpixel() methods |
b6cfd214 TC |
601 | - added Artur's OSX dlload() emulation, with minor changes |
602 | - modified _color() to work around a 5.6.0 bug | |
97c4effc TC |
603 | - replaced old gif options with tags |
604 | - we now log which memory block is being freed before giving | |
605 | an error on it being re-freed | |
606 | - fixed stupid bug in deleting tags | |
55b287f5 | 607 | - fixed minor pod errors involving > |
72b26604 TC |
608 | |
609 | 0.40? | |
4cb58f1b | 610 | - make t1log optional, defaulting to off. You can enable the log |
f31bcf12 | 611 | with Imager::init(t1log=>1) (Ticket #369) |
a9fa203f | 612 | - quote a few hash key strings to prevent warnings on 5.004 |
10461f9a | 613 | |
b921d414 | 614 | ================================================================= |
02d1d628 | 615 | |
fd9f67c1 TC |
616 | For latest versions check the Imager-devel pages: |
617 | http://www.eecs.umich.edu/~addi/perl/Imager/devel/ | |
02d1d628 | 618 | |
b921d414 | 619 | ================================================================= |
02d1d628 | 620 |