0

CodeIgniters Image Manipulation ライブラリを使用して画像に複数行の透かしを入れようとしていますが、うまくいきません。

私はテキストを設定しています

$config['source_image']= $newFile;
$str = '';
$str.='Px: ';
$str .= $config['width'];
$str .= "\r\n";
$str.=' | Qual: '.$config['quality'];
$str .= "\n";
$str.=' Size: '.$size;
$str .= "<br />";
$str.=' File: '.$fileName;  
$config['wm_text'] = $str;

ドキュメントには言及されておらず、ここやGoogleでそれについて何も見ることができません。それは重要ではありません - これは個人的なプロジェクトにすぎませんが、できるようになりたいと思っています。

4

2 に答える 2

1

system/libraries の Image_lib.php クラスを見ると、imagettftext関数が使用されていることがわかります。

imagettftext($src_img, $this->wm_font_size, 0, $x_shad, $y_shad, $drp_color, $this->wm_font_path, $this->wm_text);

この$y_shad変数は、提供されるテキスト全体の垂直方向のオフセットを決定します。改行が必要な場合は、テキスト変数を配列にしてから、foreach ループを使用して各行 (つまり、配列内の各項目) の垂直方向のオフセットを増やす必要があります。

ただし、これを実現するには、CI の Image_lib.php クラス内のメソッドを大幅に変更するtext_watermark必要があります。テキスト変数を単純な文字列ではなく配列として扱うことになるからです。したがって、不可能ではありませんが、達成するのはかなり退屈であり、そのため、おそらく努力する価値はありません...

于 2013-06-06T12:43:41.500 に答える