溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么使用Node.js的gm模塊處理圖片

發(fā)布時間:2022-01-21 10:42:29 來源:億速云 閱讀:323 作者:iii 欄目:web開發(fā)

本文小編為大家詳細介紹“怎么使用Node.js的gm模塊處理圖片”,內(nèi)容詳細,步驟清晰,細節(jié)處理妥當,希望這篇“怎么使用Node.js的gm模塊處理圖片”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

  構(gòu)造參數(shù)說明

  encoding 設置接收數(shù)據(jù)編碼,默認是utf-8

  maxFieldsSize 限制字段可以分配的內(nèi)存量,默認2M

  maxFields 限制在發(fā)出錯誤事件之前將要解析的字段數(shù),默認1000

  maxFilesSize 限制總文件大小,默認無窮大

  autoFields 啟用字段事件并禁用字段的部分事件。如果添加字段偵聽器,則自動將其設置為true。

  autoFiles 啟用文件事件并禁用文件的部分事件。如果添加了一個文件偵聽器,則自動將其設置為true。

  uploadDir 文件上傳的目錄

  ==如果回調(diào)提供,autofields和autofiles被設置為true,所有字段和文件的收集和傳遞給回調(diào),不再需要聽任何形式的事件。==

  事件說明

  part 請求文件數(shù)據(jù)時觸發(fā),回調(diào)函數(shù)是一個實現(xiàn)可讀流的實例對象

  headers:頭部文件

  name:字段名稱

  filename:文件名稱

  byteFffset:主體數(shù)據(jù)的字節(jié)偏移量

  byteCount:數(shù)據(jù)總的字節(jié)長度

  aborted 在請求中止時觸發(fā)

  close 在請求結(jié)束之后觸發(fā)

  file 接收到文件的參數(shù)

  name:字段名稱

  file:存儲著文件信息的對象

  fieldName:字段名稱

  originalFilename:文件名稱

  path:寫到磁盤上文件的具體路徑

  headers:存儲著頭部信息

  size:文件具體大小

  field 獲取請求的具體數(shù)據(jù)?;卣{(diào)函數(shù)兩個參數(shù)

  name:字段名

  value:字段值

  ==注意使用part事件時,如果同時監(jiān)聽fields和files事,part事件會獲取不到數(shù)據(jù)。==

  更多說明

  一般來說上傳圖片都會進行簡單的處理,例如無損畫質(zhì)壓縮,縮略圖生成等

  1、用 resize-img 進行縮略圖制作

  安裝組件

  npm install --save resize-img

  代碼實現(xiàn)

  2、使用python圖片處理庫PIL

  為什么使用python?

  CPU密集型任務是Node.js的軟肋,當服務器同時執(zhí)行多個圖片處理時(特別是比較大的圖片時),會出現(xiàn)BUG,所以我們可以選用python圖片處理庫PIL

  PIL安裝

  python實現(xiàn)

  node調(diào)用pyhton

  這里我推薦使用第二種方法

讀到這里,這篇“怎么使用Node.js的gm模塊處理圖片”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內(nèi)容的文章,歡迎關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI