Rumah  >  Artikel  >  hujung hadapan web  >  Perkara yang perlu dilakukan jika nod gm melaporkan ralat

Perkara yang perlu dilakukan jika nod gm melaporkan ralat

藏色散人
藏色散人asal
2023-01-28 16:22:282377semak imbas

Penyelesaian kepada ralat yang dilaporkan oleh nod gm: 1. Pasang "ImageMagick 6.x"; 2. Tambah direktori pemasangan ImageMagick ke Laluan direktori persekitaran dan ubah suai kod kepada "require('gm'). subClass({ imageMagick: true});" Itu sahaja.

Perkara yang perlu dilakukan jika nod gm melaporkan ralat

Persekitaran pengendalian tutorial ini: sistem linux5.9.8, versi nod-v16.18.0, komputer DELL G3

nod ralat gm apa yang perlu dilakukan?

Koleksi pelbagai penyelesaian masalah tentang nodejs gm (aksara Cina yang kacau, lukisan tidak menepati, ������)

1. Aksara Cina bercelaru

graphicsmagick tidak menyokong lukisan fon Cina (tidak ditentukan)

Kaedah yang paling langsung dan berkesan pada masa ini ialah menggantikan ImageMagick (kedua-dua fungsi Tepat sama, tidak perlu risau)

Pasang pertama ImageMagick 6.x

(Untuk 7.x, sila semak pilihan "Pasang utiliti legasi (cth. tukar)" semasa pemasangan)

Perkara yang perlu dilakukan jika nod gm melaporkan ralat

Kemudian, tambahkan direktori pemasangan ImageMagick pada Laluan direktori persekitaran.

dan buat perubahan berikut pada kod anda:

const gm = require('gm')//原代码
const gm = require('gm').subClass({imageMagick: true});//修改后的代码

Seterusnya, semak sama ada anda telah menetapkan fon Cina dan sama ada pengekodan telah bertukar kepada Unicode.

Untuk fon Cina, saya syorkan menggunakan "Google Noto" Google, yang disokong dalam mana-mana bahasa pada asasnya.

Contoh:

const gm = require('gm').subClass({imageMagick: true});
var text = "你好!ImageMagick!";
var img = gm(800, 2000, "#ffffffff");//创建一个800x2000的图片
img.font("./Noto.ttf",36);//设置字体,字体大小
img.encoding('Unicode');//设置编码为Unicode
img.drawText(0, 50, "'" + text + "'");//此处 "'" 不能删除,删除会导致出现问题2(坑爹)
img.write("test.png", function (err) {if(err)console.error(err)});//写出图片

2 Ralat: Perintah gagal: tukar: tak mematuhi definisi primitif lukisan

untuk drawText Ia boleh diselesaikan. dengan menambah ' di kiri dan kanan teks (fungsi dengan teks boleh diselesaikan dengan cara ini)

Contoh:

img.drawText(0, 50, text);//错误
img.drawText(0, 50, "'" + text + "'");//正确方法

3. Ralat: Ralat: Perintah gagal : � �����

biasanya muncul dalam ImageMagick7.x dan selepas menetapkan imageMagick: true.

Pasang semula 7.x dan semak pilihan "Pasang utiliti legasi (cth. tukar)" semasa pemasangan.

Saya mengambil masa sehari untuk menyiapkan gm ini....

Pembelajaran yang disyorkan: "tutorial video node.js"

Atas ialah kandungan terperinci Perkara yang perlu dilakukan jika nod gm melaporkan ralat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn