Word文書処理用のオープンソースRubyライブラリ
ソフトウェア開発者が Microsoft Word ファイルの生成と編集、ヘッダーとフッターの管理、表の挿入と編集などを行えるようにする無料の Ruby API。
Docx は、独自の JavaScript アプリケーション内で Word Docx ファイルを簡単に生成および管理する機能を提供するオープン ソースの JavaScript API です。ライブラリは Node でも Browser でもスムーズに動作します。ライブラリは非常に安定しており、使いやすいです。開発者は、わずか数行のコードで、外部に依存することなく Word 文書を作成および操作できます。
DocX API には、Word 文書の作成、DOCX ファイルの変更、Word ファイルへの段落の追加、ヘッダーとフッターの追加と管理、表の挿入と編集、箇条書きと番号付けのサポートなど、Word 文書の操作に関連するいくつかの重要な機能のサポートが含まれています。 、目次の作成、ドキュメントの余白の設定、ページ サイズの設定、テキストの配置、フォントとフォント サイズの管理、ドキュメント セクションの作成など。
Docx を始めよう
推奨されるインストール方法は、npm を使用することです。アプリケーションの Gemfile に対して次のコマンドを使用してください。
npm 経由でドキュメントをインストールする
gem install docx
Ruby 経由で既存の DOCX ファイルに書き込む
Ruby Docx ライブラリを使用すると、ソフトウェア開発者は既存の DOCX ファイルを開き、独自の Ruby アプリケーション内のファイルの内容を更新できます。ファイルを開くには、既存の DOCX ファイルの正しいパスを指定する必要があります。ドキュメントにアクセスできるようになると、1 行のテキストまたは段落の追加、テキストの置換、不要なコンテンツの削除、既存のテキストの変更などを簡単に行うことができます。すべてが適切に完了したら、指定したパスにドキュメントを保存できます。
Ruby APIでDOCXファイルを既存のファイルを作成する方法
require 'docx'
doc = Docx::Document.open('example.docx')
doc.bookmarks['example_bookmark'].insert_text_after("Hello world.")
# Insert multiple lines of text at our bookmark
doc.bookmarks['example_bookmark_2'].insert_multiple_lines_after(['Hello', 'World', 'foo'])
# Remove paragraphs
doc.paragraphs.each do |p|
p.remove! if p.to_s =~ /TODO/
end
# Substitute text, preserving formatting
doc.paragraphs.each do |p|
p.each_text_run do |tr|
tr.substitute('_placeholder_', 'replacement value')
end
end
# Save document to specified path
doc.save('example-edited.docx')
Ruby ライブラリ経由で Docx ファイルを読み込む
オープン ソースの Ruby Docx ライブラリには、数行の Ruby コードを使用して MS Word DOCX ファイルにアクセスして読み取る機能が用意されています。開発者は、既存の Docx ファイルのドキュメント オブジェクトを簡単に作成でき、わずか数行の Ruby コードでファイルのコンテンツを取得して表示できます。特定の段落やブックマークを簡単に表示できます。バッファからファイルを表示することもできます。
Ruby APIで既存のDocxファイルをオープン&読み取り
require 'docx'
# Create a Docx::Document object for our existing docx file
doc = Docx::Document.open('example.docx')
# Retrieve and display paragraphs
doc.paragraphs.each do |p|
puts p
end
# Retrieve and display bookmarks, returned as hash with bookmark names as keys and objects as values
doc.bookmarks.each_pair do |bookmark_name, bookmark_object|
puts bookmark_name
end
Word DOCX ファイルの表の読み取り
オープン ソースの Ruby DOCX ライブラリにより、ソフトウェア開発者は、Ruby コマンドを使用して DOCX ファイル内のテーブルにアクセスして読み取ることができます。わずか数行のコードで、テーブルの行、列、およびセルに簡単にアクセスできます。このライブラリは、テーブルの反復処理、行ベースの反復処理、および列ベースの反復処理をサポートしています。
Ruby API を介して Word 文書内の表を読み取る方法
require 'docx'
# Create a Docx::Document object for our existing docx file
doc = Docx::Document.open('tables.docx')
first_table = doc.tables[0]
puts first_table.row_count
puts first_table.column_count
puts first_table.rows[0].cells[0].text
puts first_table.columns[0].cells[0].text
# Iterate through tables
doc.tables.each do |table|
table.rows.each do |row| # Row-based iteration
row.cells.each do |cell|
puts cell.text
end
end
table.columns.each do |column| # Column-based iteration
column.cells.each do |cell|
puts cell.text
end
end
end