【问题标题】:Is there a way in Perl to get the coordinates of a Path from a PDF in the same coordinate system as the PDF text?Perl 中有没有一种方法可以在与 PDF 文本相同的坐标系中从 PDF 中获取路径的坐标?
【发布时间】:2015-06-01 00:42:42
【问题描述】:

我有一个包含路径和文本的 PDF 页面。我需要在同一坐标系中找到路径和文本的坐标。我可以使用CAM::PDF 来获取文本坐标,如下所示:

use CAM::PDF;
use PDF::ToText;
#open pdf file and look at pg1
my $pdf = CAM::PDF->new($pdfFileName);
my $contentTree = $pdf->getPageContentTree(1);
$contentTree->render("PDF::ToText");

我不知道如何获取同一 PDF 页面上路径的坐标。我可以查看 PDF 页面内容并查看路径坐标,但我认为这些需要使用当前的转换矩阵进行翻译,因为我知道某些特定的文本字符与路径位于页面上的同一位置(如 x 标记藏宝图上的那个点...),但我能得到的坐标没有重叠(文本和路径相差约 500 个单位)。有没有办法在与文本相同的坐标系(设备空间?)中使用 CAM::PDF(或其他一些 Perl 模块?)获取路径坐标?

【问题讨论】:

    标签: perl pdf coordinates


    【解决方案1】:

    我是 CAM::PDF 的作者。确实,您走在正确的轨道上。看一下CAM::PDF::Renderer::Dump的实现,很简单。该类演示了如何捕获文本命令的坐标。接下来,查看CAM::PDF::GS::NoText,看看您可以在自己的自定义渲染类中覆盖哪些其他方法,类似于CAM::PDF::Renderer::Dump

    【讨论】:

    • 感谢克里斯,需要朝着正确的方向前进。我创建了自己的渲染器并覆盖了 CAM::PDF::GS::NoText 中的一些函数,现在得到了我需要的坐标。
    猜你喜欢
    • 2015-10-23
    • 1970-01-01
    • 2011-04-26
    • 1970-01-01
    • 1970-01-01
    • 2010-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多