가상 머신에 imagick 구성 요소와 사용할 글꼴을 설치했습니다.
사진:
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 구성 요소와 사용할 글꼴을 설치했습니다.
사진:
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을 사용하여 성공적으로 그림을 그리고 작성하고 있습니다. (테스트 환경 폰트는 운영 및 유지보수 담당자가 설치합니다.)