如何解决如何使用Codeigniter ImageMagick一次放置多个水印文本
我们正在使用 codeigniter ImageMagick 库进行图像处理,并在原始图像的不同位置生成一些动态文本。
这是用于水印的示例部分脚本 -
$config['image_library'] = 'imagemagick'; //default value
$config['wm_type'] = 'text';
$config['wm_font_path'] = './system/fonts/SourceSansPro-Regular.ttf';
$config['wm_font_size'] = 20;
$config['wm_font_color'] = '#0000';
$config['wm_x_transp'] = 4;
$config['wm_y_transp'] = 4;
$config['wm_vrt_alignment'] = 'T';
$config['wm_hor_alignment'] = 'L';
############
## To place repoter name ($rep_Name)
$config['source_image'] = $jpg_image_output_path; //get original image
$config['wm_text'] = $rep_Name;
$config['wm_hor_offset'] = 100;
$config['wm_vrt_offset'] = 610;
$this->image_lib->initialize($config);
if (!$this->image_lib->watermark()) {
echo $this->image_lib->display_errors();
}
## To place repoter address ($rep_Address)
$config['source_image'] = $jpg_image_output_path; //get original image
$config['wm_text'] = $rep_Address;
$config['wm_hor_offset'] = 100;
$config['wm_vrt_offset'] = 640;
$this->image_lib->initialize($config);
if (!$this->image_lib->watermark()) {
echo $this->image_lib->display_errors();
}
## To place reporter telephone ($rep_Telephone)
$config['source_image'] = $jpg_image_output_path; //get original image
$config['wm_text'] = $rep_Telephone;
$config['wm_hor_offset'] = 385;
$config['wm_vrt_offset'] = 640;
$this->image_lib->initialize($config);
if (!$this->image_lib->watermark()) {
echo $this->image_lib->display_errors();
}
...
...
还有更多像上面这样的大约 50+ 种将不同的水印文本放置在不同的偏移位置。
它工作正常,但问题是系统需要很长时间才能单独执行带有 50 多个水印的完整脚本。每次系统触发 $this->image_lib->initialize($config) 和 $this->image_lib->watermark() 都需要时间。
有没有办法一次执行所有水印。假设我将传递一个包含文本和偏移值的数组并初始化和水印将触发一次?
请帮忙。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。