If you can, try switching to Google Docs. It handles this situation very well.
It is designed around collaboration on documents; it colors the edits or marks them with strikethrough for deletions until the edit it approved.
You can see who has made any edits on the page because it shows a name tag in the right margin on the pending edits.
Google Docs ...
If you have LibreOffice installed, you can call it directly with subprocess:
for filename in os.listdir(os.getcwd()):
subprocess.call(['soffice', '--headless', '--convert-to', 'docx', filename])
This will convert all the files in the current directory with names ending in .doc to .docx ...
It has a (free) online mode or the desktop (Windows) app for $20 (USD) - with a free trial.
I have only used the online version however it was very accurate. and now to go over your specific requirements one by one:
free of charge: Online: Yes, Desktop: No: Free Trial available - $20 for full version.
output either doc or docx: No; ...
LibreOffice can load Word documents and export them as PDF and it can be invoked on the command line:
soffice --convert-to pdf *.doc
soffice --convert-to pdf:writer_pdf_Export *.doc
Providing soffice is on your path will merrily convert all of your .doc files in the current directory to pdf. In my case soffice is located at "c:\Program Files\...
As suggested by Nickolai you may use LibreOffice for PDF to Word conversion that works pretty well for reasonably simple PDF files.
LibreOffice has some utilities like convert that allow you to run it headless from the command line in Linux, Windows and MAC so you can do the conversions in the background.
I am not familiar with recipe management systems, but Elyse could help accomplish most of what you outline. Elyse is a tagging system that helps organize files on your computer. With Elyse, you could "tag" each recipe with all of its key ingredients. This would then allow you to search recipes by ingredient (or combination of ingredients) very quickly.
I would highly recommend PowerGrep for fine-grained searching through binary collections. PowerGrep makes lite work of this.
In the following example PowerGrep was able to find the literal string Mediator 171 times in 14 files from an initial set of 170 PDFs under 35 child directories... The search took around 1-2 seconds.
Consider using the LEADTOOLS ePrint virtual printer driver and file converter (https://www.eprintdriver.com/). You can select one or more Word files and "print" them to a virtual PDF printer. Using this, I was able to obtain a PDF output of size smaller than your PDF output.
If you are a programmer creating your own application, you could also consider ...
There are collaboration tools and revision control available within Word but as with many things MS it does not follow a standard, is not compatible with anything else and may not even work between versions or installations of Word.
If you must use Word I would suggest using the built in reviewing tools but then rather than git - which treats .docx as ...
Try DragKing, it will do exactly what you need. It isn't a Microsoft Word plug-in but rather a Windows open source, AHK-based donationware app (which really shouldn't matter anyways). There isn't an extensive Word plug-in database that I'm aware of either (like there is for Firefox), so this will probably be your best option. Hope it helps!
I've used CutePDF Writer (free) (http://www.cutepdf.com/Products/CutePDF/writer.asp) for years, as I've found it to produce consistently good results with small file sizes. Highly recommend it if you haven't tried it. Using CutePDF, I too was able to get a smaller PDF file than the one in your document upload (366KB).
You could use some python, it's built in re regular expression library and the python-docx library.
Python and python-docx are both free, gratis & open source, and available for most platforms including Windows
The process will work even on a machine that doesn't have word installed.
The code is short and simple
You must get the indentation right
You can use Google Docs. It is free for personal use.
You can upload a Microsoft Word document from your device (File -> Open -> Upload) and edit it then download it as a Microsoft Word document (File -> Download -> Microsoft Word). You can also download it as a PDF file or EPUB document. If you want to email it, you can do that too.
One possibility would be to use pandoc to convert the word processor format document to one you can open in your browser or IDE - I would suggest html for the former and markdown for the IDE. You could even convert to an e-book format such as epub as there are several lightweight viewers.
The one downside is I don't think it supports the older Microsoft ....
After quite a bit of searching, I found AbleWord
AbleWord keeps a common user interface with menus and tool icons
familiar to average users.
In this light and excellent word processor, all basic editing
functions are included like find and replace, indent and bullet,
paragraph alignment, inserting tables, text frames ...
Notepad++ is the one that comes to mind here... ( https://notepad-plus-plus.org )
Doesn't do dictionaries/spellcheck by default, but you can add that via plugins(just checked and it does at least do English without additional downloads).
Plugins so far has let me add anything I've wanted, and the default install is very light.
There are screenshots on ...
For a coding based solution: Essential PDF , Essential DocIO can be used to parse PDF and Doc/Docx files respectively. Essential XlsIO can be used to output the structured data to Excel.
PDF text extraction example
Tables in Word
The entire product is available for free with no limitations through the community license if you qualify (less than 1 million ...
LibreOffice is an open-source free-of-cost office suite competing against Microsoft Word and Excel.
LibreOffice offers an API through which you can programmatically manipulate the app. This API is implemented in various languages including Java, C++, and Python.
This API provides acces to much of the app’s functionality. You may be able to ...
What you've described can be done with Sharepoint.
I've successfully accomplished this with SP 2010 and 2013.
In Sharepoint, create a custom list with columns for the data you need to capture.
Create a document content type and replace the default template with your Word doc template.
Create a document library with the same columns you created for your list ...
From what your headline says, I was thinking of Inkscape right away. Ever heard about this? It's free and open source and runs on all major OS's (Linux, Windows, OSX).
Inkscape is a comprehensive vector graphics tool. You can either exchange the native *.svg file with your colleagues, who might import it into MS Word or MS PowerPoint. Or you might try any ...
Essential DocIO is available for free through the community license program if you qualify.
Essential DocIO doesn't require Office to be installaed and can read .DOC and .DOCX files. .NET 2.0 is also supported.
Check out Draft. You can't use Word documents with it, but I think it has the collaborative and approval aspects that you are looking for.
It's designed primarily for plain text and markdown, so be aware of that. It does allow for the "pull request" style interaction that you are requestin:
However, when you share your document using Draft, any changes ...
You could utilize an open source document manager to collaborate and track versions. I would start by looking at alfresco, nuxeo, and sensenet. (Disclosure: my company is a SenseNet partner.)
We use SenseNet internally to manage our documents to avoid the situation you have described. To implement this solution you would first download and install a ...
You are looking for an open source converter which converts Microsoft Word (.docx or .doc) to PDF, and then I found Office To PDF utility that help you to convert you DOCX file into PDF. OfficeToPDF is a command line utility that converts Microsoft Office 2003, 2007, 2010 and 2013 documents from their native format into PDF using Office's in-built PDF export ...
The DITA standard was created to solve exactly this problem.
You can create documentation fragments, and then combine them together to create full books.
It is very useful when the same chapter is used in several documentations (for instance a chapter about Threat Models is included in the documentation of several products).
It is also very convenient ...