Biblioteca Ruby de código aberto para processamento de documentos do Word 

API Ruby gratuita que permite que desenvolvedores de software gerem e editem arquivos do Microsoft Word, gerenciem cabeçalhos e rodapés, insiram e editem tabelas e muito mais.

Docx é uma API JavaScript de código aberto que fornece a capacidade de gerar e gerenciar arquivos Word Docx dentro de seu próprio aplicativo JavaScript com facilidade. A biblioteca pode funcionar sem problemas para o Node, bem como no navegador. A biblioteca é muito estável e fácil de usar. Com apenas algumas linhas de código, os desenvolvedores podem criar e manipular documentos do Word sem dependências externas.

A API DocX inclui suporte para vários recursos importantes relacionados ao trabalho com documentos do Word, como criação de documentos do Word, modificação de arquivos DOCX, adição de um parágrafo a um arquivo do Word, adição e gerenciamento de cabeçalhos e rodapés, inserção e edição de tabelas, suporte a marcadores e numeração , Criação de tabelas de conteúdo, definir margens de documentos, definir tamanho de página, alinhamento de texto, Gerenciar fontes e tamanhos de fontes, criação de seções de documentos e muito mais.

Previous Next

Introdução ao Docx

A maneira recomendada de instalar é usando npm. Por favor, use o seguinte comando para o Gemfile do seu aplicativo

Instalar documentos via npm

 gem install docx

Gravar em arquivos DOCX existentes via Ruby

A biblioteca Ruby Docx permite que desenvolvedores de software abram arquivos DOCX existentes e atualizem o conteúdo de um arquivo dentro de seus próprios aplicativos Ruby. Para abrir um arquivo, você precisa fornecer o caminho correto do arquivo DOCX existente. Depois de ter acesso aos documentos, você pode adicionar facilmente uma única linha de texto ou parágrafos, substituir texto, remover conteúdo indesejado, modificar o texto existente e assim por diante. Depois que tudo estiver concluído corretamente, você poderá salvar o documento no caminho especificado.

Como escrever para DOCX arquivos via Ruby API

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')

Lendo arquivo Docx via biblioteca Ruby

A biblioteca Ruby Docx de código aberto fornece funcionalidade para acessar e ler arquivos MS Word DOCX usando algumas linhas de código Ruby. Os desenvolvedores podem criar facilmente o objeto de documento para nosso arquivo Docx existente e podem recuperar e exibir o conteúdo do arquivo com apenas algumas linhas de código Ruby. Você exibe facilmente um determinado parágrafo ou marcador. Você também pode exibir arquivos de um buffer.

Open & Read Existing Docx File via Ruby API

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

Lendo tabelas em arquivos DOCX do Word

A biblioteca Ruby DOCX de código aberto oferece aos desenvolvedores de software a capacidade de acessar e ler tabelas dentro de um arquivo DOCX usando comandos Ruby. Você pode acessar facilmente linhas, colunas e células de tabelas com apenas algumas linhas de código. A biblioteca dá suporte à iteração por meio de tabelas, iteração baseada em linha e iteração baseada em coluna.

Como ler Tabelas em Documentos do Word via Ruby API

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
 Português