动态文字水印怎么做

水印是把一些标识信息嵌入到信息载体中,在不影响原载体内容使用的同时,为原作者提供识别的手段,进而防止被再次篡改,是一种保护信息安全和知识版权的有效方法。

说到水印,常见到纸的文件,一般常用 Word 或 pdf 编辑后打印所得,并且 offie 或 pdf 软件也有直接增加水印的功能。

像 Word 中增加水印很简单:菜单栏“设计”-“水印”(选择“自定义水印”),可以设置图片或文字类水印。

但同一个 word 只能设置一条水印内容,即只能是静态水印,不能动态生成,如上面文字水印的“文字”内为“我是 word 水印”,该 word 就只能提供这个固定的水印信息了,除非再次编辑 word 修改。

作为数据呈现经常使用的统计报表,在展现、导出及打印时也同样会需要水印支持。但不同的是,通过报表工具做水印除了静态水印,还可以是动态的。

如,基于同一个报表模板动态生成报告,不同用户查询的结果需要不同的水印内容做保护,动态水印就是亟需的功能。

举个例子,“张三”访问时,模板生成的报表水印为“张三的报表”

“李四”访问时,则为“李四的报表”

实际上,这种功能就是报表工具软件的优势了,报表除了静态水印同样支持动态水印。

我们以润乾报表工具为例,介绍下如何添加水印(图片水印有专门文章介绍,这里不做对比了)?过程是不是像 word 同样简单?

首先,静态文字水印

文字内容是在做报表的时候固定设置好的信息,只能通过修改报表模板更改。

其次、 动态水印

同一张报表,每次访问时,可以传入当前要显示的水印信息,实现动态添加水印内容,另种方式:

(1) 通过报表参数及水印内容表达式动态设置

(2) 通过填加报表展现标签(水印属性)

如,generateWaterMark=“水印信息”。

接下来我们结合实例介绍具体的操作过程:

Ps:例子借用润乾产品自带 demo 应用,“基本报表”下的“网格式报表”

一、添加静态水印

1、 打开并编辑“网格式报表”模板

菜单 -- 报表 -- 报表属性—背景图,选择“水印”

2、 定义要显示的水印信息

在“文本”输入框内输入要在报表内显示的水印内容,如“该报表版权归属润乾公司”

3、 保存模板并在浏览器预览水印效果

以上便是静态水印的设置方式,当需要更改显示内容时,只能基于报表模板重复以上步骤。另外,水印可以调整的样式包括水平或倾斜方式、字体颜色、间距等。导出及打印时也同时保留水印。

二、添加动态水印

1、 方式一:参数 + 水印内容表达式

(1) 增加报表参数

定义参数为 userID,用于接收当前用户 ID

(2) 编辑水印内容表达式

编辑“网格式报表”,菜单栏“报表”-“报表属性”-“背景图”- 水印

“来源”-“表达式”

表达式为:@userID+”的报表”

(3) 预览结果

张三访问时,userID 为“张三”,结果

李四访问

2、 方式二:通过报表标签的的水印属性值

(1)打开并编辑报表展现的 Jsp 文件

添加接收水印内容参数值的方法:

String waterMark = request.getParameter(“waterMark”);

(2)标签内添加 generateWaterMark 属性

添加属性并定义接收到的水印参数:

(3)访问报表并设置 waterMark 参数

如:http://localhost:6868/demo/reportJsp/showReport.jsp?rpx=10 基本报表 / 网格式报表.rpx&waterMark= 该报表版权所属方为润乾公司

结果:

将 waterMark 值改为“该报表版权所属方为北京润乾公司”

可以看到水印内容对应发生改变。

通过以上方式即可实现润乾报表中添加静态及动态水印,比 word 工具功能齐全,方法操作简单,属性设置丰富。

原文地址:https://www.cnblogs.com/shiGuangShiYi/p/12109580.html

时间: 2024-08-11 09:56:52

动态文字水印怎么做的相关文章

asp.net 做文字水印

    /// <summary>     /// 做图片水印(Drawing,IO)     /// </summary>     /// <param name="InPath">输入图片模板路径</param>     /// <param name="OutPath">输入图片路径</param>     /// <param name="oneStr">

用Asp.net实现简单的文字水印

用Asp.net实现简单的文字水印  经常看见MOP上有人贴那种动态的图片,就是把一个字符串作为参数传给一个动态网页,就会生成一个带有这个字符串的图片,这个叫做文字水印.像什么原来的熊猫系列,还有后来的大树和金条,都挺有意思.这东西看着挺好玩的,想做个玩玩.查了查资料,发现用.net来做这个是很容易的,就用Asp.net写了一个非常简单的.全部的代码如下: <%@ Import Namespace="System" %> <%@ Import Namespace=&q

php 图片添加文字水印 以及 图片合成(微信快码传播)

1.图片添加文字水印: $bigImgPath = 'backgroud.png'; $img = imagecreatefromstring(file_get_contents($bigImgPath)); $font = 'msyhl.ttc';//字体 $black = imagecolorallocate($img, 0, 0, 0);//字体颜色 RGB $fontSize = 20; //字体大小 $circleSize = 60; //旋转角度 $left = 50; //左边距

php给图片添加文字水印方法汇总

在php中要给图片加水印我们需要给php安装GD库了,这里我们不介绍GD库安装,只介绍怎么利用php给图片添加文字水印的4种方法的汇总.有需要的小伙伴可以参考下. 1: 面向过程的编写方法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 //指定图片路径 $src = '001.png'; //获取图片信息 $info = getimagesize($src); //获取图片扩展名 $type = image_type_to_ex

实现倾斜文字水印背景

早上群里有人问:斜体文字水印背景,文字不确定的怎么做.刚好前段时间做过,特此分享下并记录. 其主要原理是利用UIColor类的一个方法:把图片变成颜色. [[UIColor alloc] initWithPatternImage:xxxxx]; 该方法会把图片平铺变成一个颜色实体. 代码产生一张倾斜文字图片: - (UIImage *)imageWithText:(NSString *)text{ /** 这里之所以外面再放一个UIView,是因为直接用label画图的话,旋转就不起作用了 */

php图片添加文字水印方法汇总

方法一: <?php header("content-type:text/html;charset=utf-8"); //指定图片路径 $src = "img/a.png"; //获取图片信息 $info = getimagesize($src); //获取图片扩展名 $type = image_type_to_extension($info[2],false); // echo $type; // exit; //动态的把图片导入内存中 $fun = &qu

利用iTextSharp组件给PDF文档添加图片水印,文字水印

最近在做关于PDF文档添加水印的功能,折腾了好久,终于好了.以下做个记录: 首先会用到iTextSharp组件,大家可以去官网下载,同时我也会在本文中附加进来. 代码中添加引用为:   using System; using System.Collections.Generic; using System.Linq; using System.Text; using iTextSharp.text.pdf; using System.IO; using iTextSharp.text; 创建一个

php 图片加水印文字水印

/*给图片加文字水印的方法*/ $dst_path = 'http://f4.topitme.com/4/15/11/1166351597fe111154l.jpg';//保证路径正确 $dst = imagecreatefromstring(file_get_contents($dst_path)); /*imagecreatefromstring()--从字符串中的图像流新建一个图像,返回一个图像标示符,其表达了从给定字符串得来的图像 图像格式将自动监测,只要php支持jpeg,png,gi

上传图片-水印-文字水印

前台代码 @{    Layout = null;} <!DOCTYPE html> <html><head>    <meta name="viewport" content="width=device-width" />    <title>Index</title> </head><body>    <div>         <input typ