gm é um plug-in de processamento de imagem baseado em node.js. Ele encapsula as ferramentas de processamento de imagem GraphicsMagick (GM) e ImageMagick (IM) e pode ser chamado usando spawn. O plug-in gm não é instalado por padrão no node. Você precisa executar "npm install gm -S" para instalá-lo antes de poder ser usado.

O ambiente operacional deste tutorial: sistema Windows 7, nodejs versão 16, computador DELL G3.
O que é gm,
um plug-in para ferramentas de processamento de imagem nodejs - gm, que encapsula GraphicsMagick (GM) e ImageMagick (IM), que é chamado usando spawn.
UseGraphicsMagick (GM) ou ImageMagick (IM) são duas ferramentas de processamento de imagem comumente usadas com basicamente as mesmas funções. GM é um ramo do IM.
o software de pré-instalação
da ferramenta de processamento de imagem nodejs gm
parainstalar GraphicsMagick ou ImageMagick
(o software IM suportado pelo plug-in gm é a versão imagemagickv7.0.X.XX. Se a versão IM baixada for 7.1.x, o gm a chamada não será bem-sucedida. Atualmente, é oficial. A versão fornecida é 7.1.x), o endereço de download 7.0.x é http://m.downcc.com/d/398765.
Durante a instalação, você deve selecionar a parte do porta-retratos ao instalar o ImageMagick (o plug-in gm chama o comando convert)

Instalar gm
npm instalar gm -S
Adicionar marca d'água
Usar gm é usado principalmente para adicionar marcas d'água, porque o módulo de imagem que vem com nodejs pode atender à maioria das necessidades, mas não pode adicionar marcas d'água, então o método a seguir usa gm para adicionar marcas d'água.
Carregue o módulo gm
const gm = require('gm').subClass({imageMagick: true}) Especifique a imagem para adicionar texto
gm(./uploads/pic/test.jpg) //Especifique a imagem para adicionar watermark.stroke ("branco") //Fonte externa color.fill("branco") //Cor da fonte interna (o padrão é preto se não definido)
.drawText(50,50,"China")
.write(./uploads/pic/watermark.jpg, função (erro) {
console.log(erro)
if (!err) console.log('ok');
senão console.log(erro);
}); 
Adicione font.font chinês
("./ttf/msyh.ttf",60) //A pasta onde a fonte está localizada e o tamanho da fonte gm(./uploads/pic/test.jpg) //Especifique a imagem a ser adicionada the watermark.stroke(" white") //Fonte externa color.fill("white") //Cor da fonte interna (o padrão é preto se não definido)
.font("./ttf/msyh.ttf",60) //A pasta onde a biblioteca de fontes está localizada e o tamanho da fonte.drawText(50,50,"中文China")
.write(./uploads/pic/watermark.jpg, função (erro) {
console.log(erro)
if (!err) console.log('ok');
senão console.log(erro);
}); 
Adicionar marca d'água de data
para
baixar o módulo de momento
npm install moment
load module
const moment = require('moment') ;
gm(./uploads/pic/test.jpg) //Especifique a imagem para adicionar watermark.stroke("white") //Fonte externa color.fill("white") //Cor da fonte interna (o padrão é preto se não definir) )
.font("./ttf/msyh.ttf",60) //A pasta onde a biblioteca de fontes está localizada e o tamanho da fonte.drawText(50,50,datetime)
.write(./uploads/pic/watermark.jpg, função (erro) {
console.log(erro)
if (!err) console.log('ok');
senão console.log(erro);
}); 