我在客户端Jcrop和服务器上设置了一个imagemagick(express.js)。
首先将图像上传到服务器,然后显示给客户端。客户端进行裁剪,并将以下信息发送到服务器:
function showCoords(c)
{
// variables can be accessed here as
// c.x, c.y, c.x2, c.y2, c.w, c.h
};
我将图像存储在服务器上,准备好进行裁剪。问题是,如果使用imagemagick ......我该如何使用这些变量?图像magick已经调整大小和裁剪(它还有其他选项)似乎是相关的...但似乎我有更多变量然后IM接受。
发生了什么事?
答案 0 :(得分:3)
您可以忽略point2(c.x2,x.y2)。 Jcrop只是给你一个矩形大小(c.w,c.h),起点(c.x,c.y)和终点(c.x2,c.y2)。
ImageMagick拥有自己的Image Geometry格式,因此您只需要尺寸和尺寸。偏移(起点)。
function showCoords(c)
{
var IMGeometry = String.concat(c.w,"x",c.y,"+",c.x,"+",c.y);
//=> "175x125+50+50"
// Assuming you are using node-imagemagick
im.convert(["source.jpg","-crop",IMGeometry,"out.jpg"],function(err, stdout){
// Callback
});
}