GhostScript может сделать это легко. Вы можете скачать его здесь: http://ghostscript.com/download/gsdnld.html В этом примере я использую 32-разрядную версию для Windows.
Ниже приведены два файла. Один - это скрипт powershell, а другой - командный файл. Пакетный файл запустит сценарий powershell и пропустит все параметры политики выполнения, чтобы его можно было запускать с любого компьютера без конфигурации powershell. Сценарий powershell использует ghostscript для перепечатки защищенных PDF-файлов и сохранения их в виде обычных PDF-файлов в определенном каталоге.
Пакет (расположение: Q: \ PDFStoPDF \ convertPDF.bat)
cd "q:\PDFStoPDF\gs" powershell.exe -noexit -ExecutionPolicy Bypass -File "q:\PDFStoPDF\gs\pdfconvert.ps1"
Во-первых, пакет изменяет каталог на местоположение GhostScript EXE и сценария powershell ниже. Затем он обходит политику выполнения и запускает скрипт powershell.
PowerShell (расположение: Q: \ PDFStoPDF \ gs \ pdfConvert.ps1)
$GhostScript = "q:\PDFStoPDF\gs\gs9.20\bin\gswin32c.exe" Get-ChildItem "Q:\PDFStoPDF\*.pdf" | Where { $_.BaseName -NotMatch "Conv" } | ForEach-Object { $InputFile = $_.FullName $OutputFile = "Q:\PDFStoPDF\ (Conv).pdf" -F $_.BaseName & "$GhostScript" -dPDFA -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile="$OutputFile" "$InputFile" }
Сценарий powershell сначала устанавливает путь к исполняемому файлу GhostScript gswin32c.exe
. Далее мы сообщаем ему, что нужно получить все PDF-файлы из папки «Q: \ PDFStiPDF \», где имя файла не содержит букв «conv» по порядку. Продолжая по конвейеру, мы сообщаем ghostscript, что входным файлом будет текущее имя файла, а выходной файл будет находиться в том же каталоге, но просто добавим CONV в конец имени файла.
Перед сценарием : Q: \ PDFStoPDF \ myPDF01.pdf
После сценария : Q: \ PDFStoPDF \ myPDF01Conv.pdf
Ключ -NotMatch позволяет файлам, которые уже были преобразованы, оставить нетронутыми.
Далее скрипт печатает и сохраняет PDF с помощью принтера PDF pdfwrite
Итак, чтобы сделать эту работу, нужно перетащить файл в каталог Q: \ PDFStoPDF \, а затем щелкнуть по файлу .bat, который там находится. Он возьмет файл PDF и сохранит его в виде редактируемого файла PDF в том же каталоге.