【问题标题】:Converting first page of TIFFs to ocr PDFs and extracting specific text position将 TIFF 的第一页转换为 ocr PDF 并提取特定文本位置
【发布时间】:2016-08-14 05:00:58
【问题描述】:

我只想将多个 TIFF 的第一页转换为 OCR PDF。我可以在 R 或 PowerShell 中使用哪些工具/cmdlet/函数仅将每个 TIFF 的第一页转换为 PDF?

从给定的 PDF(每个 TIFF 1 个)我用文本挖掘一个文件编号,该编号始终列在第一页的第二行,并使用我提取的文件编号重命名 PDF。

我相信这可以改进。 到目前为止,我的解决方案完成了我想做的大部分工作,除了 ocr 转换......我仍然可以使用 Adob​​e Acrobat XI Pro 来完成,并生成我在 R 中执行的 .txt 文件。但是,它会很高兴通过 powershell 拥有一切。

第 1 部分:将 TIFF 的第 1 页转换为 PDF

#TIFF source folder
$source = 'C:\Data\PROJECTS\'

# Select TIFFs folder
Get-ChildItem -Path $source -filter *.tif | %{ convert "$($_.FullName -Replace ".tif+$", ".tif[0]")"  "$($_.FullName -Replace ".tif+$", ".pdf")" }

[0]是第1页的索引,是从here学来的

第 2 部分:将 PDF 转换为 OCR PDF 我在 Adob​​e Acrobat Pro 批处理向导中执行此操作

第 3 部分:将 PDF 转换为 TXT 目前在 R 中这样做

第 4 部分:使用 TXT 的第 2 行重命名 PDF 首先制作一个目录列表,其中包含两列,一列带有 TXT 名称,另一列带有 PDF 名称。

# Get the second line from every text file


$Files = Import-CSV 'C:\Data\PROJECTS\dirlist.csv' -Header ("TxtName","PdfName")

ForEach($file in $Files)
{
    $newName = Get-Content -Path $file.TxtName | Select-Object -Index 1
    $newName2 = $newName + ".pdf"
    Rename-Item $file.PdfName $newName2
}

其中 -Index 1 用于引用文本文件的第二行。

【问题讨论】:

    标签: r powershell ocr text-mining renaming


    【解决方案1】:

    我相信这可以改进。 到目前为止,我的解决方案完成了我想做的大部分工作,除了 ocr 转换......我仍然可以使用 Adob​​e Acrobat XI Pro 来完成,并生成我在 R 中执行的 .txt 文件。但是,它会很高兴通过 powershell 拥有一切。

    第 1 部分:将 TIFF 的第 1 页转换为 PDF

    #TIFF source folder
    $source = 'C:\Data\PROJECTS\'
    
    # Select TIFFs folder
    Get-ChildItem -Path $source -filter *.tif | %{ convert "$($_.FullName -Replace ".tif+$", ".tif[0]")"  "$($_.FullName -Replace ".tif+$", ".pdf")" }
    

    [0]是第1页的索引,是从here学来的

    第 2 部分:将 PDF 转换为 OCR PDF 我在 Adob​​e Acrobat Pro 批处理向导中执行此操作

    第 3 部分:将 PDF 转换为 TXT 目前在 R 中这样做

    第 4 部分:使用 TXT 的第 2 行重命名 PDF 首先制作一个目录列表,其中包含两列,一列带有 TXT 名称,另一列带有 PDF 名称。

    # Get the second line from every text file
    
    
    $Files = Import-CSV 'C:\Data\PROJECTS\dirlist.csv' -Header ("TxtName","PdfName")
    
    ForEach($file in $Files)
    {
        $newName = Get-Content -Path $file.TxtName | Select-Object -Index 1
        $newName2 = $newName + ".pdf"
        Rename-Item $file.PdfName $newName2
    }
    

    【讨论】:

      猜你喜欢
      • 2015-11-05
      • 1970-01-01
      • 2015-09-04
      • 1970-01-01
      • 1970-01-01
      • 2011-06-25
      • 2015-04-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多