Project

doc_2_pdf

0.0
No commit activity in last 3 years
No release in over 3 years
Converts a folder structure containing .doc/.docx files into a folder structure of .pdf files
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.12
~> 10.0
~> 3.0

Runtime

 Project Readme

doc_2_pdf

doc_2_pdf converts a folder structure containing .doc/.docx files into a folder structure of .pdf files

Requirements and Dependencies

Developed/Tested with Ruby version 2.3, but it should work with any version >= 1.9. .doc/.docx are converted to .pdf through the libreconv gem which depends on Libre Office.

Installation

Add to your Gemfile:

gem 'doc_2_pdf', '~> 1.0'

Usage

First, configure DocPdf:

DocPdf.configure(
  doc_dir: '/some/path/with/doc/files', # required
  pdf_dir: '/where/to/save/pdf/files'   # required
)

To generate all docs in doc_dir, execute .convert!:

DocPdf.convert! do |pdf_path|
  puts "Created pdf file: #{pdf_path}"
end

convert! optionally accepts a code block with one argument. This argument (pdf_path in the above example) will be a string representing the path of the newly created pdf relative to pdf_dif defined at configuration. The folder structure pdf_dir will be identical to that of doc_dir but for every .doc/.dox file there will instead be a .pdf file with the same name.

Alternatively a single doc file can be converted to pdf using the convert_single! method:

doc_dir = '/some/path/with/doc/files'
pdf_dir = '/where/to/save/pdf/files'

DocPdf.configure doc_dir: doc_dir, pdf_dir: pdf_dir

relative_pdf_path = DocPdf.convert_single! File.join(doc_dir, 'My Word Doc.doc')

puts File.join pdf_dir, relative_pdf_path
# => '/where/to/save/pdf/files/My Word Doc.doc/'

License

MIT-LICENSE.