【问题标题】:node-canvas image manipulation节点画布图像处理
【发布时间】:2011-09-01 22:24:11
【问题描述】:

我正在尝试在 node.js 中调整和裁剪图像

我一直在使用 graphicsmagick:

代码如下:

gm(path)
.resize(width, height)
.crop(50, 50, left, top)
.write(path, function(err){})

这很简单。我不知道如何使用画布,画布中的等价物是什么?

谢谢。

【问题讨论】:

  • 为什么必须使用节点画布?

标签: javascript canvas node.js graphicsmagick


【解决方案1】:

由于某种原因,此签名从未在示例中使用:

context.drawImage(img, sx, sy, sw, sh, dx, dy, dw, dh);
  • img = 图片元素
  • sx = 来源 x
  • sy = 来源 y
  • sw = 源宽度
  • sh = 源高度
  • dx = 目的地 x
  • dy = 目的地 y
  • dw = 目标宽度
  • dh = 目标高度

使用 sx、sy、sw、sh 进行裁剪

使用 dw、dh 调整大小

【讨论】:

  • 不错的提示。 Mozilla 文档也很有帮助:developer.mozilla.org/en/Canvas_tutorial/Using_images
  • 我正在使用节点画布 api,当我尝试调整它的大小时会裁剪图像。例如,我有 150x150 的图像,我想要 50x50。我试试 ctx.drawImage(img,0,0,150,150,0,0,50,50);
  • 虽然调整大小大于实际大小,但它可以工作。 ctx.drawImage(img,0,0,150,150,0,0,300,300);
猜你喜欢
  • 2021-10-27
  • 2014-02-22
  • 1970-01-01
  • 2017-12-23
  • 2020-09-06
  • 1970-01-01
  • 2017-06-13
  • 2018-11-25
  • 1970-01-01
相关资源
最近更新 更多