Jcrop和imagemagic最后一块拼图

时间:2014-04-02 19:24:08

标签: express imagemagick jcrop

我在客户端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接受。

发生了什么事?

1 个答案:

答案 0 :(得分:3)

您可以忽略point2(c.x2,x.y2)。 Jcrop只是给你一个矩形大小(c.w,c.h),起点(c.x,c.y)和终点(c.x2,c.y2)。

points

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
   });
}