Rotate v1. This has a known bug. It works for rotating ay 90º angles but if the frames of an animation have different geometries the resulting image will be jumpy.
Roll added.
Posterize added.
Oil Paint added
Normalize added.
Negate added
Modulate (Brightness/Saturation/Hue) added.
Implode added
Gamma added
Flip/Flop added
Transverse/Transpose v1 (buggy)
I don't have this on my original tool but I thought that it would be easy to add. I forgot about the geometry problem. Not as bad on this as own Rotate but still a problem.
Reduce Noise added
Radial Blur added
Quick Resize added. This took a lot more reworking that regular Imagic functions.
Enhance/Equalize added
Emboss added
Added top.php to replace the code at the tops of most pages and replaced some existing pages using it instead of the old code block,
Edge Detect Added
Despeckle added
Decorate v1 added.
I thought I'ld knock this out in 30 minutes like the others but it took 3 hours and it still has problems. For frame the validation for width needs to check for widths too wide. That shouldn't be hard to fix but the next problem might. For frame, it changed the transparent background of the test animation to gray.
Cyclecolormap added
Charcoal added
Blur added
Gaussinblur
Convert File Type added
Psychedelicize added
To reduce the clutter I changed the navigation from links to menus
New image maker added
Gradient added
Plasma added
CSS added to navigation to make menus the same size on all browsers
Display page split into two pages; one to display, another to split animated images into frames
This uses Imagick's colorize. My own colorize does some other things but I never converted it from GD it Imagick and I don't know of any way to do animations with GD functions.
Added redirection to functions.php to power the button to the Restore page so it doesn't need javascript
Geometry bug on Rotate fixed
Patterns added. Made an array of all the pattern names to loop through to create the HTML for the menu and table. All the pattern images in the table are created by the same script.
Navigation now keeps working if javascript fails.
Shave v1 added. This version doesn't work on animations if the frames are different sizes.
Crop v1 added. This version doesn't work on animations if the frames are different sizes.
Bugs fixed in Crop, Rotate, Transverse and Transpse. A single line of code fixes them all: $image = $image->coalesceImages();
Contrast added. Coalesce added to upload so all animations will b coalesed. to work in other scripts
Trim v1 added. does not work for animations
click.php updated. Typo that showed the y cooridinate as the x cooridinate fixed. It now no longer closes the page if there is no image to display. That cause the forms for Gradient, Plasma and Patterns to not display if there wasn't already an image present.
Adaptive Sharpen added
Adaptive Blur added
Contrast Stretch added
Two bug fixes for click.php:
Fix for the bug that Byron found; prepends a zero to the hex for $r, $g and $b if they are only one charactor long.
Also fix for bug that is activated if you use the first version of the tool in the same session. One version will store $_SESSION[path] for that directory then when you switch tools, version 2 tries to load $_SESSION[path] but it doesn't exist in that directory.
Round Corners added
Buttonize added
Median Filter added
Polaroid added<>
Bug fixes for Resize. Resize no longer turns JPG's black. Sample doesn't do proportional scaling so if a size parameter is zero it gets changed to one.
Undo function added. The undo() lives in functions.php so I can call it in restore.php and display.php. It gets a list of all of the viewer's images, deletes the last one and replaces the path in $_SESSION[path] with the next to last image. Upload.php has some minor modifications.
Linear Stretch added
Solarize added
Compress added. Optimize menu added to nav.php and Reduce Colors and Compress moved to it. Found and fixed bug in Despeckle.
Emboss updated
Add Noise added
Splice added to Crop page
Point & click draw lines and rectangles added
Circles and Round Rectangles added to Lines and rectangles page.
Paint added. Includes Paint Transparent, Color Flood Fill and Paint Flood Fill.
Set Opacity added to Paint page
Added version 1 of Multi-Uploader
Added Delay multi-upload and made it convert the output to .gif
Composite added
Added a form to the upload page for computer and MSNTV2 users to upload files from their devices.
Scale, Skew & Rotate added to Draw Lines Circle, Rectangels and Round Rectanges
Auto Scale Composite added.
Changed the name of two of the functions on the Paint page to "Replace" to make it more obvious what they do. Three bugs fixed that gave incorrect colors if one of the channels had one digit.
Finally found and fixed the bug in Resize that sometimes resulted in all black images. It happened when blur=0. I changed it so that when the user doesn't enter a blur, blur=1
Added my own fonts to the list of server fonts. Spent several hours trying to alphabetizing the whole array before I gave up. For now it displays a whole form. Eventually that will change,
Font uploader added for users to upload their own fonts. Every time the page is viewed, fonts older than 8 hours are removed. URLs are checked to see if they start with http:// and end in .ttf. A final check is done to make sure no indesirable files have been uploaded.
Fonts file no longer displays HTML on its own. Instead if checks the temp_fonts directory and adds any fonts there to the array of fonts. A function to display options ha been added so I can call the list when I want it.
I had to make some changes to the fonts page to make if select font names for server fonts and paths for my fonts and user fonts.
http://eclecticdjs.com/mike/wtv/tools/image_maker_2/fonts_03.txt
Basic annotate functions. Known problem: Error when font not selected.
Alpha and Opacity added to Annotate
Added more validation so no error when font not selected
Typo in draw_lines_circles_rectangles_03.php that had opocity being set when alpha should be set fixed.
Rotate and Under Text Color added to Annotate
Draw Ellipses added.
Added link to current image to Crop page
Polygons & Polylines added
Added bezier curves to polygon page
Now remembers which font you last used to annotate with and menu is pre-selected. Font viewer added to font.php. Form for it added to annotate.php.
Stand alone font viewer added for people who just want to see the font
The string used for the characters in the font display had quotes in it. Changed it to heredoc syntax to avoid problems with them
Found and fixed bug in Rotate that made it fail on single frame images rotated right or left then save the invalif file path,
Distort v1 added to image tool. Only does arc distort for now.
Thanks to Lila for finding out that Imagick has many more composite modes than the ones listed in PHP.net. Even the apparently useless ones like Dst and Src. Maybe I'll find out that the do have some use latter on. Thanks to Sally for posting a way to find out what modes by server as I now have every mode that my server has on my tool I didn't have to test every mode one by one.
Added the rest of the distortion operators that my server can handle. The I didn't finish the discriptions because the only documentation that I could find was for command line and didn't match the results of my tests.