4

Мне часто (например, более 10 раз в день) нужно конвертировать PDF в слово. Я использую функцию "Сохранить как" в Acrobat Pro. Есть ли какой-нибудь хороший способ ускорить этот процесс и свести его к одному клику? В идеале, способ, который также не связывает Adobe во время обработки (то есть, заморозить меня из других вариантов).

Лучшим вариантом будет простой щелчок правой кнопкой мыши по файлу, но я буду благодарен за любые идеи.

1 ответ1

2

Разрешить запуск сценария на powershell, введите cmd от имени администратора:

Выберите контактный cmd нажмите Shift+щелчку правой кнопкой мыши

powershell -command "Set-ExecutionPolicy RemoteSigned"

Создайте папку PdfConvert на рабочем столе, запустите Pdf2Docx4.cmd

Конвертируйте все файлы pdf в папке $ PDFpath :) в docx.

Pdf2Docx4.cmd:

powershell .\PdfConvert\Pdf2Docx4.ps1

Pdf2Docx4.ps1:

$TypeExt="docx"
$closeDocParam = $true;
$PDFpath = "D:\VBS\PS-29-AcrobatProX\"

Get-ChildItem -Filter *.pdf |Where {

# logical document

    $AVDoc = New-Object -ComObject AcroExch.AVDoc;    

    $AVDoc.Open($_.Fullname, "") | Out-Null;
# physical document

    $PDDoc = $AVDoc.GetPDDoc();                           
    $JavaScriptObject = $PDDoc.GetJSObject();                        
# get the bridge JavaScript Object

    $T = $JavaScriptObject.GetType();

    $T.InvokeMember("SaveAs",

        [Reflection.BindingFlags]::InvokeMethod -bor `
            [Reflection.BindingFlags]::Public       -bor `
            [Reflection.BindingFlags]::Instance          ,

        $null,
        $JavaScriptObject,
        @([IO.Path]::ChangeExtension($_.Fullname, $TypeExt), ("com.adobe.acrobat."+$TypeExt)));

        $T.InvokeMember("closeDoc", 

        [Reflection.BindingFlags]::InvokeMethod -bor `
            [Reflection.BindingFlags]::Public       -bor `
            [Reflection.BindingFlags]::Instance          ,

            $null, 
            $JavaScriptObject, 
            $closeDocParam) | Out-Null;

    $PDDoc.Close()  | Out-Null;
    $AVDoc.Close(1) | Out-Null;
}

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .