2009-08-03 13:53:21 +0000 2009-08-03 13:53:21 +0000
36
36

Wsadowa konwersja dokumentów Word do plików PDF

Jak mogę wsadowo przekonwertować wiele dokumentów Worda i zapisać je jako [originalfilename].pdf?

Odpowiedzi (13)

41
41
41
2009-08-23 17:35:01 +0000

To może być popychanie go do terytorium stackoverflow.com, ale możesz skryptować Word 2007, aby otworzyć i zapisać dokument jako PDF. Wymaga to Office 2007 i wtyczki “Zapisz jako PDF” od Microsoftu.

Zapisz to do pliku SaveAsPDF.js i uruchom z wiersza poleceń, używając cscript.exe //nologo SaveAsPDF.js SomeFolder\MyDocToConvert.doc:

var fso = new ActiveXObject("Scripting.FileSystemObject");
var docPath = WScript.Arguments(0);
docPath = fso.GetAbsolutePathName(docPath);

var pdfPath = docPath.replace(/\.doc[^.]*$/, ".pdf");
var objWord = null;

try
{
    WScript.Echo("Saving '" + docPath + "' as '" + pdfPath + "'...");

    objWord = new ActiveXObject("Word.Application");
    objWord.Visible = false;

    var objDoc = objWord.Documents.Open(docPath);

    var wdFormatPdf = 17;
    objDoc.SaveAs(pdfPath, wdFormatPdf);
    objDoc.Close();

    WScript.Echo("Done.");
}
finally
{
    if (objWord != null)
    {
        objWord.Quit();
    }
}
```.
24
24
24
2009-08-03 17:35:13 +0000

Oto jak ja bym to zrobił:

  1. Pobierz CutePDF writer
  2. Ustaw program jako domyślną drukarkę (możesz to zmienić później)
  3. Umieść wszystkie swoje pliki .doc w tym samym folderze
  4. Podświetl wszystkie pliki, kliknij prawym przyciskiem myszy, Drukuj

Jedynym minusem jest to, że musisz kliknąć Ok raz dla każdego pliku.

9
9
9
2009-09-18 14:41:34 +0000

cóż, cutepdf i pdf99 dobrze wykonują swoją pracę, ale uważam, że PDFcreator jest bardziej atrakcyjny, ponieważ ‘drukuje’ w wyższej jakości niż pozostałe dwa, ma również więcej opcji konfiguracji, plus jest open-source.

6
6
6
2011-03-05 13:20:22 +0000

Użyj Dokumentów Google jako wsadowego konwertera PDF ](http://www.labnol.org/internet/batch-pdf-converter/10796/)by Amit Agarwal

Jeśli masz na dysku twardym ogromny zestaw dokumentów Worda, arkuszy Excela i prezentacji PowerPointa, które chciałbyś od razu przekonwertować do formatu PDF bez inwestowania w komercyjne oprogramowanie, takie jak Adobe Acrobat, wypróbuj Dokumenty Google.

Choć konwersja dokumentów Office do PDF za pomocą Google Docs zawsze była możliwa, nowa funkcja eksportu jeszcze bardziej ułatwia wsadową konwersję formatów plików Microsoft Office i OpenOffice do PDF (lub HTML) w trzech prostych krokach. Wsadowa konwersja do PDF za pomocą Google Docs

Użyj Google Docs jako wsadowego konwertera PDF

Krok 1 - Utwórz nowy folder “input” w Google Docs, do którego wrzucisz wszystkie dokumenty i prezentacje przeznaczone do konwersji do PDF.

Krok #2 - Teraz wybierz opcję Prześlij dokument w Google Docs, ustaw folder docelowy na ten, który utworzyłeś w kroku #1 i prześlij wszystkie swoje dokumenty.

Google Docs oficjalnie obsługuje następujące formaty plików, choć możesz również przesyłać obrazy:

* Microsoft PowerPoint (.ppt, .pps).
* Microsoft Word (.doc, .docx), OpenDocument (.odt) and StarOffice (.sxw).
* Microsoft Excel (csv, .xls, .xlsx) files and OpenDocument Spreadsheet (.ods).

[] Możesz również użyć opcji e-mail do przesłania dokumentów do Google Docs, ale to umieściłoby wszystko w głównym folderze i zarządzanie dokumentami może stać się problemem, zwłaszcza gdy masz zbyt wiele plików.

Krok 3 - Kiedy wszystkie pliki zostaną przesłane do Google Docs, otwórz ponownie pulpit nawigacyjny i wybierz folder “input” z prawego paska bocznego. Zaznacz wszystkie pliki w tym folderze i wybierz “Eksportuj” pod “Więcej opcji”.

Tutaj wybierz “PDF” (lub HTML) jako format wyjściowy, a wszystkie Twoje dokumenty Word, prezentacje, arkusze kalkulacyjne itp. zostaną natychmiast przekonwertowane na PDF.

A jeśli konwertujesz dużą partię dokumentów do PDF, nie musisz czekać w przeglądarce na zakończenie konwersji, ponieważ Dokumenty Google automatycznie wyślą ci e-mail po zakończeniu przetwarzania. Wiadomość będzie zawierała link, z którego można bezpośrednio pobrać wszystkie pliki PDF w jednym dużym pliku ZIP.

6
6
6
2010-06-04 09:06:35 +0000

Odnośnie skryptu SaveAsPDF.js, który zamieścił poprzedni użytkownik. To działało dla konwersji jednego pliku pdf, ale nie wiedziałem, jak przekonwertować wszystkie pliki w katalogu. Przy odrobinie zabawy stworzyłem plik. CovertAll2PDF.bat z następującymi 2 liniami:

echo off
for %%X in (*.doc) do cscript.exe //nologo SaveAsPDF.js "%%X"

jest też /r "Parent Directory" które można wstawić jak dla /r "PD" %%X in -.... które przejdzie przez wszystkie katalogi, w tym przypadku zrób to C:SaveAsPDF.js i zapisz Saveaspdf.js w tym katalogu.

Jestem pewien, że to niezgrabne, ale zadziałało dla mnie. mam nadzieję, że to komuś pomoże.

6
6
6
2012-07-12 06:54:37 +0000

Odpowiedź Bobbymcr jest całkiem interesująca i działa dobrze z Wordem 2010. Wciąż jednak można coś poprawić. Oryginalna linia poleceń Bobbymcr'a wygląda tak:

cscript.exe //nologo SaveAsPDF.js SomeFolder\MyDocToConvert.doc

To nie działa, jeśli skojarzyłeś pliki .js z jakimś edytorem, takim jak Notepad++. W tym przypadku musisz również określić silnik, który ma zostać użyty, w przeciwnym razie cscript wyświetli komunikat o błędzie. Można to łatwo osiągnąć za pomocą parametru linii poleceń //E:jscript:

cscript.exe //nologo //E:jscript SaveAsPDF.js SomeFolder\MyDocToConvert.doc

4
4
4
2017-03-11 11:06:12 +0000

Ten mały snippet działał dla mnie bardzo dobrze.

  • Free
  • Easy
  • No limits on number of files

Po prostu zapisz go do skryptu PowerShell jak Convert-Documents.ps1 a następnie uruchom go z linii poleceń z folderu, w którym znajdują się wszystkie Twoje dokumenty źródłowe.

4
4
4
2009-08-03 14:32:28 +0000

Nie próbowałem tego, ale istnieje metoda wsadowa wykorzystująca OpenOffice.org, którą mógłbyś przetestować. Instrukcje jak to zrobić na platformach GNU/Linux i Windows są opisane na stronie http://www.tech-faq.com/convert-word-to-pdf.shtml (a także na stronie http://www.togaware.com/linux/survivor/Convert_MS\Word.html “ oraz na stronie http://www.oooforum.org/forum/viewtopic.phtml?t=3772 ).

Zasada używania OpenOffice.org do wczytania pliku .doc, a następnie wyeksportowania go jako PDF wydaje się rozsądna, jeśli okaże się, że OpenOffice.org dobrze radzi sobie z otwieraniem plików .doc, które posiadasz.

1
1
1
2020-02-18 06:58:57 +0000

Nieco łatwiejszą alternatywą w porównaniu do Powershell, Batch i skryptów Windows Script Host powyżej jest narzędzie docx2pdf, które działa zarówno w systemie Windows, jak i MacOS: https://github.com/AlJohri/docx2pdf/

Podobnie jak inne odpowiedzi, to podejście wykorzystuje win32com w systemie Windows i JXA (Javscript for Automation, w zasadzie AppleScript w JS) w macOS. Jednak jest on spakowany w łatwy do zainstalowania i gotowy do wsadowej konwersji pakiet z paskiem postępu.

Instaluj:

pip install docx2pdf

Uruchom:

docx2pdf myFolderOfWordDocs

Zastrzeżenie: Napisałem to narzędzie po tym, jak zmagałem się ze znalezieniem wieloplatformowego rozwiązania do wsadowej konwersji docx do pdf z zerowymi problemami z formatowaniem, ponieważ bezpośrednio korzysta z Microsoft Word.

0
0
0
2011-03-05 14:38:31 +0000

Konwersja wielu dokumentów z DOC do PDF w Windows XP przy użyciu JODConverter i Open Office

Wymagania wstępne:

Krok 1 Pobierz JODConverter (najnowsza wersja jodconverter-2. 2.2.zip) ze strony

Rozpakuj plik zip JODConvertera w wybranym przez siebie katalogu (D1)


Krok 2 Uruchom OpenOffice w trybie serwisowym (więcej szczegółów tutaj )

Utwórz plik wsadowy start-service.bat o następującej zawartości:

start-service.bat:

X:\Program Files\OpenOffice.org 3\program\soffice.exe -headless
-accept="socket,host=127.0.0.1,port=8100;urp;" –nofirststartwizard

::jeśli nie działa spróbuj usunąć ten ostatni parametr(-nofirststartwizard)

(zakładając, że X:\Program Files\OpenOffice.org 3\ jest katalogiem, w którym zainstalowany jest Open Office i obecny jest soffice.exe).

Run start-service.bat (open office jest teraz uruchomiony w trybie serwisowym i oczekuje na polecenia)


Krok 3

Zbierz wszystkie dokumenty do konwersji do pdf w katalogu (D2)

Utwórz plik wsadowy convert.doc, który uruchamia JODConverter i wydaje instrukcje konwersji:

convert.bat:

java -jar "<D1>\lib\jodconverter-cli-2.2.2.jar" -f pdf *.doc

gdzie D1 to katalog JODConverter utworzony w Kroku 1

(Jeśli JODConverter ma inny numer wersji, zaktualizuj odpowiednio convert.bat)

WAŻNE: plik convert.bat musi znajdować się w katalogu D2 !


Krok 4:

Run convert.bat

Dla każdego pliku .doc obecnego w D2 JODConverter będzie wymagał od Open Office utworzenia nowego pliku o tej samej nazwie i rozszerzeniu pdf w tym samym katalogu.

0
0
0
2016-06-17 07:00:01 +0000

Jeśli chcesz szybkiej i prostej metody online dla 20 lub mniej plików, a następnie użyć tej strony online2pdf , tutaj można przesłać pliki, wybrać kilka opcji, a następnie kliknij przycisk konwertować, będzie konwertować wszystkie dokumenty, a następnie automatycznie pobrać pojedynczy plik zip zawierający pliki PDF.

0
0
0
2015-01-29 19:14:05 +0000

Jeśli dokumenty Worda są proste i jeśli nie potrzebujesz, aby formatowanie dokumentów Worda było obecne w dokumentach PDF, możesz użyć prostej pętli wokół głównego kodu mojego programu DOCXtoPDF, aby zrobić to, co chcesz. DOCXtoPDF wewnętrznie używa xtopdf, mojego zestawu narzędzi Pythona do tworzenia plików PDF z wielu innych formatów. Potrzebny jest także zainstalowany ReportLab 1.21.

Zobacz: http://jugad2.blogspot.in/2013/10/convert-microsoft-word-files-to-pdf.html http://slid.es/vasudevram/xtopdf https://bitbucket.org/vasudevram/xtopdf http://www.reportlab.com/ftp

0
0
0
2017-08-31 14:33:32 +0000

Opierając się na Odpowiedź Umara , oto zmodyfikowany skrypt PowerShell, który będzie:

  • przetwarzać DOC, jak również DOCX
  • pokazywać pasek postępu podczas pracy

Podobnie jak w przypadku Umar’s, aby użyć tego:

  • zapisz poniższy skrypt jako plik, np. doc2pdf.ps1, gdzieś w swoim komputerze PATH
  • zmień katalog na katalog zawierający Twoje pliki doc lub docx
  • uruchom powershell doc2pdf.ps1
$Word=New-Object -ComObject Word.Application

$Files=@(Get-ChildItem ".\*.docx") + @(Get-ChildItem ".\*.doc")
    # Need @() to get an array in case there is only one file - see
    # https://blogs.technet.microsoft.com/heyscriptingguy/2013/07/18/powertip-find-number-elements-in-a-powershell-array/#comment-104863

for($file_idx = 0; $file_idx -lt $Files.Count; ++$file_idx) {

    # Show the current progress
    $File = $Files[$file_idx]
    Write-Progress -Activity "Convert DOC(X) to PDF" `
                    -CurrentOperation $File.Name `
                    -PercentComplete (($file_idx/$Files.Count)*100)

    # Make the PDF
    $Document=$Word.Documents.Open($File.FullName)
    $Name=($Document.FullName -replace "\.docx?", ".pdf") # -replace is case-insensitive regex per https://ss64.com/ps/syntax-regex.html

    $Document.SaveAs([ref] $Name, [ref] 17)
    $Document.Close()
}

# Clean up
$Word.Quit() # Doesn't close other Word instance that may be running.

# Remove any dangling references, per https://technet.microsoft.com/en-us/library/ff730962.aspx
[System.Runtime.Interopservices.Marshal]::ReleaseComObject($Word)
Remove-Variable Word

# By cxw - https://superuser.com/users/269989/cxw - CC-BY-SA 3.0
# Modified from https://superuser.com/a/1187598/269989 by https://superuser.com/users/12797/umar-farooq-khawaja

Testowane z Wordem 2013 i PowerShellem 4.0.