키 포인트 :
Imagick은 텍스트 워터 마크 추가를 포함하여 이미지를 처리하는 데 사용할 수있는 강력한 PHP 확장 라이브러리입니다.
annotateImage()
이미지에 텍스트를 그립니다
반응 형 PHP 코드 :
setFillColor()
setFontSize()
글꼴 마스크를 사용하여 투명 텍스트를 만듭니다
setFont()
<: :> PHP 코드 :
setFillOpacity()
annotateImage()
는 그레이 스케일 이미지이며, 두 번째 이미지 $watermark
는 순수한 검은 색을 사용하여 부품을 투명하고 흰색으로 표시하여 보유 할 부분을 나타냅니다. 조합 이미지를 통해 마스크를 적용 할 때, $mask
에서 발견되는 회색 그림자는 반 알리 아스 효과로 인해 반투명 해져서 더 부드러운 가장자리가 생깁니다. 명령 줄 버전 코드에서 투명 이미지의 외부 가장자리는 워터 마크를 오버레이하기 전에 자르지 만 $mask
메소드가 에 의해 정의 된 위치를 유지하는 것을 방지하는 버그가있는 것 같습니다. 즉, 가장자리가 자르면 워터 마크가 오른쪽 하단 위치를 잃고 왼쪽 상단 모서리로 재배치됩니다. 이 문제를 해결하기 위해 생성 된 컬러 팔레트는 소스 이미지와 크기가 동일하므로 자르기가 발생하지 않습니다. compositeImage()
setGravity()
텍스트 타일링
convert image.png -font Arial -pointsize 20 \ -draw "gravity south \ fill black text 0,12 'Copyright' \ fill white text 1,11 'Copyright'" \ result.png
<?php // 创建对象 $image = new Imagick('image.png'); // 水印文本 $text = 'Copyright'; // 创建新的绘图面板 $draw = new ImagickDraw(); // 设置字体属性 $draw->setFont('Arial'); $draw->setFontSize(20); $draw->setFillColor('black'); // 将文本定位在图像的右下角 $draw->setGravity(Imagick::GRAVITY_SOUTHEAST); // 在图像上绘制文本 $image->annotateImage($draw, 10, 12, 0, $text); // 稍微偏移位置,使用不同的颜色再次绘制文本 $draw->setFillColor('white'); $image->annotateImage($draw, 11, 11, 0, $text); // 设置输出图像格式 $image->setImageFormat('png'); // 输出新图像 header('Content-type: image/png'); echo $image; ?>
<<> (Fotolia의 그림)
<🎜 🎜> <<> (다음은 FAQ이며, 형식과 내용은 원래 텍스트에 따라 조정되었으며 의사 원리 창작물이 만들어졌습니다) <🎜 🎜>
<<> Q : PHP에서 Imagick을 사용하여 이미지에 텍스트 워터 마크를 추가하는 방법은 무엇입니까? setFillOpacity()
<<>
<<> Q : imagick에서 Watermark 텍스트의 글꼴 색상을 변경하는 방법은 무엇입니까? <<>
<<> Q : imagick에서 Watermark 텍스트의 글꼴 크기를 변경하는 방법은 무엇입니까?
<<>convert image.png -font Arial -pointsize 20 \ -draw "gravity south \ fill black text 0,12 'Copyright' \ fill white text 1,11 'Copyright'" \ result.png
<<> Q : Imagick에서 Watermark 텍스트의 글꼴을 변경하는 방법은 무엇입니까? <<>
<🎜 🎜> <<> Q : Imagick에서 Watermark 텍스트를 회전시키는 방법은 무엇입니까?
<<><?php // 创建对象 $image = new Imagick('image.png'); // 水印文本 $text = 'Copyright'; // 创建新的绘图面板 $draw = new ImagickDraw(); // 设置字体属性 $draw->setFont('Arial'); $draw->setFontSize(20); $draw->setFillColor('black'); // 将文本定位在图像的右下角 $draw->setGravity(Imagick::GRAVITY_SOUTHEAST); // 在图像上绘制文本 $image->annotateImage($draw, 10, 12, 0, $text); // 稍微偏移位置,使用不同的颜色再次绘制文本 $draw->setFillColor('white'); $image->annotateImage($draw, 11, 11, 0, $text); // 设置输出图像格式 $image->setImageFormat('png'); // 输出新图像 header('Content-type: image/png'); echo $image; ?>
<<> Q : imagick에 워터 마크 이미지를 저장하는 방법은 무엇입니까? <<>
<<> Q : imagick에서 워터 마크 텍스트에 그림자를 추가하는 방법?
convert -size 300x50 xc:grey30 -font Arial -pointsize 20 \ -gravity center -draw "fill grey70 text 0,0 'Copyright'" \ fgnd.png convert -size 300x50 xc:black -font Arial -pointsize 20 -gravity center \ -draw "fill white text 1,1 'Copyright' \ text 0,0 'Copyright' \ fill black text -1,-1 'Copyright'" \ +matte mask.png composite -compose CopyOpacity mask.png fgnd.png stamp.png mogrify -trim +repage stamp.png composite -gravity south -geometry +0+10 stamp.png image.png \ result.png
Q : imagick의 여러 이미지에 워터 마크 텍스트를 추가하는 방법은 무엇입니까?
위 내용은 PHP 마스터 | Imagick과 함께 텍스트 워터 마크 추가의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!