Foxtable(狐表)用户栏目专家坐堂 → 如何提取PDF文件中表格数据


  共有1742人关注过本帖树形打印复制链接

主题:如何提取PDF文件中表格数据

帅哥哟,离线,有人找我吗?
有点蓝
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107304 积分:545781 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/10/19 10:04:00 [只看该作者]

不是把net4.0复制到安装目录,而是把使用到的组件的dll文件复制到安装目录

 回到顶部
帅哥哟,离线,有人找我吗?
ZJZK2018
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:767 积分:6119 威望:0 精华:0 注册:2018/2/1 17:26:00
  发帖心情 Post By:2023/10/19 10:41:00 [只看该作者]

使用到的组件的dll文件能否提供一下


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107304 积分:545781 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/10/19 10:48:00 [只看该作者]

我也没有。请自行上网搜搜

 回到顶部
帅哥哟,离线,有人找我吗?
ZJZK2018
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:767 积分:6119 威望:0 精华:0 注册:2018/2/1 17:26:00
  发帖心情 Post By:2023/11/12 21:48:00 [只看该作者]

老师:下面代码如何优化,提取速度有点慢,还有红色代码出错?请指教
Dim red As New iTextSharp.Text.pdf.PdfReader("D:\BBB.PDF")
'msgbox(red.NumberOfPages(2).text)
Dim n As Integer = red.NumberOfPages
Dim str As String
Dim pag,pag1 As Integer
For i As Integer = 1 To n
    Dim stry As object = New iTextSharp.Text.pdf.Parser.SimpleTextExtractionStrategy()
    Dim ctxt As String = iTextSharp.Text.pdf.Parser.PdfTextExtractor.GetTextFromPage(red, i, stry).Replace(" ","")
    ctxt = Encoding.UTF8.GetString(ASCIIEncoding.Convert(Encoding.[Default], Encoding.UTF8, Encoding.[Default].GetBytes(ctxt)))
    If ctxt.IndexOf("投标人须知前附表") > -1 AndAlso ctxt.IndexOf("条款名称") > -1 Then
        pag = i
    End If
    If ctxt.IndexOf("中标候选人公示媒介") > -1 AndAlso ctxt.IndexOf("公示媒介") > -1 Then
        pag1 = i
    End If
Next
'msgbox(pag1)
For m As Integer = pag To pag1
    Dim stry As object = New iTextSharp.Text.pdf.Parser.SimpleTextExtractionStrategy()
    Dim ctxt As String = iTextSharp.Text.pdf.Parser.PdfTextExtractor.GetTextFromPage(red, m, stry).Replace(" ","")
    ctxt = Encoding.UTF8.GetString(ASCIIEncoding.Convert(Encoding.[Default], Encoding.UTF8, Encoding.[Default].GetBytes(ctxt)))
    str &= ctxt
Next
Output.Show(str)
red.Close()

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107304 积分:545781 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/12 21:58:00 [只看该作者]

慢这个您得去看这个组件的文档,或者咨询对方。

红色代码出什么错?应该是没有这么多页,比如只有1页,却去取第2页肯定就出错了

 回到顶部
帅哥哟,离线,有人找我吗?
ZJZK2018
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:767 积分:6119 威望:0 精华:0 注册:2018/2/1 17:26:00
  发帖心情 Post By:2023/11/12 22:00:00 [只看该作者]

这个文件有136页啊

msgbox(red.NumberOfPages(2).text) 这个代码有没有错??


图片点击可在新窗口打开查看此主题相关图片如下:1699798317645.jpg
图片点击可在新窗口打开查看

[此贴子已经被作者于2023/11/12 22:06:04编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107304 积分:545781 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/12 23:04:00 [只看该作者]

错误意思是:NumberOfPages是一个整数属性,不是集合,不能索引。NumberOfPages只能用来返回有多少页

 回到顶部
总数 17 上一页 1 2