Articles of imagemagick

D3JS:如何将SVG文本转换为path?

有没有一种D3.js的方式来将文本元素转换为path元素? 所以当我抓住生成的SVG,我可以保留我的文字形状。

如何解码“二进制”编码的string到原始二进制缓冲区?

NodeJS的文档强调, binarystring编码是非常不鼓励的,因为它将在未来某个时候被丢弃。 不过,我试图用node-imagemagick模块生成图像缩略图,它只能输出binary编码的string。 我的最终目标是将生成的缩略图作为BLOB提交到SQLite3数据库(我正在使用node-sqlite3 ),所以我想我需要缩略图作为二进制Buffer对象。 如何直接解码node-imagemagick的binary编码输出到一个原始的二进制缓冲区(不只是一个包含binary编码的string的缓冲区)? 我不喜欢使用base64 …

我如何在AWS Lambda上安装GraphicsMagick或ImageMagick?

我正在使用Node.js的gm包以及AWS Lambda上提供的默认ImageMagick安装。 const gm = require('gm').subClass({ imageMagick: true }); 出于某种原因,某些图像的大小调整function失败。 我使用Amazon Linux AMI创build了一个EC2实例(ami-hvm-2016.03.3.x86_64-gp2)。 我安装了yum提供的ImageMagick(旧)6.x版本。 当我使用EC2实例上的安装来运行我的脚本时,它再现了我在Lambda上运行代码时看到的故障,确认这是导致故障的IM版本。 如果我安装GrpahicsMagick与sudo yum install GraphicsMagick 。 这允许我的脚本无误地执行调整。 const gm = require('gm').subClass({ imageMagick: false }); 不过,我不知道如何将这个与无服务器部署捆绑在一起。 如果我使用sudo yum –installroot=/var/task install GraphicsMagick到脚本所在的文件夹中,并使用这个require语句来运行我的脚本: const gm = require('gm').subClass({ imageMagick: false, appPath: './usr/bin/' }); 当我在EC2实例上运行我的脚本时,resize工作。 但是,当我使用无服务器进行部署时,脚本在Lambda中运行时,可执行文件似乎已损坏。 gm在调用gm(buffer).size(/*…*/)出现以下错误。 could not get the image size: ERR: {"code":"EPIPE","errno":"EPIPE","syscall":"write"} 我如何构build可以使用无服务器部署的ImageMagick或GraphicsMagick版本?

寻找imagemagick nodejs npm?

我有好几天使用node-imagemagick ,并已经意识到它有错误。 它有大约100个分支,其中一些解决了我遇到的一些问题,但很难弄清楚我应该使用哪个分支。

在node.js中的gm转换问题

我正在将一个图像从JPG转换为PNG,但它是给出的错误。 下面是代码和错误。 gm('E:/image1.jpg').write('E:/image2.png', function(err){ if (err){ console.log(err); } else{console.log('image converted.')} }) 错误是: [Error: Could not execute GraphicsMagick/ImageMagick: gm "convert" "E:/image1.jpg" "E:/image2.png" this most likely means the gm/convert binaries can't be found] 我需要npm graphicsmagick和imagemagick吗?

在亚马逊lambda,并行调整多个缩略图大小asynchronous抛出错误:stream产生空的缓冲区

我已经调整了在lambda中调整照片大小的Amazon示例以创build多个缩略图大小并行运行。 我的代码在几秒钟内在本地运行良好,但在lambda云中,它不会并行运行,并在调整第一个缩略图大小后引发错误。如果将其切换为串行而不是并行,则需要大约60秒连续运行。 为什么会在lambda中并行运行resize的代码会导致stream产生空的缓冲区错误。 如何提高性能,以便在几秒钟内创build尺寸,但是在处理器成本方面仍然可以获得良好的价值和效率。 // dependencies var async = require('async'); var AWS = require('aws-sdk'); var gm = require('gm') .subClass({ imageMagick: true }); // Enable ImageMagick integration. var util = require('util'); // constants var SIZES = [100, 320, 640]; // get reference to S3 client var s3 = new AWS.S3(); exports.handler = function(event, context) { // […]

pipe道stream到graphicsmagick / imagemagicksubprocess

我正在试图将stream中的数据传递给subprocess。 var gm = spawn( 'gm convert – -thumbnail 220×165^ -gravity center -extent 220×165 thumb.jpg' ); var rs = fs.createReadStream( 'cow.jpg' ); rs.pipe( gm.stdin ) 我是否需要在gm上打电话才能使用? 另外在我真正的代码中,我从数据库中获取stream。

NodeJS gmresize和pipe道响应

有没有一种方式来resize的图像我的明确回应? 有些东西是: var express = require('express'), app = express.createServer(); app.get('/', function(req, res){ gm('images/test.jpg') .resize(50,50) .stream(function streamOut (err, stdout, stderr) { if (err) return finish(err); stdout.pipe(res.end, { end: false }); //suspect error is here… stdout.on('end', function(){res.writeHead(200, { 'Content-Type': 'ima ge/jpeg' });}); stdout.on('error', finish); stdout.on('close', finish); }); }); app.listen(3000); 这不幸的是导致一个错误… 很确定我有一些错误的语法。

上传时错误的图像方向 – Amazon S3

我让用户使用Multer-S3将多个图像直接上传到Amazon-S3,然后通过循环在前端显示这些图像。 所有的作品完美。 但是,当通过手机上传图片(在iPhone或Android上拍摄的图片)时,手机的方向是正确的,但在桌面上没有正确的方向。 主要问题。 这是由于我相信图像的EXIF数据。 看起来像ImageMagick或Kraken JS https://kraken.io/docs/storage-s3可能是一种解决方法,但对于我的生活,我无法弄清楚如何以我上传和显示图像的方式来实现如下所示。 如何更改我的代码以自动定位图像? 注意:它必须适用于多个图像 。 谢谢你的帮助! 下面是我让用户直接向Amazon-S3上传多个图片的方式: aws.config.update({ secretAccessKey: 'AccessKey', accessKeyId: 'KeyID', region: 'us-east-2' }); var s3 = new aws.S3(); var storage = multerS3({ limits : { files: 25 }, s3: s3, bucket: 'files', key: function (req, file, cb) { var fileExtension = file.originalname.split(".")[1]; var path = "uploads/" + […]

产卵ENOENT错误

我正在尝试使用imager模块将东西上传到亚马逊S3。 我不断收到错误消息说, events.js:72 throw er; // Unhandled 'error' event ^ Error: spawn ENOENT at errnoException (child_process.js:980:11) at Process.ChildProcess._handle.onexit (child_process.js:771:34) 我已经在我的电脑上安装了imagemagick,但是它一直说它没有链接,这可能是问题吗? 我也尝试使用brew链接imagemagick链接,但由于某种原因无法链接。 我正在使用OSx。 任何修复? 谢谢。