>  기사  >  웹 프론트엔드  >  node gm이 오류를 보고하는 경우 수행할 작업

node gm이 오류를 보고하는 경우 수행할 작업

藏色散人
藏色散人원래의
2023-01-28 16:22:282377검색

Node gm 오류 해결 방법: 1. "ImageMagick 6.x"를 설치합니다. 2. ImageMagick 설치 디렉터리를 환경 디렉터리 경로에 추가하고 코드를 "require('gm').subClass({imageMagick: true} );" 바로 그거예요.

node gm이 오류를 보고하는 경우 수행할 작업

이 튜토리얼의 운영 환경: linux5.9.8 시스템, node-v16.18.0 버전, DELL G3 컴퓨터

node gm이 오류를 보고하면 어떻게 해야 합니까?

nodejs gm에 관한 다양한 문제 해결 방법 모음(중국어 왜곡 코드, 부적합 도면, ��Ч����)

1. 중국어 왜곡 코드

graphicsmagick은 중국어 글꼴을 지원하지 않습니다. 그림 (미정)

현재 가장 직접적이고 효과적인 방법은 ImageMagick을 교체하는 것입니다. (두 기능은 완전히 동일하므로 걱정할 필요가 없습니다.)

먼저 ImageMagick 6.x를 설치하세요

(7.x의 경우 확인하세요) 설치 중 "설치" "레거시 유틸리티(예: 변환)" 옵션 확인)

node gm이 오류를 보고하는 경우 수행할 작업

그런 다음 ImageMagick 설치 디렉터리를 환경 디렉터리 Path에 추가합니다.

그리고 코드를 다음과 같이 변경하세요.

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

다음으로 중국어 글꼴을 설정했는지, 인코딩이 유니코드로 전환되었는지 확인하세요.

중국어 글꼴의 경우 기본적으로 모든 언어에서 지원되는 Google의 "Google Noto"를 사용하는 것이 좋습니다.

예:

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. 오류 발생: 오류: 명령 실패: 변환: 부적합한 도면 기본 정의

drawText의 텍스트 왼쪽과 오른쪽에 '를 추가하여 문제를 해결합니다. 해결 방법)

예:

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

3. 오류: 오류: 명령 실패: ��Ч����

는 일반적으로 ImageMagick7.x에 나타나고 imageMagick: true를 설정한 후에 나타납니다.

7.x를 다시 설치하고 설치 중에 "레거시 유틸리티(예: 변환) 설치" 옵션을 확인하세요.

이 GM을 고치는 데 하루 종일 걸렸습니다....

추천 학습: "node.js 비디오 튜토리얼"

위 내용은 node gm이 오류를 보고하는 경우 수행할 작업의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.