Skip to content

update imagemagick to handle images types#2989

Open
alzamer2 wants to merge 11 commits into
dazedcat19:masterfrom
alzamer2:update-imagemagick-to-handle-images-types
Open

update imagemagick to handle images types#2989
alzamer2 wants to merge 11 commits into
dazedcat19:masterfrom
alzamer2:update-imagemagick-to-handle-images-types

Conversation

@alzamer2
Copy link
Copy Markdown

now any type that imagemagick can handle FMD2 can download it and if selected can convert to

alzamer2 added 11 commits May 17, 2026 09:50
now any type that imagemagick  can handle FMD2 can download it and if selected can convert to
AVIF Fix Summary
Root cause: AVIFCheckImageStream in ImgInfos.pas was reading bytes 0-3 expecting 'ftyp', but in AVIF/ISO BMFF files:
-
Bytes 0-3 = box size (binary integer, e.g. 0x00000018)
-
Bytes 4-7 = 'ftyp' magic
-
Bytes 8-11 = major brand (avif, avis, avio, mif1, msf1)
Fixes applied:
1.
ImgInfos.pas - AVIFCheckImageStream: Now correctly seeks to byte 4 to read 'ftyp', then reads major brand at byte 8. Also added support for avio, mif1, msf1 brands.
2.
uBaseUnit.pas - SaveImageStreamToFile: Added ExtFromContentType() helper that detects format from HTTP Content-Type header (e.g. image/avif → .avif). When stream-based detection fails, falls back to Content-Type before giving up.
fix coverlink avif error
1.update image magick to use dll
2.make when using image magickto convert images, ited download image to memoery> convertit> save it
3.include image magick dll in dist folder
4.now image cover support animated images (avif, gif, apng, webp, and tif/tiff)
add 'PNG','JXL','GIF','BMP','WEBP','TIF' to magick converting combobox
clean some debeging logger
…e tif with avif in save to.

[x] convert skiping.
[x] replace tif with avif in save to.
[x] add animated jxl to image info cover.
unlink libwebp.dll
you can now remove it from dist
fix fmd_magic
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant