概述

在《像 word 一样增加水印功能》中,已经介绍了如何在润乾报表中增加文字水印功能,包括了静态及动态水印。水印功能将标识信息嵌入到报表载体后,使得信息安全、版权保护有了更有效的方法。

水印除了纯文字形式,还有一种情况采用图片的形式,比如常用的 Logo。

整体效果如下

Logo 如下(为了看得更清晰,logo 用较大点的图片)

《像 word 一样增加水印功能》文中介绍的方式目前仅支持纯文字形式的,想实现如 Logo 图片一样的水印功能,在产品中并没有明确指出,所以要重新考虑解决方式。

功能分析

因为涉及到图片,所以还要从润乾报表在图片的支持情况上考虑。

1、 单元格图片:水印是对整个报表页面添加,单元格图片显然不可行,总不能给每个单元格都设置上图片,再者设置为图片后也就没办法再搞数据了。

2、 数据图层:该功能也可以为报表添加图片。但是,尽管可以定义该图层的大小,但是也仅能支持一张图片的缩放,也没法实现想要的水印效果。

3、 背景图:背景图是为整个报表设置,同时在“样式”上也支持“平铺”模式,这显然也更能符合水印的效果。

具体实现过程

找到可实现的方式后,接下来将实现的过程操作一遍。

1, 准备一张报表,并将单元格背景色设置为透明

注意:为了整体效果,此处最好将整行都个报表都设置为透明背景。

2, 将 logo 图片放至应用下

此处为设计器安装环境,将 logo 图片(logo.png)放在 demo/WEB-INF/reportFiles 下。

注:也可以是一个 url 地址

3, 为报表添加背景图,并将“样式”设置为“平铺”

4, 查看 web 端效果

总结

以上是实现图片水印效果的方式,操作过程相对比较简单,主要是找到这个更合理的解决的方法。当然,这个实现也有缺点,比如无法让水印随意按角度倾斜、要求报表单元格的背景透明等。不过倾斜问题,稍微辛苦点就是让美工同学们给提供一个倾斜角度的 logo 图片,也可轻松实现。

文字水印参考:《像 word 一样增加水印功能》
更多前端效果类问题请查看:报表样式汇总导航
* 动态文字水印怎么做
* web 报表轻松实现数据异常预警功能
* 报表工具如何实现“点击查看原图
* 润乾报表中进度条的一种实现方式
* 报表怎样实现滚动的公告效果?

Logo(图片)作为报表水印的解决方法的更多相关文章

  1. ubuntu下Chrome谷歌浏览器部分网站图片显示不正常的解决方法

    title: ubuntu下Chrome谷歌浏览器部分网站图片显示不正常的解决方法 toc: false date: 2018-09-02 14:37:26 categories: methods t ...

  2. WPF图片放大后模糊的解决方法

    原文:WPF图片放大后模糊的解决方法 WPF中显示图片的方式很多,可以用Image控件来显示图像,或者直接设置一个控件的Background.图片的放大也很简单,直接设置显示图片的控件的Width和H ...

  3. css文字环绕图片--遇到的问题及解决方法

    一.前言 需要实现一个文字环绕图片的效果,心想so easy嘛. 1)代码部分 <style> .img-left { border: 3px solid #005588; width:3 ...

  4. phpcms v9图片生成缩略图变成黑色解决方法

    今天客户反映,上传的图片生成缩略图有的图片变成黑色,出现问题就百度了一下,有不少网友也遇到这样的问题,但是官方论坛也没有给出解决办法,那还得靠自己解决了,于是就研究phpcms v9 图片压缩代码.打 ...

  5. 只有图片拼接的html页面图片之间有白条的解决方法

    有时候会有这样的页面,整个页面也就是几张切好的图片组成,但是把这些图片使用代码拼接好,又总会出现图片间有白条的问题,如下图: 解决方法:给图片的父容器添加 line-height: 0; 就好了,因为 ...

  6. 织梦DEDECMS更换目录后页面内的图片和缩略图无法显示解决方法

    http://www.win8f.com/seoyouhua/6609.html 很多人碰到织梦更换目录后内容图片和缩略图无法显示的问题,在此,慧鸿网络特地搜集整理了一篇关于织梦出现缩略图和内容无法显 ...

  7. 在Android开发中替换资源图片不起作用的解决方法

    现象 在android开发中,经常会需要替换res\drawable中的图片,打开res\layout下的文件预览布局页面发现图片已经被替换,但在模拟器或者真实机器上运行时发现该图片并没有被替换,还是 ...

  8. IE PNG格式的图片不现实的的解决方法

    可能是安装某些软件导致注册表缺失png的一些设置 ,网上找了好些办法都是修改注册表的. 终于找到傻瓜式的解决方法:将下面的代码复制到txt中 另存为reg后缀格式,双击运行即可,然后重新打开IE 完事 ...

  9. 编资源bundle时图片文件变成tiff的解决方法

    一般,编写SDK的时候,如果SDK还带了一些资源文件,那么最理想的是将资源文件也打包成为bundle给应用方一起使用.而在编资源bundle时,有时会发现编译好后的图片文件从png转成了tiff,这样 ...

随机推荐

  1. MongoDB一次节点宕机引发的思考(源码剖析)【华为云分享】

    目录 简介 日志分析 副本集 如何实现 Failover 心跳的实现 electionTimeout 定时器 业务影响评估 参考链接 声明:本文同步发表于 MongoDB 中文社区,传送门:http: ...

  2. JavaScript基础4

    数组 创建数组  A.通过构造函数创建数组 * a): var arr=new Array();//定义一个空数组,无长度的空数组. * b):var arr1=new Array(num); * 当 ...

  3. 计蒜客-蒜场抽奖(AC自动机+状态压缩DP)

    题解:题意不再说了,题目很清楚的. 思路:因为N<=10,所以考虑状态压缩 AC自动机中 val[1<<i]: 表示第i个字符串.AC自动机中fail指针是指当前后缀在其他串里面所能 ...

  4. 转化欧拉回路(难题)-UESTC-1957励志的猴子

    励志的猴子 Time Limit: 1000 MS     Memory Limit: 256 MB Submit Status 上图是2013南京亚青会吉祥物圆圆.自从它诞生以来,它就被吐槽为最丑吉 ...

  5. 基于iSensor的MT9M001C12STM传感器调试总结

    iSensor APP 之 摄像头调试  MT9M001C12STM iSensor app 非常适合调试各种摄像头,已测试通过的sensor有: l  OV7670.OV7725.OV9650.OV ...

  6. Linq 常用操作(增删改)

    增加 using(var db = new Entities()) { //数据操作 UserInfo user = new UserInfo() { UserName = "zhangsa ...

  7. 【JS】302- 回调地狱解决方案之Promise

    为什么出现Promise 在javascript开发过程中,代码是单线程执行的,同步操作,彼此之间不会等待,这可以说是它的优势,但是也有它的弊端,如一些网络操作,浏览器事件,文件等操作等,都必须异步执 ...

  8. Vue中router路由异步加载组件-优化性能

    何时使用异步加载组件 当首页app.js文件太大时,可以拆分组件异步加载,如果app.js文件很小时,不建议使用异步加载组件,因为异步加载组件时每次都要发送一个HTTP请求,这样的代价远比首页一次性加 ...

  9. Mybatis sql map 小于号配置

    Mybatis SQL map配置中出现小于号转义时,通过<![CDATA[查询条件]]>解决. EXCEMPLE: <select id="getComments&quo ...

  10. 数组(Array)和列表(ArrayList)有什么区别?什么时候应该使用Array而不是ArrayList?

    下面列出了Array和ArrayList的不同点:Array可以包含基本类型和对象类型,ArrayList只能包含对象类型.Array大小是固定的,ArrayList的大小是动态变化的.ArrayLi ...