以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 关于读取PDF文件的问题2 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=194515) |
||||
-- 作者:hongye -- 发布时间:2024/12/18 12:29:00 -- 关于读取PDF文件的问题2
这个是我写的PDF读取的代码 我想把图片中圈出的文本变成一行(如下图所示)请问怎么写这个代码 |
||||
-- 作者:碾作尘 -- 发布时间:2024/12/18 13:51:00 -- 告诉你一个比较沮丧的事,你这种做法并不好,可能你能识别处理某个指定的发票,可是发票有很多种,每个省生成的电子发票格式都未必一致,而想通过文本来处理、识别的话,用过一段时间你就会发现有不兼容的电子发票出现。 我也做了一个识别电子发票的功能,但是只能保证主要信息的正确。电子发票的明细识别有一些场景会出现误差(重复)。 我的做法是通过电子发票中的二维码识别来获得发票的主要信息,其他信息通过文本来获取验证与补充。(电子发票主要三种格式PDF\\XML\\OFD格式都可以支持)
|
||||
-- 作者:有点蓝 -- 发布时间:2024/12/18 14:07:00 -- 试试把回车和括号一起替换掉,大概 dim s as string = "解析出来的文本" s = s.replace(vbcrlf & "(","(").replace(")" & vbcrlf,")")
|
||||
-- 作者:hongye -- 发布时间:2024/12/18 14:37:00 -- dim s as string = "解析出来的文本" s = s.replace(vbcrlf & "(","(").replace(")" & vbcrlf,")") 这个不行,首先并不知道是什么字符后或前换行,第二点有时是三行怎么办? 二楼的碾作尘可以分享一下你做识别发票的经验和代码吗?
|
||||
-- 作者:有点蓝 -- 发布时间:2024/12/18 14:40:00 -- 没有规律的东西无法使用代码控制 |
||||
-- 作者:hongye -- 发布时间:2024/12/18 15:03:00 -- 规律其实也有,就是vbcrlf &“*”,到下一组vbcrlf &“*”,常规发票就是8列数据,由空格隔开的 也就是有几个vbcrlf &“*”,就有几行数据
[此贴子已经被作者于2024/12/18 15:05:11编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2024/12/18 15:06:00 -- 那就搜索*号,把2个*号之间的回车符去掉:IndexOf、SubString、http://www.foxtable.com/webhelp/topics/1338.htm |
||||
-- 作者:hongye -- 发布时间:2024/12/18 15:09:00 -- 不会,写一个例子看看吧 |
||||
-- 作者:有点蓝 -- 发布时间:2024/12/18 15:19:00 -- 不对,1楼字符里服装前后都有*号,如果【服装】这2个字不是固定的,这种仍然不属于有规律 |
||||
-- 作者:hongye -- 发布时间:2024/12/18 16:57:00 -- 唯一算规律的只有vbcrlf &“*”和这个后7个空格 |