/ / Ako môžem počítať počet strán v súbore aplikácie Microsoft Word pomocou nástroja Ruby? - rubín, ms-slovo

Ako môžem počítať počet stránok v súbore aplikácie Microsoft Word pomocou Ruby? - rubín, ms-slovo

V webovej aplikácii Ruby chcem, aby boli používatelia schopnína odovzdanie dokumentov. Ak používateľ odovzdá súbor Microsoft Word (.doc), chcem, aby Ruby spočítaval počet strán v súbore. Bolo by dokonca jemnejšie získať počet slov, ale počet strán bude robiť.

Ako by som to urobil? Existuje Rubínová knižnica / klenot, ktorý to dokáže pre mňa? Je to možné aj vzhľadom na formát DOC?

odpovede:

1 pre odpoveď č. 1

V rubíne otvorte súbor so slovami, ktorý potrebujete použiť:

require "win32ole"
word = WIN32OLE.new("word.application")
word.visible = true
word.documents.count

# open/create new document
word.documents.add

# or open file
word.documents.open(path_to_file)

(Zdroj: http://www.ruby-forum.com/topic/99742#214485)

pozri: http://www.perlmonks.org/?node_id=614609 pre algoritmus na získanie správneho / očakávaného počtu slov (poznámka: algo je v perlu)

potom:

word.activedocument.close( false )
word.quit

4 pre odpoveď č. 2

Zavolajte ComputeStatistics () metóda na objekte dokumentu Rozsah:

require "win32ole"

WdStatisticWords = 0
WdStatisticPages = 2

word = WIN32OLE.connect("Word.Application")
doc = word.ActiveDocument

word_count = doc.Range.ComputeStatistics(WdStatisticWords)
page_count = doc.Range.ComputeStatistics(WdStatisticPages)

Nájdete tu rôzne články o automatizácii Word s Ruby tu.