久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長(zhǎng)資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      聊聊Nodejs怎么使用gm和imageMagick來(lái)處理圖片

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

      聊聊Nodejs怎么使用gm和imageMagick來(lái)處理圖片

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

      安裝依賴

      npm i gm

      gm是一個(gè)Node庫(kù),提供了一些JS API,讓開(kāi)發(fā)者可以處理圖片。但是它底層依賴了GraphicsMagick、要么或者ImageMagick。其實(shí)gm就是調(diào)用那兩個(gè)工具的命令行。

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

      ImageMagick

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

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

      brew install imagemagick --with-webp

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

      用brew比較方便,自己不用操心環(huán)境變量了。

      GraphicsMagick

      當(dāng)然,如果你不用ImageMagick,想用GraphicsMagick也是完全可以的:

      brew install graphicsmagick

      引用gm

      一開(kāi)始我選擇了安裝ImageMagick,這么寫(xiě),總是報(bào)錯(cuò):

      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,上面寫(xiě)法其實(shí)是不對(duì)的,應(yīng)該這樣寫(xiě),明確指定我要用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是可以鏈?zhǔn)秸{(diào)用的,寫(xiě)起來(lái)很爽,從gm(filename)讀取圖片文件,一層一層處理,最后寫(xiě)入文件.write(filename, callback)。

      縮放圖片

      .resize(width, height)

      裁剪圖片

      .crop(width, height, x, y)

      旋轉(zhuǎn)圖片

      .rotate(color, deg)

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

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)