一种增值税电子发票的格式转换方法及系统与流程

文档序号:28699773发布日期:2022-01-29 13:02阅读:456来源:国知局
一种增值税电子发票的格式转换方法及系统与流程

1.本发明实施例涉及电子发票格式转换技术领域,具体涉及一种增值税电子发票的格式转换方法及系统。


背景技术:

2.随着专票电子化的时代来临,国家税务总局表示,增值税电子普通发票采用符合国家统一标准的ofd版式,但是打开ofd格式需要特殊的插件,比较繁琐。ofd文件的作用就是保证信息能如实的存储、传递、显示。保证ofd文件的真实性靠的是签名;ofd的显示需要专用软件。ofd标准是新的国家标准,应用范围远不如pdf;现有浏览器不能解析ofd、支持ofd显示的软件也寥寥无几。现有技术参照gbt 33190-2016《电子文件存储与交换格式版式文档》、gbt38540-2020《安全电子签章密码技术规范》、gmt 0031-2014《安全电子签章密码技术规范》、对象标识符(oid)白皮书-2015四个行业标准文件,只能借助插件或单独软件,将格式由ofd转为pdf及图片格式,造成操作繁琐,使用极不方便。


技术实现要素:

3.为此,本发明实施例提供一种增值税电子发票的格式转换方法及系统,以解决现有ofd格式的增值税电子发票使用不便,应用范围有限,格式转换不便的问题。
4.为了实现上述目的,本发明实施例提供如下技术方案:
5.根据本发明实施例的第一方面,提出了一种增值税电子发票的格式转换方法,所述方法包括:
6.获取增值税电子发票的ofd文件;
7.根据ofd文件层次组织结构,解析所述ofd文件,获取发票资源文件、每页发票内容、电子签章以及印章图像;
8.对所述电子签章进行验签;
9.根据所述发票资源文件、每页发票内容以及印章图像生成所述增值税电子发票的图片或pdf格式文件。
10.进一步地,根据ofd文件层次组织结构,解析所述ofd文件,获取发票资源文件、每页发票内容、电子签章以及印章图像,具体包括:
11.根据解析得到的ofd文件的公共资源索引文件、自身资源索引文件以及发票每页的资源描述文件,获取发票资源文件,并将发票资源文件按照自建索引类缓存在内存中,所述发票资源文件包括字体、图片,对于图片类资源文件,则将其转换为二进制文件后存入内存。
12.进一步地,根据ofd文件层次组织结构,解析所述ofd文件,获取发票资源文件、每页发票内容、电子签章以及印章图像,具体包括:
13.根据解析得到ofd文件的发票每页内容描述文件,对发票内容进行解析获取每页发票内容。
14.进一步地,根据ofd文件层次组织结构,解析所述ofd文件,获取发票资源文件、每页发票内容、电子签章以及印章图像,具体包括:
15.根据解析得到的ofd文件的签名值文件获取印章数据结构体,根据印章数据结构体获取印章图像。
16.进一步地,根据所述发票资源文件、每页发票内容以及印章图像生成所述增值税电子发票的图片或pdf格式文件,具体还包括:
17.由所述内存中根据索引号获取资源文件并插入到图片或pdf格式文件的指定位置,若索引对应的为图片类资源文件,则由二进制转换为图片后插入到指定位置。
18.进一步地,根据所述发票资源文件、每页发票内容以及印章图像生成所述增值税电子发票的图片或pdf格式文件,具体还包括:
19.同时生成所述增值税电子发票票面内容的xml文件。
20.进一步地,所述每页发票内容具体包括文字内容、图像内容以及内容的大小、位置、变换方式等。
21.根据本发明实施例的第二方面,提出了一种增值税电子发票的格式转换系统,所述系统包括:
22.ofd文件获取模块,用于获取增值税电子发票的ofd文件;
23.ofd文件解析模块,用于根据ofd文件层次组织结构,解析所述ofd文件,获取发票资源文件、每页发票内容、电子签章以及印章图像;
24.验签模块,用于对所述电子签章进行验签;
25.图片或pdf生成模块,用于根据所述发票资源文件、每页发票内容以及印章图像生成所述增值税电子发票的图片或pdf格式文件。
26.根据本发明实施例的第三方面,提出了一种计算机存储介质,其特征在于,所述计算机存储介质中包含一个或多个程序指令,所述一个或多个程序指令用于被一种增值税电子发票的格式转换系统执行如上任一项所述的方法。
27.本发明实施例具有如下优点:
28.本发明实施例提出的一种增值税电子发票的格式转换方法及系统,通过服务的形式提供一个在线将ofd格式文件转换成pdf或者图片的方案,服务可以部署在公网或者内网,方便使用;并且可以在转换的同时提供ofd文件的相关信息如文件内的文字内容、签章内容、签章与内容是否符合等。
附图说明
29.为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。
30.图1为本发明实施例1提供的一种增值税电子发票的格式转换方法的流程示意图;
31.图2为ofd文件层次组织结构示意图。
具体实施方式
32.以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
33.实施例1
34.如图1所示,本实施例提出了一种增值税电子发票的格式转换方法,该方法包括:
35.s100、获取增值税电子发票的ofd文件。
36.本实施例使用.net core实现,使用了部分开源框架jbig2decoder.netcore、itextsharp.lgplv2.core、corecompat.asn1net.reader。
37.通过服务的形式提供一个在线将ofd格式文件转换成pdf或者图片的方案,服务可以部署在公网或者内网。在收到一个ofd文件后,判断为ofd格式后,通过webapi接口发送到服务端进行解析和格式转换处理。
38.s200、根据ofd文件层次组织结构,解析ofd文件,获取发票资源文件、每页发票内容、电子签章以及印章图像。
39.参照gbt 33190-2016《电子文件存储与交换格式版式文档》中ofd文件层次组织结构,如图2所示,具体结构内容说明如下:
40.[0041][0042]
根据解析得到的ofd文件的公共资源索引文件publicres.xml、自身资源索引文件documentres.xml以及发票每页的资源描述文件pageres.xml,获取发票资源文件,并将发票资源文件按照自建索引类缓存在内存中,发票资源文件包括字体、图片,对于图片类资源文件,则将其转换为二进制文件后存入内存。
[0043]
具体的,对应以上文件结构创建实体类。根据根节点文件document.xml的commondata字段,获取资源文件列表(通常为pageres.xml,publicres.xml,documentres.xml)并将公共资源文件列表中指定路径的文件存入自建索引类,缓存在内存中,例如将kaiti字体存入索引,索引编号为61。
[0044]
根据解析得到ofd文件的发票每页内容描述文件,对发票内容进行解析获取每页发票内容。每页发票内容具体包括文字内容、图像内容以及内容的大小、位置、变换方式等。
[0045]
具体的,根据document.xml文件的page字段,获取page文件指定路径的content.xml文件,并解析该文件的文字内容,图像内容以及该内容的大小,位置,变换方式等等。
[0046]
根据解析得到的ofd文件的签名值文件获取印章数据结构体,根据印章数据结构体获取印章图像。
[0047]
具体的,根据gbt38540-2020《安全电子签章密码技术规范》、gmt0031-2014《安全电子签章密码技术规范》解析signedvalue.dat文件,根据印章结构获取印章图像。印章信息的数据结构包括印章头、印章标识、印章属性、印章图像数据以及自定义数据。
[0048]
s300、对电子签章进行验签。
[0049]
获取电子印章,通过对应的加解密算法(对应oid的密码标准标识列表)对电子印章中的内容和文件的摘要进行对比,判断该文件是否被修改过。具体的,根据ofd.xml文件的signatures字段找到对应的签名文件signedvalue.dat和签名摘要signature.xml。假如获取到所采用的加解密算法的oid为1.2.156.10197.1.501,根据对象标识符(oid)白皮书-2015可以知道1.2.156.10197.1.501对应的是基于sm2算法和sm3算法的签名。应用sm3算法对publicres.xml进行处理得到的结果与checkvalue中的值进行比对,如果一致证明文件未被修改。
[0050]
s400、根据发票资源文件、每页发票内容以及印章图像生成增值税电子发票的图片或pdf格式文件。
[0051]
将获得的发票内容信息绘制到图片中或者pdf文件中。由内存中根据索引号获取资源文件并插入到图片或pdf格式文件的指定位置,若索引对应的为图片类资源文件,则由二进制转换为图片后插入到指定位置。例如发票内容为“大连增值税电子普通发票”,字体为索引编号61的字体kaiti,颜色为rgb(156 82 35)等等。
[0052]
该方法具体还包括:同时生成增值税电子发票票面内容的xml文件。将ofd文件文字内容的xml和转换后的(pdf/图片)文件同时返回给用户,并返回json格式数据。
[0053]
本发明实施例通过服务的形式提供一个在线将ofd转换成pdf或者图片的方案,并且服务可以部署在公网或者内网,方便使用。可以在转换的同时提供ofd的相关信息如文件内的文字内容,签章内容,签章与内容是否符合。本发明通过服务的形式提供一个在线将ofd转换成pdf或者图片的方案,并且服务可以部署在公网或者内网,方便使用。可以在转换的同时提供ofd的相关信息如文件内的文字内容,签章内容,签章与内容是否符合。
[0054]
实施例2
[0055]
与上述实施例1相对应的,本实施例提出了一种增值税电子发票的格式转换系统,所述系统包括:
[0056]
ofd文件获取模块,用于获取增值税电子发票的ofd文件;
[0057]
ofd文件解析模块,用于根据ofd文件层次组织结构,解析所述ofd文件,获取发票资源文件、每页发票内容、电子签章以及印章图像;
[0058]
验签模块,用于对所述电子签章进行验签;
[0059]
图片或pdf生成模块,用于根据所述发票资源文件、每页发票内容以及印章图像生成所述增值税电子发票的图片或pdf格式文件。
[0060]
本发明实施例提供的一种增值税电子发票的格式转换系统中各部件所执行的功能均已在上述实施例1中做了详细介绍,因此这里不做过多赘述。
[0061]
实施例3
[0062]
与上述实施例相对应的,本实施例提出了一种计算机存储介质,计算机存储介质中包含一个或多个程序指令,一个或多个程序指令用于被一种增值税电子发票的格式转换系统执行如实施例1的方法。
[0063]
虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1