[TRACKING] ICO/CUR/ANI plugin missing features
Environment/Versions
- GIMP version: 2.99.14
- Package: https://download.gimp.org/gimp/v2.99/windows/gimp-2.99.14-setup.exe
- Operating System: Windows
Description of the bug
After trying to use the plugin for ICO/CUR/ANI files, I found some bugs and room for improvement:
-
No information about icon layer size in the "Export Image as Windows Icon" dialog. -
Preview icon for ICO/CUR/ANI have all frames drawn one on top of the other. Preview generation is slow. I think its better to select the best image from the file (max size and bpp?) and show it only.
-
Icon layer name have to include "Icon" or "Cursor" or "ANI Frame" in name. Right now "Icon" only. Also, layer size, bpp, frame number (for ANI cursors) may be added:
-
Layers should be sorted/grouped by bpp and size in "Export Image as Windows Icon" dialog for ICO/CUR/ANI. -
"1-bpp, 1-bit alpha, 2-slot palette" layer option is not preserved in "Export Image as Windows Icon" dialog after open and resaving icon :
-
"Export Image as Windows Icon" dialog allows to select several frames of the same size/bpp. Produced icon file get buggy/merged frames when this happens. Here is icon after export with setting from previous screenshot (opened in icoFx tool):
-
Need to use default color palette for 1, 4, 8 bit layers when converting BPP. Some related links: 1 2 3 4. -
Monochrome XOR cursors cannot be viewed after loading (I see an empty transparent layer) and are broken after resaving (resulting in empty icon/cursor frame). I think maybe 3rd color in palette can be used for "Pixel color is inverted" mode. For example IDC_IBEAM
andIDC_CROSS
default Windows cursors: cross.cur ibeam.cur
Here it's opened in MSVS 2022:
And in GIMP 2.99.14:
-
Hotspot point for cursors should be visible on frame preview image in "Export Image as Windows Icon" dialog. Related to #8480 a flashing dot maybe? or preview like this?
-
Add support for ANI files with multiple sizes in one file (can be loaded but are broken after resaving right now). See: #10079 Some info on this: - http://www.rw-designer.com/multi-resolution-cursor
- http://www.rw-designer.com/entry/409
- https://www.tenforums.com/customization/40973-custom-cursors.html#post569584
- https://devblogs.microsoft.com/oldnewthing/20210819-00/?p=105572
Example cursor: aero_busy.ani
-
Hotspot should be the same for whole ANI sequence of some size. -
Should be ability to change frame delay in ANI cursors for each frame (time in second is better than time in jiffies IMHO). -
Add ability to test/preview CUR/ANI cursors (reuse existing animationplay
plugin?). -
Limit icon size to 256x256px (so called "Jumbo icon size" - used since Windows Vista). Bigger sizes are not used under Win32. See #6986 -
Remove "Compressed (PNG)" option for layers less that 256px - it is not used for smaller icon sizes. Also 256x256px icons should be 32bit only. -
Add warning if several color depth is selected when saving cursor since Microsoft recommends that cursor sets be authored only at a single color depth.