有没有人从方正飞腾转换过来的pdf文件中提取过文本?如何提取的啊?

解决方案 »

  1.   

    很多组件可以完成, iTextSharp, PDFBoxes之类的都可以, 也可以自己分析格式提取, 先在以字节的形式把文件读出来, 查找stream和endstream之间的数据, 一般都是压缩了的, 用zlib控件解压后, 字符串一般如下格式stream  BT  /F1 24 Tf  100 100 Td (Hello World) Tj  ET  endstream, 文本就是hello world
    然后通过正则表达式可以提取
    string pattern = @".*BT\s+/(?<fontName>\w*)\s+(?<fontSize>\d*)\s+(?<fontType>\w*)\s+(?<startXPos>\w*)\s+(?<startYPos>\w*)\s+Td\s+(?<text>.*)tj\s+ET.*";
    Regex regex = new Regex(pattern, RegexOptions.IgnoreCase);
    Match match = regex.Match(txtContent);
    if (match.Success) {
    string fontName = match.Groups["fontName"].Value;
    string fontSize = match.Groups["fontSize"].Value;
    string fontType = match.Groups["fontType"].Value;
    string startXPos = match.Groups["startXPos"].Value;
    string startYPos = match.Groups["startYPos"].Value;
    string text = match.Groups["text"].Value;
    }
      

  2.   

    对于标准的pdf文件,可以通过PDFBoxes提取文本,但对于从方正飞腾转换过来的pdf文件则无法提取,不知道楼上提取过这种pdf文件吗?
      

  3.   

    关于FIT出PS转PDF格式印刷测试报告发布日期:2006-7-28 16:02:30 作者:asnoopy 出处:http://www.aehome.cn 使用软件
    北大方正飞腾4.1
    北大盗版ADOBE PDFCreator 3.0制作流程
       1.飞腾发排生成PS文件,并将所有图片收集到指定包内,转PDF前,需将PS和当版图片放在同一目录下。
       2.使用北大盗版ADOBE PDFCreator 3.0将PS文件转为PDF,速度马马乎乎,但效果惊人,3600DPI的解析度几乎还原了所有图片效果。色彩鲜艳明亮,有点象MAC的视觉处理效果了。笔者在考虑是否能印刷的出来几个问题
       1.生成的PDF文件个头都不小,不过与原来PS+图片打包来看,PDF大概缩减了20%-40%的文件大小。
       2.对于FIT用所用的渐变图形支持不够,还是出现断线的情况,不知后端印刷是否有问题,正在测试。
       3.文字仍然无法内嵌,PDF出来后,无法直接从PDF文件上提取文字。
       4.笔者三年前曾今尝试用NTRIP挂ADOBE Acrobat 5.0 PRO的PDF打印程序出PDF,效果不错,就是比较慢,没有渐变问题,不知道为什么越做越不兼容了。但是唯一问题就是ADOBE Acrobat 5.0 PRO输出的PDF无法选择CMYK输出格式。后因离开原报社没有再接触到NTRIP所以没有尝试到用ADOBE Acrobat6.0或7.0出PDF的测试。最后总结
       北大的这款ADOBE PDFCreator 3.0,感觉就是翻了网上流传的PDFCreator 3.0的插件,但笔者没有尝试出如何用PDFCreator 3.0直接出PS,毕竟不是一个妈妈生的但是现在的北大的这款ADOBE PDFCreator 3.0已经能够、完全的解决飞腾出PDF直接印刷的需要。符合正规报版印刷标准。(能不能PDF印杂志?这问题我解释不了,因为大家标准不一样啥),并且更重要的一点是——PDF是CMYK格式的。(咱已经等了它N年了)如何解决列出问题中的第3点??