Releases: iseahound/ImagePut
Releases · iseahound/ImagePut
v1.10
32-bit stability fixes, ImageSearchAll(), PixelSearchAll()
ImagePutBuffer Changes
- PixelSearchAll and ImageSearchAll can now return multiple matches
- PixelSearch supports searching for a color with 3 variations (red, blue, green)
- Transcolor() and Colorkey() now select the top-left pixel by default
- Add Clone() to create a duplicate bitmap
- [v1] Fix crop method
- Save() now works even if the image width and height is updated
Other Changes
- ImagePut is now stable on AutoHotkey 32-bit versions!
- Fixed GIF rendering
- Fixed thrown errors with "cdecl"
- [v2] You can now drag and drop multiple images onto ImagePut.ahk to show them without closing previous windows.
- Dragging one animated GIF no longer pauses other animated GIFs
Note: AutoHotkey v1 ANSI is still supported, although unicode characters will appear garbled.
v1.9
New features:
- ImagePutSafeArray() - Stores the image into a safe array
- ImagePutExplorer() - Copies an image into the last active windows explorer folder
Improvements:
- Major improvements to ImageSearch including the ability to ignore transparency in the search image
- PixelSearch now has variation, and can search ARGB ranges (for each individual red bluegreen alpha channel)
- (v2) Buffers can now be enumerated over with a for loop as in
for x, y, color in ImagePutBuffer(0)
- Buffers can save() a raw bitmap
- Monitor numbers
0, 1, 2, 3...
now have a higher priority over other image types
Possible Breaking Change
- Filenames now have priority over window titles. This means that if there is a file named "photo.png" and a window title with the name "photo.png" the file will be used. This resolves possible unintuitive behavior where if a file open is in a photo editor, a screenshot of the photo editor would take priority over the actual file.
v1.8.1
Bugfixes for Animated GIFs
- Gifs were animating 10-20% slower than they should have
- Sometimes animated GIFs were not deleted causing a memory leak
- GDI+ was not loaded for the full duration of the animated GIF
Drag and drop functionality
- Dropping images onto ImagePut.ahk now opens the corresponding images
New (and cuter) demo.ahk in GitHub folder!
Better Sample.ahk included.
v1.8
Animate GIFs
- GIFs are now animated by ImageShow and ImagePutWindow
- ImagePutURI produces base64 data with a MIME type
- ImageDestroy supports releasing WIC bitmaps
Improvements
- 10x speed set_hex
- Partial arrays allowed in ImagePutScreenshot(img, [0,0])
- Patched small memory leak with mime type detection
- (v2) Closing one window no longer closes all windows
ImagePutBuffer
- Add ImageSearch, Colorkey, SetAlpha, Transcolor
- Ability to crop and return a new buffer
- show() → ImageShow; show(1) → ImagePutWindow
- Add PixelSearch variation
v1.7
Added PixelSearch. Supports WICBitmaps.
- Add ImageWidth() and ImageHeight().
- Implement PixelSearch for ImagePutBuffer.
- Extend ImagePutBuffer with width and height properties.
- Support new conversion type wicBitmap.
- Keyword arguments are now passed to from_XXX functions.
- Positional arguments have always been passed to put_XXX functions.
Improvements and Bugfixes
- Allow special syntax ImagePutFile(0) to generate a sequence of files.
- Stream header size increased to use 256 bytes for extension detection.
- Use the native DPI awareness of the window to prevent black borders.
- No longer locks files while reading.
- Increase speed reading from files.
- 2x speed converting to and from base64 and hex.
- 3x speed when input type is a sprite.
{image: foo}
is now accepted everywhere.- Read from IWICBitmapSource and IWICBitmap.
v1.6
DPI-awareness and multi-monitor support.
- Screen capture is now DPI aware.
- Window capture can now capture windows in different DPI contexts.
- Monitor number inputs
0
,1
,2
, now capture the full screen. wallpaper
now captures all wallpapers to the right of the primary screen.- ImageShow/ImagePutWindow no longer scale their contents to in different DPI contexts.
- ImageShow/ImagePutWindow will always center the window regardless of screen DPI.
Bugfixes
- ImagePutWindow(2) never actually worked for monitor numbers greater than 1.
- Restore ImagePutWindow() alpha transparency. (Broken by v1.5)
- Fix
ImagePut("window", image)
missing default window styles. - Accepts Device Context
hdc
inputs with device independent bitmaps selected. hBitmaps
that are selected onto a device context can now be copied.
Minor Adjustments
- Cropping to zero width or height correctly returns the original image.
- Fixes incorrect window width and height created by ImageShow().
- Small windows created by ImageShow() were unable to be closed via right click.
- The filepath parameter of ImagePutFile() now accepts forward slashes.
- Cropping no longer occurs when coordinates are identical to the source image.
- Decreased minimum string lengths for auto detection of base64 and hex data.
- Hex string lengths are checked for a divisibility of 2.
v1.5.1
v1.5
v1.4
Support for PDF files.
- To process PDF pages use
ImagePutWindow({pdf: "doc.pdf", index: 2})
. - Speed up processing of PNG streams on the clipboard.
- Added a new function ImageDestroy() to cleanup images.
- Now supports custom resolutions as
scale:[width, height]
.
Bugfixes
- Obsolete cursors were causing memory leaks.
- Fixed put_window memory leaks.
- Sometimes top-level directories were created from a filepath.
- Output of ImagePutFile no longer has double backslashes.
- Downloading over the internet is now asynchronous.
v1.3
Supports crop and scale better.
- Crop and scale is now accessible through the input object.
- ImagePutWindow will scale down images to screen size. Also, right click to close.
- Can now use a device context (dc) as an input and output type.
Bugfixes
- Reenable file format conversions like .png → .jpg
- Invalid image extensions will now produce an error.
- Device dependent bitmaps are now accepted.
- ImagePutHIcon was secretly making hBitmaps instead.
- [v1] HBitmap detection no longer fails half the time.
- [v2] Fix "expected an object" error messages.