codeigniter - 如何使用 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() 都需要时间。
有没有办法一次执行所有水印。假设我将传递一个包含文本和偏移值的数组并初始化,水印将触发一次?
请帮忙。
解决方案
推荐阅读
- python - 训练图像上多目标的检测和分类
- node.js - Angular 不发送 Cookie
- java - 使用EditText将字符串文字传递给android studio中的存储过程?
- flutter - 溢出容器顶部的可扩展按钮
- json - 无法从 REST API 读取 JSON
- eclipse - 在 Eclipse 4.17 (2020-09) 中离线安装 Groovy 和 Gradle 插件
- flutter - Flutter Chopper:如何创建具有多种服务的客户端?
- python-3.x - 带有 selenium 的 Python:无法定位元素 xpath
- r - prediction_summary() 中的置信区间长度
- django-forms - 如何在 Django Wagtail 的小部件中找出当前登录的用户