Toplu dönüştürme Word belgeleri PDF'lere


Yanıtlar:


24

Bu nasıl yapardım:

  1. CutePDF yazar indir
  2. Yazıcıyı varsayılan yazıcınız olarak ayarlayın (daha sonra tekrar değiştirebilirsiniz)
  3. Tüm .doc dosyalarınızı aynı klasöre yerleştirin
  4. Tüm dosyaları vurgulayın, sağ tıklayın, Yazdır

Sadece olumsuz tıklamak zorunda olmasıdır Ok her dosya için bir kez.


3
Yaptığım şey buydu. Yine de biraz farklı yapmak zorunda kaldım ... CutePDF "Yazıcıyı" kontrol panelinden açtım, bu yüzden yazıcı kuyruğunun ne olacağını gösterdi ... Sonra belgeleri sürükleyip o pencereye bıraktım - ve sonra hepsi dosya adını kabul etmek için ENTER'a çarpıyordu ... Hepsine MICROSOFT WORD - [dosyaadı] .pdf deniyordu, ancak bunu kolayca çözebiliyorum.
Kjensen,

Aynı iş akışı PDFCreator ile kullanılabilir ( en.pdfforge.org/pdfcreator ). Bir servis olarak veya otomatik modda yüklerseniz, seçim> baskı işlemleri dışında eller kapalı kalır.
matt wilkie

1
Windows'ta 15'ten fazla dosyayı seçersem, sağ tıkla bağlam menüsünden 'Yazdır' seçeneği kaybolur. Sadece drag n drop metodunu denedim, ancak 94 dosya bunun için çok fazla olabilir ...
Spacedman

41

Bu, stackoverflow.com alanına giriyor olabilir, ancak Word 2007'yi bir belgeyi açıp PDF olarak kaydetmek için komut dosyası yazabilirsiniz. Bu, Office 2007 ve Microsoft'tan "PDF Olarak Kaydet" eklentisini gerektirir .

Bunu bir dosyaya kaydedin SaveAsPDF.jsve aşağıdakileri kullanarak komut satırından çalıştırın 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();
    }
}

