>  기사  >  백엔드 개발  >  imagemag 설정 글꼴 문제

imagemag 설정 글꼴 문제

WBOY
WBOY원래의
2016-08-25 10:37:311668검색

가상 머신에 imagick 구성 요소와 사용할 글꼴을 설치했습니다.
사진:
imagemag 설정 글꼴 문제

Imagick 드로잉 부품 코드는 다음과 같습니다.

<code>
$imagick = new Imagick($template_image);
$draw = new ImagickDraw();
$draw->setFillColor('black');
$draw->setFont('/usr/share/fonts/wqy-microhei.ttc');
$draw->settextencoding('utf-8');
$draw->setFontSize(30);
imagick_add_text($imagick,$draw,"测试", 302, 688, 130,'#33BAF6');</code>

작성 기능:

<code>function imagick_add_text(&$imagick, &$draw, $text, $x = 0, $y = 0, $font_size = 12, $fill_color = 0, $text_kerning = 0) {
    if (isset($font_size))
        $draw->setFontSize($font_size);
    if (isset($fill_color))
        $draw->setFillColor($fill_color);
    if (isset($text_kerning))
        $draw->setTextKerning($text_kerning);
    $imagick->annotateImage($draw, $x, $y, 0, $text);
}</code>

지금 문제는 $draw->setFont() 이 단계에서는 오류가 없어 글꼴 설정이 성공했음을 의미하지만 $imagick->annotateImage()즉, 그리기 단계에서는 오류가 있다는 것입니다.
왜, 폰트 문제인가요?

참고:
1. 저는 개발을 위해 vagrant 가상 환경을 사용합니다.
2. 테스트 환경에는 동일한 폰트가 설치되어 있으며, imagick을 사용하여 성공적으로 그림을 그리고 작성하고 있습니다. (테스트 환경 폰트는 운영 및 유지보수 담당자가 설치합니다.)

답글 내용:

가상 머신에 imagick 구성 요소와 사용할 글꼴을 설치했습니다.
사진:
imagemag 설정 글꼴 문제

Imagick Drawing 부분의 코드는 다음과 같습니다.

<code>
$imagick = new Imagick($template_image);
$draw = new ImagickDraw();
$draw->setFillColor('black');
$draw->setFont('/usr/share/fonts/wqy-microhei.ttc');
$draw->settextencoding('utf-8');
$draw->setFontSize(30);
imagick_add_text($imagick,$draw,"测试", 302, 688, 130,'#33BAF6');</code>

작성 기능:

<code>function imagick_add_text(&$imagick, &$draw, $text, $x = 0, $y = 0, $font_size = 12, $fill_color = 0, $text_kerning = 0) {
    if (isset($font_size))
        $draw->setFontSize($font_size);
    if (isset($fill_color))
        $draw->setFillColor($fill_color);
    if (isset($text_kerning))
        $draw->setTextKerning($text_kerning);
    $imagick->annotateImage($draw, $x, $y, 0, $text);
}</code>

지금 문제는 $draw->setFont() 이 단계에서는 오류가 없어 글꼴 설정이 성공했음을 의미하지만 $imagick->annotateImage()즉, 그리기 단계에서는 오류가 있다는 것입니다.
왜, 폰트 문제인가요?

참고:
1. 저는 개발을 위해 vagrant 가상 환경을 사용합니다.
2. 테스트 환경에는 동일한 폰트가 설치되어 있으며, imagick을 사용하여 성공적으로 그림을 그리고 작성하고 있습니다. (테스트 환경 폰트는 운영 및 유지보수 담당자가 설치합니다.)

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