欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

在嵌入在html中的pdf电子签章,一种网页PDF中电子签章定位方法与流程

发布时间:2024/1/1 61 豆豆
生活随笔 收集整理的这篇文章主要介绍了 在嵌入在html中的pdf电子签章,一种网页PDF中电子签章定位方法与流程 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

本发明属于一种电子签章技术领域,具体涉及一种网页PDF中电子签章定位方法。

背景技术:

国密电子签章中的套章方法操作复杂,无法对电子文档中一次性加盖多个印章的,大大降低了盖章效率,尤其是无法在所有需要盖章的位置处添加指定印章,因此无法满足人们的需求。

技术实现要素:

本发明所要解决的技术问题是针对上述现有技术的不足提供一种网页PDF中电子签章定位方法,其结合数字签名技术,解决了对电子文档中一次性加盖多个印章的技术问题,大大提高了盖章效率,在所有需要盖章的位置处添加指定印章,通过电子签章技术一次性签署所有印章。

为实现上述技术目的,本发明采取的技术方案为:

一种网页PDF中电子签章定位方法,其特征在于:包括以下步骤:

1)解析PDF文档元数据,记录PDF文档所在位置坐标;

2)当鼠标按下时,获取到当前鼠标的位置,即移动前相对浏览器的位置;鼠标移动结束后,获取鼠标的位置,即移动后的位置;

3)在点击图片的时候计算的位置是指鼠标在图片里的位置即鼠标相对于图片父级左上角的横坐标与纵坐标的值,它们用来保证在移动后鼠标仍然停留在图片的相对位置,通过将鼠标的位置减去这两个偏移值;

4)计算移动前的位置的横坐标、纵坐标与移动结束后的位置的横坐标、纵坐标的差值,移动后元素的横坐标标为:鼠标移动后的横坐标-鼠标按下的横坐标+元素的初始横坐标;纵坐标为:鼠标移动后的纵坐标-鼠标按下的纵坐标+元素的初始纵坐标;

5)把新的横坐标与纵坐标替换初始元素的横坐标与纵坐标,拖拽印章到pdf的步骤就结束了。

上述的pdf中电子印章位置算法,包括以下步骤:

1)将pdf进行定位并记录标准pdf的总页数乘以标准pdf单张页面的长减去印章的长就是印章可拖动的上下范围,上下范围不得小于0;

2)记录PDF的宽减去印章的宽,就是印章在pdf中可拖动的左右范围的长度,左右范围不得小于0;

3)设定PDF左上角横坐标与纵坐标为0;

4)计算PDF相对于屏幕左上角的位置即横坐标与纵坐标的差值;

5)当鼠标移动到PDF范围内并点击印章不放时,获取印章相对屏幕左上角的位置

6)印章相对屏幕左上角的横坐标与纵坐标减去PDF相对于屏幕左上角的横坐标与纵坐标得到的结果就是印章相对于PDF的坐标值;

7)当鼠标移动时,不断的获取鼠标的位置,并计算印章的新坐标修改印章相对于PDF 的坐标位置,直到鼠标离开,确定印章的位置;

8)拖拽结束,取消拖拽的标记,记录印章相对于PDF的坐标位置即横坐标、纵坐标。

上述的后台签章PDF的定位算法分为PDF没有旋转进行签章算法和PDF旋转后进行签章算法两种情况;

其中PDF没有旋转进行签章算法包括以下步骤:

1)原始图片的像素根据一定的倍率转到网页端使其自适应屏幕端的分辨率;

2)设置pdf的左下角为原点进行判算;

3)最终签章的横坐标就是印章位置的横坐标,纵坐标就是单页pdf的长度减去印章的大小减去印章相对于pdf左上角位置的纵坐标;

其中PDF旋转后进行签章算法包括以下步骤:

a)以PDF的中心为旋转点,记录PDF旋转的角度;

b)签章的横坐标为:余弦函数乘以斜边的长度减去印章纵坐标的长度,签章的纵坐标为:正弦函数乘以斜边的长度减去印章横坐标的长度。

本发明基于PDF电子签章技术,通过验证PDF在盖章后内容有无发生变化,保证内容真实性与完整性。

