【问题标题】:Spaces are not detected while scanning PDF - iOS (CGPDFScanner)扫描 PDF 时未检测到空格 - iOS (CGPDFScanner)
【发布时间】:2014-11-20 12:29:48
【问题描述】:

我正在处理 pdf 扫描,我想从 PDF 中提取文本。 我正在使用 pdf Multithreading.pdf 进行搜索。我能够提取文本,但无法从文本中提取空格。我只得到 Tj 运算符的回调,而不是 TJ 的回调。 可能是什么问题?

谢谢

【问题讨论】:

    标签: ios pdf cgpdfscanner


    【解决方案1】:

    我能够提取文本,但无法从文本中提取空格。我只收到 Tj 运算符的回调,而不是 TJ。

    原因是在你的sample document

    1. 文本绘制操作中不使用空格,而是使用Tm操作更改文本绘制位置;和
    2. 仅使用 Tj 文字绘制操作,不使用 TJ

    例如扉页的文字绘制操作

    是:

    BT
    /F0 50 Tf
    1 0 0 1 60 669.225 Tm
    (\0006)Tj                                    %  T
    1 0 0 1 83.527 669.225 Tm
    (\000J\000T)Tj                               %  hr
    1 0 0 1 125.631 669.225 Tm
    (\000G\000C\000F\000K\000P\000I)Tj           %  eading
    1 0 0 1 273.395 669.225 Tm
    (\0002)Tj                                    %  P
    1 0 0 1 298.272 669.225 Tm
    (\000T)Tj                                    %  r
    1 0 0 1 313.599 669.225 Tm
    (\000Q)Tj                                    %  o
    1 0 0 1 340.076 669.225 Tm
    (\000I\000T)Tj                               %  gr
    1 0 0 1 382.43 669.225 Tm
    (\000C\000O\000O\000K\000P\000I)Tj           %  amming
    0 Tc
    1 0 0 1 60 609.225 Tm
    (\000\))Tj                                   %  G
    1 0 0 1 91.7 609.225 Tm
    (\000W\000K\000F\000G)Tj                     %  uide
    ET  
    

    Tj 文本绘制操作中没有空格,仅使用 Tm 移动绘制位置。

    【讨论】:

    • 那么我应该如何用空格分隔单词?或者应该如何使用 Tm 检测空间?
    • 基本上我想要用空格(单词)分隔的文本数据。实现这一目标的方法是什么?
    • 不幸的是,我不太了解 CGPDFScanner。本质上,您需要 Tj 操作绘制的字符串的宽度。有了它,您就可以计算出以下 Tm 操作是移动了一点点(字距调整)还是移动了很多(空间)。
    • 好的,我试试这个。感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-26
    • 2022-12-11
    • 1970-01-01
    • 2021-04-16
    • 2011-07-22
    • 1970-01-01
    相关资源
    最近更新 更多