用於掃描成堆雙面文件的實用程序

用於掃描成堆雙面文件的實用程序

我有一台帶有文件進紙器的單面掃描儀,正在尋找掃描雙面鈔票的最佳方法。如果能夠掃描同一疊影像兩次(一次翻轉),並且有一個實用程式自動交錯掃描的影像,這將非常有用。多頁 PDF 匯出也不錯。有沒有工具可以做到這一點?

否則,我正在考慮用Python編寫它,並使用imagescanner模組,如果它可以使用ADF的話——http://pypi.python.org/pypi/imagescanner/0.9

謝謝

答案1

老問題,仍然相關:

使用“簡單掃描”。它具有“重新排序頁面”功能。我發現了這個提示這裡

答案2

將文件掃描為 PDF,並按照掃描時的頁面順序進行掃描,即首先是奇數頁,然後是偶數頁。然後修復它:

pdftk raw.pdf cat odd even output ordered.pdf

也可以看看合併包含書籍偶數頁和奇數頁的兩個 PDF 文件

答案3

我在具有自動送稿機 (ADF) 的掃描器上執行以下操作:

  1. 從第一頁到最後一頁掃描奇數頁,儲存為第一個 pdf 文件
  2. 翻轉一疊頁面並掃描從最後一頁到第二頁的偶數頁,儲存為第二個 pdf 文件
  3. 使用使用 PDFSharp 庫的小 PowerShell 腳本合併這兩個檔案(二進位檔案需要與 PowerShell 腳本並排複製)

這是我的腳本 - 有點粗糙 - 但工作適合我。我希望它能有所幫助。

# Not entirely my code, this is based on Mike Pfeiffer - http://mikepfeiffer.net/2010/03/how-to-merge-pdf-files-using-powershell-and-pdfsharp/
# Requires PDFSharp assembly libraries http://sourceforge.net/projects/pdfsharp/
# You need to load the assembly before you can use the function            
#
# Usage:
# Merge-PDF -firstPdfPath 1.pdf -secondPdfPath 2.pdf -targetPdfPath merged.pdf
[CmdletBinding()]
param 
(
    $firstPdfPath,
    $secondPdfPath,
    $targetPdfPath
)
begin {
    $scriptPath = split-path -parent $MyInvocation.MyCommand.Definition
    Add-Type -Path .\PdfSharp.dll
}

process {
    $output = New-Object PdfSharp.Pdf.PdfDocument            
    $PdfReader = [PdfSharp.Pdf.IO.PdfReader]            
    $PdfDocumentOpenMode = [PdfSharp.Pdf.IO.PdfDocumentOpenMode]                        

    $firstPdfPath = Join-Path $PSScriptRoot $firstPdfPath
    $secondPdfPath = Join-Path $PSScriptRoot $secondPdfPath
    $targetPdfPath = Join-Path $PSScriptRoot $targetPdfPath

    $firstPdf = New-Object PdfSharp.Pdf.PdfDocument            
    $firstPdf = $PdfReader::Open($firstPdfPath, $PdfDocumentOpenMode::Import)  

    $secondPdf = New-Object PdfSharp.Pdf.PdfDocument            
    $secondPdf = $PdfReader::Open($secondPdfPath, $PdfDocumentOpenMode::Import)    
    $secondIndex = $secondPdf.Pages.Count-1

    foreach($page in $firstPdf.Pages) {
        $output.AddPage($page)
        if ($secondIndex -ge 0) {
            $output.AddPage($secondPdf.Pages[$secondIndex--])
        }
    }
    
    $output.Save($targetPdfPath)            
}

end {
}

答案4

一種低技術含量的解決方案。將 ADF 增量設定為 +2 掃描一次,以便獲得奇數頁。翻轉堆疊,將起始頁碼設定為最後一個奇數頁碼+1,並將增量設為-2,以相反的順序取得偶數頁。

相關內容