站長資訊網
        最全最豐富的資訊網站

        聊聊Nodejs怎么使用gm和imageMagick來處理圖片

        Nodejs怎么處理圖片?下面本篇文章給大家介紹一下Nodejs使用gm和imageMagick處理圖片的方法,希望對大家有所幫助!

        聊聊Nodejs怎么使用gm和imageMagick來處理圖片

        最近我在用JS做好玩兒的事情,需要處理圖片。網上很多教程,各種方法五花八門,某些方法不一定行的通。本文給你分享一種被作者驗證能用的方法,使用NodeJS處理圖片。

        安裝依賴

        npm i gm

        gm是一個Node庫,提供了一些JS API,讓開發者可以處理圖片。但是它底層依賴了GraphicsMagick、要么或者ImageMagick。其實gm就是調用那兩個工具的命令行。

        也就是說,除了安裝gm,我們還需要安裝要么GraphicsMagick、要么ImageMagick。

        ImageMagick

        作者是MacOS,直接選擇了安裝ImageMagick。

        按照官網命令,只需要1行代碼(前提是你已經在Mac上安裝了brew):

        brew install imagemagick --with-webp

        介紹一下參數--with-webp,你是可以刪掉的,但如果你希望處理webp格式的圖片,一定要加上。

        用brew比較方便,自己不用操心環境變量了。

        GraphicsMagick

        當然,如果你不用ImageMagick,想用GraphicsMagick也是完全可以的:

        brew install graphicsmagick

        引用gm

        一開始我選擇了安裝ImageMagick,這么寫,總是報錯:

        const gm = require('gm');  gm('圖片文件路徑').crop(width, height, 0, 0).resize(width2, height2).quality(quality).write('輸出文件路徑', function (err) {   if (err) {     return console.log(err);   } else {     console.log('success');   } });

        如果要用ImageMagick,上面寫法其實是不對的,應該這樣寫,明確指定我要用ImageMagick工具:

        const g = require('gm'); const gm = g.subClass({imageMagick: true});  gm('圖片文件路徑').crop(width, height, 0, 0).resize(width2, height2).quality(quality).write('輸出文件路徑', function (err) {   if (err) {     return console.log(err);   } else {     console.log('success');   } });

        其它功能

        記錄一下gm的常用功能,供大家備忘:

        注意:gm是可以鏈式調用的,寫起來很爽,從gm(filename)讀取圖片文件,一層一層處理,最后寫入文件.write(filename, callback)。

        縮放圖片

        .resize(width, height)

        裁剪圖片

        .crop(width, height, x, y)

        旋轉圖片

        .rotate(color, deg)

        color是背景色(如果deg旋轉角度不是90的倍數,背景色就派上用場了,用'#ededed'這種格式就好)

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 91精品免费久久久久久久久| 国产亚洲精品无码专区| 亚洲国产精品自在线一区二区| 麻豆国产精品VA在线观看不卡| 精品国产第1页| 久久精品国产99久久无毒不卡| 欧美精品一区二区三区免费观看| 欧美精品香蕉在线观看网| 久久水蜜桃亚洲av无码精品麻豆| 精品一区二区三区免费视频 | 成人无码精品1区2区3区免费看| 亚洲国产精品一区二区三区久久| 国产精品国产欧美综合一区| 精品一区二区三区在线视频| 国产亚洲精品无码成人| 亚洲精品乱码久久久久久按摩 | 久草视频在线这里精品| 国产精品免费大片| 久久久无码人妻精品无码| 午夜国产精品无套| 久久精品夜色噜噜亚洲A∨| 88久久精品无码一区二区毛片| 国产精品毛片久久久久久久| 国产欧美日韩精品a在线观看| 四虎国产精品永久在线| 亚洲高清专区日韩精品 | 国产福利在线观看精品| 国内精品久久久久久99蜜桃| 精品久久无码中文字幕| 久久亚洲美女精品国产精品| 日韩精品一区二区三区色欲AV | 6080亚洲精品午夜福利| 99精品国产成人一区二区| 亚洲国产精品婷婷久久| 亚洲无删减国产精品一区| 2021最新国产精品一区| 国产成人精品亚洲精品| 国产精品主播一区二区| 精品乱码久久久久久夜夜嗨| 久久精品国产精品亚洲艾草网美妙| 久久亚洲国产精品123区|