【问题标题】:Split pdf with pdftk (closed)使用 pdftk 拆分 pdf(已关闭)
【发布时间】:2020-09-10 09:44:46
【问题描述】:

我正在一个文件夹中搜索多个 pdf 文件以查找某个关键字。如果找到关键字,我想在特定页面拆分 pdf 并将其保存为新的 pdf。 代码:

Add-Type -Path '...\itextsharp.5.5.13.1 (1)\lib\itextsharp.dll'
$pdfs = gci "C:\Users\..\Plan\" *.pdf
$keywords = "TEST"
$pdftk = "C:\Program Files (x86)\PDFtk\bin\pdftk.exe"
$output = "C:\Users\...\new"
$newpdf = New-Object -TypeName psobject 
foreach($pdf in $pdfs) {

    Write-Host "processing -" $pdf.FullName

    # prepare the pdf
    $reader = New-Object iTextSharp.text.pdf.pdfreader -ArgumentList $pdf.FullName

    # for each page
    for($page = 1; $page -le $reader.NumberOfPages; $page++) {

        # set the page text
        $pageText = [iTextSharp.text.pdf.parser.PdfTextExtractor]::GetTextFromPage($reader,$page).Split([char]0x000A)

        # if the page text contains keyword
            if($pageText -match $keywords) {
                break                             
            }
    }

    #$reader.Close()
    $FirstPage = $page
    $LastPage = $reader.NumberOfPages

    Write-Host "Starting page is: " $FirstPage
    Write-Host "Last page is: " $LastPage

    & $pdftk $pdf.FullName cat $FirstPage-end output "$output\test.pdf"
}

【问题讨论】:

    标签: powershell pdf pdftk


    【解决方案1】:

    您缺少output 关键字。使用

    $pdftk $pdf.FullName cat $FirstPage-end output "$output\test.pdf"
    

    你得到这个奇怪错误的原因是 C 被解释为一个句柄,它是一个指向前一个输入文件的指针。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-11
      • 2021-01-13
      • 2013-11-28
      • 1970-01-01
      • 2013-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多