本发明使用H5中的Canvas API以及前端加密技术对签章图片进行转码,在图片拖拽时动态计算鼠标相对于PDF坐标系中的位置,实现签章图片的随意拖拽放置。通过对签章的上浮,纠偏,润色等一系列的处理,使其效果如同纸质盖章或签名。

前后端使用公钥私钥进行加密解密操作,通过前端加密技术对签章图片字节流进行公钥加密,文件传输是以乱码的形式显示的,他人无法阅读或篡改。后端在接收到前端发送的字节流信息之后,使用私钥进行解码,保证文件的安全性。使用电子文件和数字签章技术,甚至比使用经过签字盖章的书面文件更为安全。

本发明的优点在于以下几点:结合数字签名技术,解决了对电子文档中一次性加盖多个印章的技术问题,大大提高了盖章效率,在所有需要盖章的位置处添加指定印章,通过电子签章技术一次性签署所有印章。

具体实施方式

下面对本发明的具体实施方式作出进一步说明:

一种网页PDF中电子签章定位方法,其特征在于:包括以下步骤:

1)解析PDF文档元数据,记录PDF文档所在位置坐标;

2)当鼠标按下时,获取到当前鼠标的位置,即移动前相对浏览器的位置;鼠标移动结束后,获取鼠标的位置,即移动后的位置;

3)在点击图片的时候计算的位置是指鼠标在图片里的位置即鼠标相对于图片父级左上角的横坐标与纵坐标的值,它们用来保证在移动后鼠标仍然停留在图片的相对位置,通过将鼠标的位置减去这两个偏移值;

4)计算移动前的位置的横坐标、纵坐标与移动结束后的位置的横坐标、纵坐标的差值,移动后元素的横坐标标为:鼠标移动后的横坐标-鼠标按下的横坐标+元素的初始横坐标;纵坐标为:鼠标移动后的纵坐标-鼠标按下的纵坐标+元素的初始纵坐标;

5)把新的横坐标与纵坐标替换初始元素的横坐标与纵坐标,拖拽印章到pdf的步骤就结束了。

上述的pdf中电子印章位置算法,包括以下步骤:

1)将pdf进行定位并记录标准pdf的总页数乘以标准pdf单张页面的长减去印章的长就是印章可拖动的上下范围,上下范围不得小于0;

2)记录PDF的宽减去印章的宽,就是印章在pdf中可拖动的左右范围的长度,左右范围不得小于0;

3)设定PDF左上角横坐标与纵坐标为0;

4)计算PDF相对于屏幕左上角的位置即横坐标与纵坐标的差值;

5)当鼠标移动到PDF范围内并点击印章不放时,获取印章相对屏幕左上角的位置

6)印章相对屏幕左上角的横坐标与纵坐标减去PDF相对于屏幕左上角的横坐标与纵坐标得到的结果就是印章相对于PDF的坐标值;

7)当鼠标移动时,不断的获取鼠标的位置,并计算印章的新坐标修改印章相对于PDF 的坐标位置,直到鼠标离开,确定印章的位置;

8)拖拽结束,取消拖拽的标记,记录印章相对于PDF的坐标位置即横坐标、纵坐标。

上述的后台签章PDF的定位算法分为PDF没有旋转进行签章算法和PDF旋转后进行签章算法两种情况;

其中PDF没有旋转进行签章算法包括以下步骤:

1)原始图片的像素根据一定的倍率转到网页端使其自适应屏幕端的分辨率;

2)设置pdf的左下角为原点进行判算;

3)最终签章的横坐标就是印章位置的横坐标,纵坐标就是单页pdf的长度减去印章的大小减去印章相对于pdf左上角位置的纵坐标;

其中PDF旋转后进行签章算法包括以下步骤:

a)以PDF的中心为旋转点,记录PDF旋转的角度;

b)签章的横坐标为:余弦函数乘以斜边的长度减去印章纵坐标的长度,签章的纵坐标为:正弦函数乘以斜边的长度减去印章横坐标的长度。

以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。

总结

以上是生活随笔为你收集整理的在嵌入在html中的pdf电子签章,一种网页PDF中电子签章定位方法与流程的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。