之前在进行常规的yum update时,提示ImageMagick有问题,一直也没当回事。

Error: Package: 1:ImageMagick7-7.1.1.25-1.el7.remi.x86_64 (@remi)
           Requires: ImageMagick7-libs(x86-64) = 1:7.1.1.25-1.el7.remi
           Removing: 1:ImageMagick7-libs-7.1.1.25-1.el7.remi.x86_64 (@remi)
               ImageMagick7-libs(x86-64) = 1:7.1.1.25-1.el7.remi
           Updated By: 1:ImageMagick7-libs-7.1.1.31-1.el7.remi.x86_64 (remi-safe)
               ImageMagick7-libs(x86-64) = 1:7.1.1.31-1.el7.remi
           Available: 1:ImageMagick7-libs-7.1.1.30-1.el7.remi.x86_64 (remi-safe)
               ImageMagick7-libs(x86-64) = 1:7.1.1.30-1.el7.remi
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

yum_update-ImageMagick_errror.jpg
今天上传了个svg图片到网站上,结果发现显示效果一塌糊涂。
svg_convert_png_error.jpg
校徽糊成一片,惨不忍睹。
这才想起最上面的事。加之PHP也在前段时间升级过,很有可能就是这些导致了问题的发生。
关于ImageMagick的升级问题,应该是之前把remi的源给禁用了,所以没法升级。

yum-config-manager --enable remi

先开启一下,再执行升级。错误提示没有了,但是图片还是模糊的。
搜索的结果有说ImageMagick的问题,也说把图片删了重新上传,总之各种说法都有。
最后咬咬牙,装了个NativeSvgHandler扩展,让客户端自己去渲染算了。
NativeSvgHandler.jpg
我只是启用了扩展,之前的配置没改也正常能用。
不过某位网友貌似建议改成以下设置,先记下,万一有问题再来改。

$wgFileExtensions[] = 'svg';
$wgAllowTitlesInSVG = true;
$wgUseImageMagick = false;

//Make sure this variable is false or not there at all:
$wgSVGConverter = false;

参考资料

https://stackoverflow.com/questions/45543329/how-to-get-high-res-thumbnails-out-of-low-res-svgs-in-mediawiki
https://www.mediawiki.org/wiki/Manual:Image_administration#SVG

最后修改:2024 年 04 月 25 日
如果觉得我的文章对你有用,请随意赞赏