5
Yukarıdaki kod mükemmel çalışıyor ancak argüman olarak sadece bir dosya alıyor. JScript'te bir dizini filtrelemenin bir yolunu aramak için fazla tembeldim, bu yüzden Powershell'de aşağıdaki yazıyı ilham kaynağı olarak kullanarak bir yol hazırladım: stackoverflow.com/questions/181036/… PS E: \ MyDocuments> ls * .doc | % {cscript // nologo E: \ jssrc \ SaveAsPDF.js $ _}
Aniti 4:12

@bobbymcr Cevaptaki bağlantı öldü. Mevcut eklentiyi indirmek için buraya bakınızSaveAsPDF .
Peter Vandivier

9

cutepdf ve pdf99 işlerini iyi yapıyor, ancak PDFcreator'ı diğer iki baskıdan daha kaliteli olduğu için daha çekici buluyorum , ayrıca daha fazla yapılandırma seçeneği ve açık kaynaklı.


1
PDFCreator, yukarıdaki kjensen tarafından cevaplandırıldığı şekilde kullanılabilir, ancak, PDFCreator seçeneklerinde, seçtiğiniz dizindeki her belgeyi seçtiğiniz dosya adıyla otomatik olarak kaydedecek olan otomatik kaydetmeyi etkinleştirebileceğinizi belirtmek isterim. . Bu şekilde, her dosyayı kaydetmek istediğinizi doğrulamak için "enter" tuşuna basmanız gerekmez.

6

Google Dokümanlar'ı Amit Agarwal tarafından Toplu PDF Dönüştürücü Olarak Kullan

Sabit diskinizde, Adobe Acrobat gibi ticari yazılımlara yatırım yapmadan bir kerede PDF'ye dönüştürmek istediğiniz büyük miktarda Word Belgesi, Excel E-Tabloları ve PowerPoint Sunumları paketiniz varsa, Google Dokümanlar'ı deneyin.

Office belgelerini Google Dokümanlar'ı kullanarak PDF'ye dönüştürmek her zaman mümkün olsa da, yeni dışa aktarma özelliği, Microsoft Office ve OpenOffice dosya formatlarını üç kolay adımda PDF'ye (veya HTML) toplu olarak dönüştürmenizi daha da kolaylaştırır. Google Dokümanlar ile PDF'e Toplu Dönüştürme

Google Dokümanlar'ı Toplu PDF Dönüştürücü Olarak Kullanma

Adım # 1 - Google Dokümanlar’da, PDF’ye dönüştürülecek tüm belgelerinizi ve sunumlarınızı yükleyeceğiniz yeni bir "giriş" klasörü oluşturun.

Adım # 2 - Şimdi Google Dokümanlar'da Doküman Yükle seçeneğini seçin, hedef klasörü Adım # 1'de oluşturduğunuz klasöre ayarlayın ve tüm dokümanlarınızı yükleyin *.

Google Dokümanlar, resim yükleyebilmenize rağmen resmi olarak aşağıdaki dosya formatlarını desteklemektedir:

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

[*] Dokümanları Google Dokümanlar'a yüklemek için e-posta seçeneğini de kullanabilirsiniz, ancak bu her şeyi ana klasöre yerleştirir ve dokümanları yönetmek, özellikle de çok fazla dosyanız olduğunda sorun olabilir.

Adım # 3 - Tüm dosyalar Google Dokümanlar'a yüklendikten sonra, gösterge tablosunu tekrar açın ve sağ kenar çubuğundan "giriş" klasörünü seçin. Bu klasördeki tüm dosyaları seçin ve "Diğer Seçenekler" in altındaki "Dışa Aktar" ı seçin.

Burada çıktı biçimi olarak "PDF" (veya HTML) seçeneğini seçin ve tüm Word Belgeleriniz, sunumlarınız, elektronik tablolarınız vb. Anında PDF'ye dönüştürülecektir.

Çok sayıda belge yığınını PDF'ye dönüştürüyorsanız, Google Dokümanlar işlem sona erdiğinde otomatik olarak size bir e-posta göndereceğinden, tarayıcının dönüşümünün bitmesini beklemeniz gerekmez. E-posta, tüm PDF dosyalarını tek bir büyük ZIP’de doğrudan indirebileceğiniz bir bağlantıya sahip olacaktır.


1
Tablo, resim ve daha az yaygın yazı içeren herhangi bir belgenin önemli ölçüde yönetilmesi için hazırlıklı olun. Daha fazla dalmadım, ancak metin ve grafik içeren bir tablo ile yapılmış ve Calibri yazı tipini kullanarak bir antetli kağıdı içeren bir sözcük belgesini denedim. PDF orijinali gibi değildi.
rossmcm

Bu yöntem aslında 2009'dan itibaren uygulanmıştır ve ne yazık ki kaldırılmış gibi görünmektedir (ayrı dosyalar pdf olarak dışa aktarılabilir, ancak klasörler ... ...
Joe

6

Bobbymcr'in cevabı oldukça ilginç ve Word 2010 ile iyi çalışıyor. Yine de yapılması gereken bir gelişme var. Bobbymcr'nin orijinal komut satırı şöyle görünür:

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

.Js dosyalarınızı Notepad ++ gibi bir düzenleyiciyle ilişkilendirdiyseniz bu işe yaramaz. Bu durumda kullanılacak motoru da belirtmeniz gerekir, aksi halde cscript size bir hata mesajı verir. Bu //E:jscriptkomut satırı parametresi kullanılarak kolayca yapılabilir :

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


6

Önceki bir kullanıcının gönderdiği SaveAsPDF.js betiğiyle ilgili olarak. Bu, bir pdf dosyasını dönüştürmek için çalıştı, ancak bir dizindeki tüm dosyaları nasıl gizleyeceğimi bilmiyordum. Küçük bir oyun ile bir dosya oluşturdum. CovertAll2PDF.bat, aşağıdaki 2 satırla birlikte:

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

Ayrıca tüm dizinleri inceleyecek /r "Parent Directory"şekilde eklenebilir /r "PD" %%X in -...., bu durumda C: \ SaveAsPDF.js yapın ve Saveaspdf.js dosyasını bu dizine kaydedin.

Eminim sakar, ama benim için çalıştı. umarım bu birine yardımcı olur.


4

Denemedim ama OpenOffice.org'u kullanarak test edebileceğiniz bir toplu iş yöntemi var. Bunu, GNU / Linux ve Windows platformlarında açıklanan talimatlarla açıklayınız.http://www.tech-faq.com/convert-word-to-pdf.shtml (ve ayrıcahttp://www.togaware.com/linux/survivor/Convert_MS_Word.html "vehttp://www.oooforum.org/forum/viewtopic.phtml?t=3772 ).

OpenOffice.org'u .doc dosyasını okumak ve ardından PDF olarak dışa aktarmak için kullanma prensibi, OpenOffice.org'un sahip olduğunuz .doc dosyalarını açmanın alanlı bir iş haline geldiğini tespit ederseniz sağlam görünüyor.


1
OpenOffice.org'u kullanmak, tıklanabilir içindekiler tablosu vb. Sağlayacaktır. Herhangi bir "PDF'ye Yazdır" çözümü olmaz. Bkz superuser.com/questions/568/how-to-print-documents-to-pdf/…
Arjan

Pdf sanal yazıcılar için +1. Bunlar harika, keşke her işletim sisteminde varsayılan olarak kullanılabilirlerse.
Manu,

4

Bu küçük snippet benim için çok iyi çalıştı.

  • Beleş
  • Kolay
  • Dosya sayısında sınırlama yok

    $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()
    

Sadece bir PowerShell betiğine kaydedin Convert-Documents.ps1ve sonra tüm kaynak belgelerinizin bulunduğu klasörün içinden komut satırından çalıştırın.


Cevabımın cxw tarafından, cevabımın önemli kısımlarını kaldıran bir düzenleme yapıldı, yani komut dosyasının olması freeve işlenmesi ve unlimiteddosyaların sayısı. Bu nedenle, düzenlemeyi geri aldım, ancak düzenlemede önerilen sözdizimi düzeltmesini kullandım.
Umar Farooq Khawaja,

[ref]Komutları ve son satırı ( $Word.Close()) uzaklaştırdığımda Windows 7 altında benim için çalıştı . Aksi halde hatalar ortaya çıktı.
loved.by.Jesus

0

JODConverter ve Open Office kullanarak Windows XP'de birden çok belgeyi DOC'dan PDF'ye dönüştürme

Ön şartlar:


Adım 1 İndir JODConverter (son sürüm jodconverter-2.2.2.zip) 'den

Seçtiğiniz bir dizinde JODConverter zip dosyasını açın (D1)


Adım 2 OpenOffice'i servis modunda başlatın (daha fazla ayrıntı burada )

Aşağıdaki içerikle bir toplu iş dosyası start-service.bat oluşturun:

start-SERVICE.BAT:

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

:: işe yaramazsa, bu son parametreyi kaldırmayı deneyin (–nofirststartwizard)

(X: \ Program Files \ OpenOffice.org 3 \ varsayarak, Open Office'in kurulu olduğu ve soffice.exe dosyasının bulunduğu dizindir).

Start-service.bat komutunu çalıştırın (açık ofis şimdi servis modunda başlatıldı ve komut bekliyor)


Aşama 3

Bir dizinde pdf'ye dönüştürülecek tüm belgeleri topla (D2)

JODConverter'ı başlatan bir dönüştürme dosyası oluşturun ve dönüştürme talimatlarını yayınlayın:

convert.bat:

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

D1, Adım 1'de oluşturulan JODConverter dizinidir.

(JODConverter'ın başka bir sürüm numarası varsa, convert.bat dosyasını buna göre güncelleyin)

ÖNEMLİ: convert.bat dosyası D2 dizininde bulunmalıdır!


4. Adım:

Convert.bat komutunu çalıştır

D2 JODConverter'da bulunan her * .doc dosyası için, Open Office'in aynı dizinde aynı ada ve pdf uzantılı yeni bir dosya oluşturması gerekir.


0

Word belgeleri basitse ve PDF belgelerinde Word belgelerinin biçimlendirilmesine gerek duymuyorsanız, DOCXtoPDF programlarımın çekirdek kodunun etrafında basit bir döngü kullanabilirsiniz, istediğiniz şeyi yapmak için. DOCXtoPDF, birçok başka formattan PDF oluşturma için Python araç setim olan xtopdf dosyasını kullanır. Ayrıca ReportLab 1.21 yüklü olması gerekir.

Görmek:

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

Eğer 20 ya da daha az dosya için hızlı ve basit bir çevrimiçi yöntem istiyorsanız, o zaman online2pdf bu web sitesini kullanın , buradan dosyalarınızı yükleyebilir, bazı seçenekleri seçebilir ve sonra dönüştür ' ü tıklayabilirsiniz, tüm belgeleri dönüştürür ve ardından otomatik olarak tek bir zip dosyası indirir. PDF dosyaları.


0

Umar'ın cevabından yola çıkarak , işte aşağıdakileri yapacak olan değiştirilmiş bir PowerShell betiği:

  • DOC ve DOCX'i işle
  • Çalışırken bir ilerleme çubuğu göster

Ömer’in olduğu gibi, bunu kullanmak için:

  • Örneğin bir dosya olarak komut aşağıda kaydetmek doc2pdf.ps1yerde, seninPATH
  • doc veya docx dosyalarınızı içeren dizine gidin
  • koşmak 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

Word 2013 ve PowerShell 4.0 ile test edilmiştir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.