【问题标题】:imagemagick gm node buffer file conversionimagemagick gm节点缓冲区文件转换
【发布时间】:2021-11-15 10:18:28
【问题描述】:

我目前正在使用 ImageMagick 和 gm 来处理来自缓冲区的图像。我的问题是我无法控制将哪些文件类型放入缓冲区,但希望将所有内容都转换为 jpg。

不知道如何使用缓冲区来做到这一点,因为我没有给它一个带扩展名的输出文件路径。

gm(buf).command('convert').in('-auto-orient','-resize','500x','-quality','92','-strip','-quality','100','jpg').toBuffer((err, buffer) => err ? reject(err) : resolve(buffer));

【问题讨论】:

    标签: node.js aws-lambda imagemagick gm


    【解决方案1】:

    我对 ImageMagick 或 GraphicsMagick 的 node.js 绑定一无所知,但我知道如果您在终端中执行此操作,您将强制输出 JPEG,所以也许您可以调整它...

    # Make a 1x1 black image and write to stdout as JPEG. Dump result with 'xxd'
    gm convert xc:black jpg:- | xxd
    
    00000000: ffd8 ffe0 0010 4a46 4946 0001 0101 0048  ......JFIF.....H
    00000010: 0048 0000 ffdb 0043 0008 0606 0706 0508  .H.....C........
    00000020: 0707 0709 0908 0a0c 140d 0c0b 0b0c 1912  ................
    00000030: 130f 141d 1a1f 1e1d 1a1c 1c20 242e 2720  ........... $.' 
    00000040: 222c 231c 1c28 3729 2c30 3134 3434 1f27  ",#..(7),01444.'
    00000050: 393d 3832 3c2e 3334 32ff c000 0b08 0001  9=82<.342.......
    00000060: 0001 0101 1100 ffc4 0014 0001 0000 0000  ................
    00000070: 0000 0000 0000 0000 0000 0008 ffc4 0014  ................
    00000080: 1001 0000 0000 0000 0000 0000 0000 0000  ................
    00000090: 0000 ffda 0008 0101 0000 3f00 3fbf ffd9  ..........?.?...
    

    ImageMagick 和 PNG 输出也一样:

    magick xc:black png:-
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-09-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多