これがお役に立てば幸いです。
概要
Rails を mini_magick で使用していますが、コードが image.size の呼び出しで次のような例外が発生して失敗します。
`identify -format %m %w %h %b /tmp/RackMultipart20231025-217-shzlwd.png[0]` failed with error:
> image.size
最近、Ruby のバージョンを 3.1 に、Rails を 7.0 に更新したので、何らかの形で接続できる可能性があります。また、mini_magick バージョン 4.11.0 を使用します。
これを修正するヒントはありますか?
解決策
したがって、この問題は実際には ImageMagick (IM) のバージョンに関係しています。 私の IM バージョンは 6.9.10-23 でした。
幅が 16000 を超える PNG では古い IM がクラッシュします。 https://translate.google.com/translate?hl=ja&sl=en&tl=ja&u=https://github.com/ImageMagick/ImageMagick/issues/2732
IM をバージョン 6.9.11 にアップグレードすると、この問題を解決できます (Heraku を使用している場合は、heroku-22 に移行すると IM バージョンが自動的に更新されます)。
PS: IM 自体を更新できない場合は、画像のサイズを変更することで回避できます。