Lodop中的ADD_PRINT_IMAGE,也可以直接输出base64码图片,不用加img标签,如果加了img标签,会被当做超文本对待,受浏览器引擎解析的影响。

什么时候使用base64码直接输出比较好:
1.低版本IE解析不了带img标签的base64码输出方式。
一些低版本的的IE不支持base64码图片,这种时候用img+base64码,浏览器引擎不支持就无法解析,例如IE6、IE7等,这时候可以换用直接输出base64码不加img标签方式。

2.批量打印大量的图片:
批量打印很大数量的图片,如果用img标签超文本输出方式,IE引擎需要下载解析很多图片,受IE浏览器本身的限制,浏览器解析影响的,缓存有时不释放或释放的慢,可能打了一段时间后会突然不显示图片了,变成空白页。
这种时候可以改用直接输出base64码方式,不需要浏览器解析,不受浏览器引擎的影响。

Lodop图片输出ADD_PRINT_IMAGE 有白边
之前有博文介绍凡是输出img标签的,受浏览器解析的影响,会有浏览器背景色的白边,如果是护眼色,就是护眼色的白边。
直接输出base64码方式由于不经过浏览器解析,也不会产生白边。

由于参数太长,图片和代码省略了很多该base64码,且用了\r\n换行。

加img标签的base64码输出图片
直接输出base64码的图片(不加img标签)
低版本IE解析不了带img标签的base64码输出方式时,可用该直接输出base64码方法。
批量打印大量的图片时,可以用该直接输出base64码方法。
效果如图。

代码 :

<script language="javascript" type="text/javascript">
var LODOP; //声明为全局变量
function prn1_preview() {
LODOP=getLodop();
LODOP.PRINT_INIT("");//初始化
LODOP.ADD_PRINT_SHAPE(4,-1,0,216,343,0,1,"#000000");
LODOP.ADD_PRINT_IMAGE(10,10,172,123,"data:image/png;base64,\r\niVBORw0KGgoAAAANSUhEUgAAAJAAAABfCAIAAACImtmOAAAACXBIWXMAAAsTAAALEwEAmpwYAAAK\r…………(省略)");
LODOP.ADD_PRINT_IMAGE(200,10,172,123,"<img src=\"data:image/png;base64,\r\niVBORw0KGgoAAAANSUhEUgAAAJAAAABfCAIAAACImtmOAAAACXBIWXMAAAsTAAALEwEAmpwYAAAK\r…………(省略)"/>");
LODOP.PRINT_DESIGN();
};
</script>

图片:

LODOP直接用base64码输出图片的更多相关文章

  1. base64码转图片

    1将图片转换为Base64编码,可以让你很方便地在没有上传文件的条件下将图片插入其它的网页.编辑器中. 这对于一些小的图片是极为方便的,因为你不需要再去寻找一个保存图片的地方. 2.假定生成的代码为& ...

  2. java BASE64流 输出图片。

    亲测3个请求都可用,没有测试性能问题.仅供参考 BASE64Decoder Eclipsse 类可能引用不了解决方案链接:http://blog.csdn.net/JBxiaozi/article/d ...

  3. 使用java将base64码与图片互转!

    本篇文章主要介绍了java 后台将base64字符串保存为图片的方法,现在分享给大家,也给大家做个参考. import java.io.FileInputStream; import java.io. ...

  4. 前端以BASE64码的形式上传图片

    前端以BASE64码的形式上传图片 一直有一个很苦恼的问题困扰着铁柱兄,每次上传图片的时候前端要写一大堆js,然后后台也要写一堆java代码做处理.于是就在想,有没有简单又方便的方法把图片上传.今天算 ...

  5. 直接用<img> 的src属性显示base64转码后的字符串成图片

    直接用<img> 的src属性显示base64转码后的字符串成图片 <img src="base64转码后的字符串" ></img> 下面的图片 ...

  6. 直接用<img> 的src属性显示base64转码后的字符串成图片【原】

    直接用<img> 的src属性显示base64转码后的字符串成图片 <img src="data:image/gif;base64,base64转码后的字符串" ...

  7. JS将图片转换成Base64码

    直接上代码 html页面代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...

  8. 直接用nose进行django项目测试并输出html报告

    先说需求:1.测试django项目:2.打印测试报告(html格式)有以下几种测试方法:1.django自带的测试模块.在app目录下的tests.py文件中写测试类,类似这样: class MyTe ...

  9. node 把前台传来的base64码转成图片存放

    最近做个人网站头像修改用到了,在做头像修改,先做了一个图片切割,只需要上传你选中部分, 如图 这种需求 应该还是会遇到的, http://pan.baidu.com/s/1boVkn1t 这是裁剪图片 ...

随机推荐

  1. Python 使用 distutils 工具安装的扩展包的卸载

    Python 编写完扩展包并 build 好后,可以采用 $ sudo ./setup.py install 安装.采用这种方式安装的扩展包,可以使用 pip list 查看到,但不能直接使用 pip ...

  2. Ubuntu 14.04 安装 CUDA 问题及解决

    本文安装环境: - 双显卡: intel 集显 + nvidia 独显 - Ubuntu 14.04.4 - CUDA 8.0.44 1. Deb 安装包是个坑 (不要用这种方法!) 使用 Deb 安 ...

  3. AI R-CNN目标检测算法

    Region-CNN,简称R-CNN,是首次将深度学习应用于目标检测的算法. bounding box IOU 非极大值抑制 selective search 参考链接: https://blog.c ...

  4. Java IO(二)——RandomAccessFile

    一.RandomAccessFile RandomAccessFile类可以说是Java语言中功能最为丰富的文件访问类,它提供了众多的文件访问方法.RandomAccessFile类支持"随 ...

  5. 【转】【强化学习】Deep Q Network(DQN)算法详解

    原文地址:https://blog.csdn.net/qq_30615903/article/details/80744083 DQN(Deep Q-Learning)是将深度学习deeplearni ...

  6. Scala学习(八)练习

    Scala中继承&练习 1. 扩展如下的BankAccount类,新类CheckingAccount对每次存款和取款都收取1美元的手续费 class BankAccount ( initial ...

  7. MySQL常用SQL语句/函数/存储过程

    一句话总结 SELECT count(*) FROM user WHERE id>0 GROUP BY name HAVING count(*)>1 ORDER BY count(*)DE ...

  8. 抓包工具Charles的使用心得

    简介 Charles其实是一款代理服务器,通过成为电脑或者浏览器的代理,然后截取请求和请求结果达到分析抓包的目的.该软件是用Java写的,能够在Windows,Mac,Linux上使用.开发iOS都在 ...

  9. ElasticSearch 分组查询的几个例子

    facets接口可以根据query返回统计数据,其中的 terms_stats 是分组统计,根据key的情况返回value的统计数据,类似group by的意思. "terms_stats& ...

  10. iOS开发之线程组解决请求多个接口数据,完成后,再刷新界面

    1.多任务请求接口,完成后,在刷新数据,常用方法 2018年07月18日 16:34:38 hbblzjy 阅读数:1382 版权声明:本文为博主原创文章,未经博主允许不得转载. https://bl ...