Forum moved here!

# Home / Support for MS Office file formats e.g. Doc, Docx, etc

Xium

Will there ever be support for any MS Office file extensions?

GitHubRulesOK

Highly unlikely, given previous answers, and their constantly changing structures. (O)XPS was the most competive to PDF and is still supported, as is the depreciating less secure CHM format.

Microsoft usually provide(d) good lightweight viewers for their proprietary formats e.g. Word Viewer covered 14 variant file structures and none of those included xls or ppt variants. Even without version differences there are 21 different file extensions so potentially a hundred different MS office file structures is not unlikely. Office formats are now generally well supported by many powerful editor applications, though there were some good lighterweight viewers such as those based on Oracle code.

For Open Source compatability I suggest either Apache or Libre Office (works well with visio files)
But personally use FreeOffice and SoftMaker Office for simpler portable convenience.

derrik

Hello, is there any way to read in Sumatra these formats: doc, docx, rtf? Maybe there are any plugins for it. It will be enough for me only read function, not editing.

GitHubRulesOK

The only way a plugin could work is to convert from the dozens of MS formats to one common open format such as OXPS (which SumatraPDF can handle reasonably well) but MS tried that and it did not get enough traction, thus is now a “depreciating” format.

The best option is to use Word itself to natively import, edit and export PDF files, though I personally tend to use the much longer standing universal RTF (WordPad) format then finally save it to PDF for distribution.

It is possible to use WordPad command lines to convert Doc(x) to xps or pdf but the results are at best highly variable since there is not one well defined MS input format.

So here I have written a modern sample DOCX (With colour and could have any other formatting such as images).

I also saved it as a text file named Doc2PDF.cmd i.e. a command line tool to be used for drag and drop file conversion. (Avoid using any (brackets) in that Cmd filename)

I dropped a copy of the DocX onto the doc2pdf.cmd and it opened as a searchable PDF in SumatraPDF (note it is converted as formatted e.g. coloured with images not just the plain text.)

very carefully copy and past the following block using NOTEPAD and save in UTF-8 format as Doc2PDF.cmd or Download from here (Right Click) and to avoid double confirming “Keep” download as .TXT and rename to .CMD

VirusTotal Report

@echo off & goto MAIN

Convert .Doc(x), .ODT, .RTF or .Txt to PDF & open them in SumatraPDF
Using FileName PrinterName [ DriverName [ PortName ] ])
Could also be used with "Microsoft XPS Document Writer" /o:MutiPage.Tiff ,
or to save as MutiPage.GIF .XPS, or output as 72dpi.jpg / 96dpi.png images.

NOTE since JPG and PNG are single page formats their multiple page files will
be  FileName-1.png, FileName-2.png ... so may need re-ordering with a rename.

You can drag and drop a file on this .cmd.

:MAIN
: Lets limit the file types accepted (beware a .Wri may NOT be a doc / rtf file).
for %%X in (Doc DocX ODT RTF Txt Wri) do if /i .%%X==%~x1 goto OK
echo Wrong filetype: not one of Doc DocX ODT RTF Txt Wri & pause & exit /b
:OK
if exist "%~dpn1.pdf" echo  Warning: "%~dpn1.pdf" & echo  Exists and you need to move it first. & pause & exit /b
echo  Waiting for print spooling
"%ProgramFiles%\Windows NT\Accessories\WORDPAD.EXE" /pt %1 "Microsoft Print to PDF" "Microsoft Print to PDF" "%~dpn1.pdf"
start "" "c:\your path to \SumatraPDF\SumatraPDF.exe" "%~dpn1.pdf"



Note there can be a delay whilst the print spooler works in the background so use a small test file to gauge your machines delay.

To protect each run it should not allow overwrite, but you can delete that line (if exist …) at your own risk.

You will also need to edit the last line to the location of your sumatrapdf.exe

If you get gobbledy gook like this it is one of the older Doc formats that WordPad 10 no longer understands.