AnyChat技术支持论坛

标题: 2018-04-03 增加在拍照中添加图片水印、文字水印功能 [打印本页]

作者: 佰锐科技-刘冬明    时间: 2018-4-3 17:43
标题: 2018-04-03 增加在拍照中添加图片水印、文字水印功能
本帖最后由 佰锐科技-刘冬明 于 2018-4-4 09:03 编辑

为了让产品更好地适应互联网金融的需求,AnyChat技术团队在最新更新的V7.0版本中增加了在拍照中添加图片水印文字水印功能。

实现方式:
拍照使用StreamRecordCtrlEx接口,在调用中,lpUserStr参数为Json字符串,使用“watermark”为关键字传入一个Json对象,用来定义图片水印;使用“textoverlay”为关键字传入一个Json对象,用来定义文字水印。

图片水印Json对象的关键字定义:
"alpha":图片透明度,默认为100,可不传(不传时,将应用默认值);
"posx":图片水印在x轴方向上的起始位置(百分比,范围0~100);
"posy":图片水印在y轴方向上的起始位置(百分比,范围0~100);
"overlayimgwidth":图片的宽度,可传0,表示应用图片的原始宽度,传其他值时建议按高宽度比例来设置;
"overlayimgheight":图片的高度,可传0,表示应用图片的原始高度,传其他值时建议按高宽度比例来设置;
"imagepath":图片的路径,传入图片的本地路径(绝对路径);

文字水印Json对象的关键字定义:
"fontcolor":文字颜色,文字默认为白色(0xffffff,颜色值采用十六进制rgb格式),可不传(不传时,将应用默认值);
"alpha":文字的透明度,默认为100,可不传(不传时,将应用默认值);
"posx":文字水印在x轴方向上的起始位置(百分比,范围0~100);
"posy":文字水印在y轴方向上的起始位置(百分比,范围0~100);
"fontsize":文字大小,默认为23号大小,可不传(不传时,将应用默认值);
"text":文字内容,若加上[timestamp],则表示增加时间戳;

示例代码:
以本地拍照为例,JavaScript示例代码如下:
  1. //图片水印对象
  2. var szJsonBuf4Img = {
  3. alpha: 50,
  4. posx: 8,
  5. posy: 8,
  6. overlayimgwidth: 0,
  7. overlayimgheight: 0,
  8. imagepath: "d:\\bairui.png"
  9. };

  10. // 文字水印对象
  11. var szJsonBuf4Txt = {
  12. fontcolor: "0xffffff",
  13. alpha: 100,
  14. posx: 5,
  15. posy: 5,
  16. fontsize: 18,
  17. text: "HelloAnyChat[timestamp]"
  18. };
  19.                
  20. // 水印对象,可同时添加图片水印、文字水印,也可以只添加一种水印
  21. var jsonObj = {            
  22. watermark: szJsonBuf4Img,
  23. textoverlay: szJsonBuf4Txt
  24. };
  25. var flags=BRAC_RECORD_FLAGS_SNAPSHOT+BRAC_RECORD_FLAGS_LOCALCB;
  26. //拍照
  27. BRAC_StreamRecordCtrlEx(-1, 1, flags, 0, JSON.stringify(jsonObj));
复制代码


拍照文件效果:









欢迎光临 AnyChat技术支持论坛 (http://bbs.anychat.cn/) Powered by Discuz! X3