Odpowiedzi:
Tak bym to zrobił:
Jedynym minusem jest to, że musisz kliknąć Ok raz dla każdego pliku.
Może to popychać go na terytorium stackoverflow.com, ale możesz napisać skrypt w programie Word 2007, aby otworzyć i zapisać dokument jako plik PDF. Wymaga to pakietu Office 2007 i wtyczki „Zapisz jako PDF” firmy Microsoft.
Zapisz to w 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();
}
}
SaveAsPDF
pobrać aktualne wtyczki.
Cóż, cutepdf i pdf99 wykonują swoją pracę dobrze, ale uważam, że PDFcreator jest bardziej atrakcyjny, ponieważ „drukuje w wyższej jakości niż pozostałe dwa, ma też więcej opcji konfiguracji, a także jest open-source.
Używaj Dokumentów Google jako Batch PDF Converter firmy Amit Agarwal
Jeśli masz duży pakiet dokumentów Word, arkuszy kalkulacyjnych Excel i prezentacji PowerPoint na dysku twardym, który chcesz natychmiast przekonwertować na format PDF bez inwestowania w komercyjne oprogramowanie, takie jak Adobe Acrobat, wypróbuj Dokumenty Google.
Chociaż zawsze można było konwertować dokumenty pakietu Office na pliki PDF za pomocą Dokumentów Google, nowa funkcja eksportu ułatwia jeszcze grupową konwersję formatów plików Microsoft Office i OpenOffice na pliki PDF (lub HTML) w trzech prostych krokach. Konwersja wsadowa do formatu PDF za pomocą Dokumentów Google
Używaj Dokumentów Google jako Batch PDF Converter
Krok # 1 - Utwórz nowy folder „wejściowy” w Dokumentach Google, w którym prześlesz wszystkie dokumenty i prezentacje, które mają zostać przekonwertowane na format PDF.
Krok 2 - Teraz wybierz opcję Prześlij dokument w Dokumentach Google, ustaw folder docelowy na folder utworzony w kroku 1 i prześlij * wszystkie dokumenty.
Dokumenty Google oficjalnie obsługują następujące formaty plików, ale 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, aby przesłać dokumenty do Dokumentów Google, ale to wszystko umieściłoby w głównym folderze, dlatego zarządzanie dokumentami może stać się problemem, szczególnie gdy masz zbyt wiele plików.
Krok # 3 - Po przesłaniu wszystkich plików do Dokumentów Google ponownie otwórz pulpit nawigacyjny i wybierz folder „wejściowy” z prawego paska bocznego. Wybierz wszystkie pliki w tym folderze i wybierz „Eksportuj” w „Więcej opcji”.
Tutaj wybierz „PDF” (lub HTML) jako format wyjściowy, a wszystkie dokumenty Word, prezentacje, arkusze kalkulacyjne itp. Zostaną natychmiast przekonwertowane na format PDF.
A jeśli konwertujesz dużą partię dokumentów do formatu PDF, nie musisz czekać w przeglądarce na zakończenie konwersji, ponieważ Dokumenty Google automatycznie wyślą Ci wiadomość e-mail po zakończeniu przetwarzania. Wiadomość e-mail będzie zawierać link, z którego można bezpośrednio pobrać wszystkie pliki PDF w jednym dużym pliku ZIP.
Odpowiedź Bobbymcr jest dość interesująca i działa dobrze w programie Word 2010. Nadal jednak jest coś do zrobienia. Oryginalny wiersz poleceń Bobbymcr wygląda następująco:
cscript.exe //nologo SaveAsPDF.js SomeFolder\MyDocToConvert.doc
To nie działa, jeśli masz skojarzone pliki .js z jakimś edytorem, takim jak Notepad ++. W takim przypadku musisz także określić silnik, którego chcesz użyć, w przeciwnym razie cscript wyświetli komunikat o błędzie. Można to łatwo osiągnąć za pomocą //E:jscript
parametru wiersza polecenia:
cscript.exe //nologo //E:jscript SaveAsPDF.js SomeFolder\MyDocToConvert.doc
Odnośnie skryptu SaveAsPDF.js opublikowanego przez poprzedniego użytkownika. Działa to w przypadku konwersji jednego pliku pdf, ale nie wiedziałem, jak ukryć 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"
istnieje również taki, /r "Parent Directory"
który można wstawić, ponieważ /r "PD" %%X in -....
będzie on przechodził przez wszystkie katalogi, w takim przypadku należy ustawić C: \ SaveAsPDF.js i zapisać Saveaspdf.js w tym katalogu.
Jestem pewien, że jest niezdarny, ale zadziałał dla mnie. mam nadzieję, że to komuś pomoże.
Nie próbowałem tego, ale istnieje metoda wsadowa przy użyciu OpenOffice.org, którą można przetestować. Instrukcje, jak to zrobić na platformach GNU / Linux i Windows, opisane na stroniehttp://www.tech-faq.com/convert-word-to-pdf.shtml (a także na stroniehttp://www.togaware.com/linux/survivor/Convert_MS_Word.html ”orazhttp://www.oooforum.org/forum/viewtopic.phtml?t=3772 ).
Zasada użycia OpenOffice.org do odczytu pliku .doc, a następnie wyeksportowania go jako pliku PDF wydaje się rozsądna, jeśli okaże się, że OpenOffice.org czyni rozsądne zadanie otwierania posiadanych plików .doc.
Ten mały fragment działał dla mnie bardzo dobrze.
Brak ograniczeń liczby plików
$Word=New-Object -ComObject Word.Application
$Files=Get-ChildItem ".\*.docx"
ForEach ($File In $Files) {
$Document=$Word.Documents.Open($File.FullName)
$Name=($Document.FullName).Replace("docx", "pdf")
$Document.SaveAs([ref] $Name, [ref] 17)
$Document.Close()
}
$Word.Close()
Po prostu zapisz go w skrypcie PowerShell, takim jak, Convert-Documents.ps1
a następnie uruchom z wiersza poleceń z folderu, w którym znajdują się wszystkie dokumenty źródłowe.
free
i może przetwarzać i unlimited
liczbę plików. Dlatego wycofałem edycję, ale włączyłem poprawkę składniową sugerowaną w edycji.
[ref]
polecenia i ostatnią linię ( $Word.Close()
). W przeciwnym razie wystąpiły błędy.
Konwertowanie wielu dokumentów z DOC na PDF w Windows XP za pomocą JODConverter i Open Office
Wymagania wstępne:
Krok 1 Pobierz JODConverter (najnowsza wersja jodconverter-2.2.2.zip) z
Rozpakuj plik zip JODConverter w wybranym 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 treś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 plik soffice.exe).
Uruchom start-service.bat (otwarte biuro jest teraz uruchomione w trybie serwisowym i oczekuje na polecenia)
Krok 3
Zbierz wszystkie dokumenty do konwersji na pdf w katalogu (D2)
Utwórz plik wsadowy convert.doc, który uruchamia JODConverter i wydaj 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:
Uruchom program 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.
Jeśli dokumenty Word są proste i jeśli nie potrzebujesz formatowania dokumentów Word w dokumentach PDF, możesz użyć prostej pętli wokół podstawowego kodu moich programów DOCXtoPDF, aby zrobić to, co chcesz. DOCXtoPDF wewnętrznie korzysta z xtopdf, mojego zestawu narzędzi Python do tworzenia plików PDF z wielu innych formatów. Musisz także zainstalować ReportLab 1.21.
Widzieć:
http://jugad2.blogspot.in/2013/10/convert-microsoft-word-files-to-pdf.html
http://slid.es/vasudevram/xtopdf
Jeśli chcesz szybką i prostą metodę online dla 20 lub mniej plików, skorzystaj z tej witryny online2pdf , tutaj możesz przesłać swoje pliki, wybrać niektóre opcje, a następnie kliknąć przycisk konwertuj, spowoduje to konwersję wszystkich dokumentów, a następnie automatyczne pobranie pojedynczego pliku zip zawierającego pliki PDF.
Opierając się na odpowiedzi Umara , oto zmodyfikowany skrypt PowerShell, który:
Podobnie jak w przypadku Umara, użyj tego:
doc2pdf.ps1
gdzieś w swoimPATH
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 programem Word 2013 i PowerShell 4.0.