当前位置: 首页 > 知识库问答 >
问题:

Unix中的Image Magick错误:图形图元定义“圆”不一致

杜俊远
2023-03-14
convert -quiet 2B_IMAGES/1001005_2_53990/01_03DEC22_S01005_0004_cutout_1209.fits 
-level 4.92401123047%,5.47628846705% -negate -fill transparent -stroke green 
-draw "circle $X,$Y `echo $X+5|bc`,$Y" -stroke black 
-draw "rectangle `echo $X-12|bc`,`echo $Y-12|bc` `echo $X+12|bc`,`echo $Y+12|bc`" 
-crop 50x50+`echo $X-25|bc`+`echo $Y-25|bc`\! -background transparent 
-flatten +repage 2B_IMAGES/1001005_2_53990/out.png;

上面的脚本在macOSX中非常有效。但是,当我尝试在unix服务器上运行此操作时,会出现以下错误:

转换bin:不符合图纸原语定义<代码>圆圈'@错误/图纸。c/DrawImage/3158。转换bin:无法打开图像“106.727”,“64.344”:没有此类文件或目录@错误/blob。c/OpenBlob/2638。转换bin:此图像格式没有解码委托。<代码>'106.727','64.344''@错误/构成。c/ReadImage/544。转换bin:无法打开图像111.727,'64.344':没有这样的文件或目录@错误/blob。c/OpenBlob/2638。转换bin:此图像格式没有解码委托。111.727,'64.344''@错误/构成。c/ReadImage/544。转换bin:不符合图纸原语定义 圆圈'@错误/图纸。c/DrawImage/3158。转换bin:不符合图纸原语定义<代码>矩形'@错误/图纸。c/DrawImage/3158。转换bin:无法打开图像94.727,52.344“:没有这样的文件或目录@错误/blob。c/OpenBlob/2638。转换bin:此图像格式没有解码委托<代码>94.727,52.344'@错误/构成。c/ReadImage/544。转换bin:无法打开图像118.727,76.344“:没有这样的文件或目录@错误/blob。c/OpenBlob/2638。转换bin:此图像格式没有解码委托。118.727,76.344'@错误/构成。c/ReadImage/544。转换bin:不符合图纸原语定义 圆圈'@错误/图纸。c/DrawImage/3158。转换bin:不一致的绘图图元定义“矩形”@错误/绘图。c/DrawImage/3158。

在脚本中,变量X和Y包含中心的位置,我想围绕中心绘制一个圆和矩形。在上述情况下,X=106.727,Y=64.344。输入图像的路径为:“2B\u IMAGES/1001005\u 2\u 53990/01\u 03DEC22\u S01005\u 0004\u cutout\u 1209。“拟合”,输出路径为2B\U图像/1001005\U 2\U 53990/输出。巴布亚新几内亚

我试着在网上找到答案,但没能解决问题。我还是会犯同样的错误。有人可以建议我需要在脚本中进行哪些更改才能使其正常工作吗。


共有1个答案

堵宪
2023-03-14

我建议在调用draw之前,将$x和$Y转换为脚本顶部附近的整数,如下所示:

# Round $X to nearest int
X=$(echo "($X+0.5)/1" | bc)

# Round Y to nearest int
Y=$(echo "($Y+0.5)/1" | bc)

此外,请检查您是否支持使用

identify -list format | grep -Ei "fit|Flex"
 类似资料:
  • 我想从矩形照片中制作一个居中的圆形图像。照片的尺寸未知。通常是矩形。我尝试了很多方法: 密码

  • 本文向大家介绍Android实现自定义ImageView的圆角矩形图片效果,包括了Android实现自定义ImageView的圆角矩形图片效果的使用技巧和注意事项,需要的朋友参考一下 android中的ImageView只能显示矩形的图片,这样一来不能满足我们其他的需求,比如要显示圆角矩形的图片,这个时候,我们就需要自定义ImageView了,其原理就是首先获取到图片的Bitmap,然后进行裁剪对

  • 本文向大家介绍Android实现圆形图片或者圆角图片,包括了Android实现圆形图片或者圆角图片的使用技巧和注意事项,需要的朋友参考一下 Android圆形图片或者圆角图片的快速实现,具体内容如下 话不多说直接上code xml文件布局 初始化控件之后用工具类加载 //第一个参数上下文,第二个控件名称,第三个图片url地址,第四个参数圆角大小 ViewUtils.loadImageRadius(

  • 我的目标是使图像圆形并显示它。如果图像是方形的,那么我可以通过简单地使用CSS的属性将其转换为圆形。但是当图像是矩形时,使用这个CSS属性会给我椭圆形的图像。 剪辑的部分是不可见的,但仍然存在。所以即使现在我也在尝试使用属性,它给我椭圆形图像,右侧和左侧被剪辑。 我有什么办法可以解决这个问题吗?

  • 我正试图实现类似的图表。例如,三月份通过卡和现金(40美元现金和38美元卡支付)收取的出租车运输付款。我需要用主色和主色的浅色版本显示那个栏。我有两个问题什么样的图表能满足我的需求?如何制作具有相同颜色(深蓝色和浅蓝色)两种不同色调的酒吧? 我已经尝试了以下代码,我确信数据集没有像我前面解释的那样包括卡和现金选项。 谢谢你。

  • 我正在创建一个自定义的ImageView,它将我的图像裁剪成一个六边形形状,并添加一个边框。我想知道我的方法是正确的还是我的做法是错误的。有一堆自定义库已经这样做了,但没有一个开箱即用的形状,我正在寻找。话虽如此,这更多的是一个关于最佳实践的问题。 您可以在这个要点中看到完整的类,但主要问题是这是否是最好的方法。我觉得不对,部分原因是一些神奇的数字,这意味着它可能会在某些设备上搞砸。 下面是代码的