12

Anybody aware of a piece of software which could do MS Office .doc to .pdf conversion for me?

I already tried OpenOffice but it appeared to be rather slow and resource-hungry for large documents.

quack quixote
  • 43,504
ngn
  • 151

22 Answers22

18

If you have MS Office 2007, you can use the Save as PDF plugin.

http://www.microsoft.com/downloads/details.aspx?FamilyId=F1FC413C-6D89-4F15-991B-63B07BA5F2E5&displaylang=en

11

PDFCreator is a free print-to-pdf tool based on ghostscript. It's fairly good, although the output of Acrobat Distiller tends to be a bit nicer.

6

If you want to do it programmatically and you're a .NET or Java programmer, you could use Aspose.Words in combination with Aspose.PDF.

It worked well for me.

EDIT: It seems that using a recent version, you only have to license Aspose Words.

splattne
  • 16,056
5

I regularly use - and recommend - PrimoPDF, which is available in both free and paid-for incarnations.

5

CutePDF Writer

Claudiu
  • 1,796
4

PDFCreator

3

Office 2007 has a free PDF export Add-In available here

2

Adobe Acrobat for money

OR

CutePDF for free, and it's great!

Galwegian
  • 135
2

I personally use PDF 995, a free pdf-printer :) works great

2

And no one mentioned openoffice with built in PDF saving support?

alpha1
  • 1,686
1

If you want to do it programatically take a look at my response here:

Convert DOC to PDF -- https://stackoverflow.com/questions/218556/send-document-to-printer-with-c#221818

This is code I currently use and it works very well. It will handle anything that Word will open such as .doc, .docx, .rtf etc.

Also, if you have many files to convert you can write you code such that Word is opened once in the background and files are subsequently opened, converted and closed, works very fast and I've had no issues with crashing etc. even when converting thousands of files at a go.

1

Try Altsoft Xml2PDF

1

Hey, look what I found. http://www.phplivedocx.org/2009/02/06/convert-doc-to-pdf-in-php/

PHPLiveDocx is a document creation program in php. It can be used to convert Doc to PDF. I've not tried it yet myself, but I certainly shall be experimenting with it soonish.

TRiG
  • 1,360
1

In the past I've tried different approaches. But now I'm fine with Microsoft Office Word 2007 and the SaveAsPDF-Addin. I've recorded the "save as pdf" process as macro and refined it a bit. Here is my current version:


Sub UpdateAndPDF()
' Update page header

    If ActiveWindow.View.SplitSpecial <> wdPaneNone Then
        ActiveWindow.Panes(2).Close
    End If
    If ActiveWindow.ActivePane.View.Type = wdNormalView Or ActiveWindow. _
        ActivePane.View.Type = wdOutlineView Then
        ActiveWindow.ActivePane.View.Type = wdPrintView
    End If
    ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader
    Selection.WholeStory
    Selection.Fields.Update
    ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument

' Update document (like F9)

    Selection.WholeStory
    Selection.Fields.Update
    WordBasic.AcceptAllChangesInDoc

' create PDF

    PDFFilename = (Replace(ActiveDocument.FullName, ".doc", ".pdf"))
    ActiveDocument.ExportAsFixedFormat OutputFileName:= _
        PDFFilename _
        , ExportFormat:=wdExportFormatPDF, OpenAfterExport:=False, OptimizeFor:= _
        wdExportOptimizeForPrint, Range:=wdExportAllDocument, From:=1, To:=1, _
        Item:=wdExportDocumentContent, IncludeDocProps:=True, KeepIRM:=True, _
        CreateBookmarks:=wdExportCreateHeadingBookmarks, DocStructureTags:=True, _
        BitmapMissingFonts:=True, UseISO19005_1:=False

' Close Word

    ActiveDocument.Save
    Application.Quit
End Sub

With the macro option of word I can use this macro in the command line for automation purposes. e. g.

"c:\Program Files\Microsoft Office\Office12\WINWORD.EXE" wordfile.doc /mUpdateAndPDF 

If you want to use it for several documents in a batch file, you can try this:


@echo off
SET WORD="c:\Program Files\Microsoft Office\Office12\WINWORD.EXE"
FOR %%f in (*.doc) do %WORD% %%f /mUpdateAndPDF

phuclv
  • 30,396
  • 15
  • 136
  • 260
1

You could use online service like one at http://www.freepdfconvert.com No need to install any software.

Tomas
  • 141
0

If you're just doing it occasionally, you can use Zamzar.com to do all sorts of conversions.

TRiG.

TRiG
  • 1,360
0

I have researched this market extensively and Aspose.Words is worth considering. It does a good job and is 100% .net, but if you are after perfect fidelity (Aspose doesn't render footnotes, limited text flow and floating objects) then the only option you have is to automate Office directly, which is a pain on the server, or use a product that has done all the hard work for you such as the Muhimbi PDF Conversion Service that runs on a server and can be called using a web service.

Full disclosure, I work for Muhimbi (which is why I have researched the market so extensively).

0

Aspose.Words has been mentioned above. I just want to add the most recent info.

Aspose.Words now converts to PDF by itself (you previously needed Aspose.Words + Aspose.Pdf). One component to use is better than two.

One of the benefits you get with Aspose.Words is that you can get the same great looking documents not only in PDF, but in XPS, render pages as images and even print documents.

I'm on the Aspose.Words team.

0

I havent looked at the built in PDF features in the last couple of years, but you can use office automation to print to a PostScript Printer driver, which can be be setup as a printer. This creates a PostScript(PS) File which can be converted to PDF using GhostScript.

0

I am using doPDF, really great and it doesn't popup any adds like PDF 995

Nicu Zecheru
  • 5,572
0

Office 2010 and above can save the file as pdf without any plug-in. Office 2013 can even open and edit the pdf file (of course if the file has not been protected from editing)

Windows 10 also has a built-in PDF printer and you don't need any 3rd party software for that purpose

phuclv
  • 30,396
  • 15
  • 136
  • 260
-1

See this question for the C# code to a free Word to PDF converter.

Eric Ness
  • 101