Avoimen lähdekoodin Ruby-kirjasto Word-asiakirjojen käsittelyyn
Ilmainen Ruby API, jonka avulla ohjelmistokehittäjät voivat luoda ja muokata Microsoft Word -tiedostoja, hallita ylä- ja alatunnisteita, lisätä ja muokata taulukoita ja paljon muuta.
Docx on avoimen lähdekoodin JavaScript API, joka tarjoaa mahdollisuuden luoda ja hallita Word Docx -tiedostoja omassa JavaScript-sovelluksessaan helposti. Kirjasto voi toimia sujuvasti sekä Nodessa että selaimessa. Kirjasto on erittäin vakaa ja helppokäyttöinen. Vain muutamalla koodirivillä kehittäjät voivat luoda ja käsitellä Word-asiakirjoja ilman ulkoisia riippuvuuksia.
DocX API on sisältänyt tuen useille tärkeille Word-asiakirjojen kanssa työskentelemiseen liittyville ominaisuuksille, kuten Word-dokumenttien luomiseen, DOCX-tiedostojen muokkaamiseen, kappaleen lisäämiseen Word-tiedostoon, ylä- ja alatunnisteiden lisäämiseen ja hallintaan, taulukoiden lisäämiseen ja muokkaamiseen, luettelomerkki- ja numerointitukeen. , Sisältötaulukon luominen, asiakirjan marginaalien asettaminen, sivukoon asettaminen, tekstin tasaus, kirjasimien ja kirjasinkokojen hallinta, asiakirjaosien luominen ja paljon muuta.
Docxin käytön aloittaminen
Suositeltu asennustapa on npm. Käytä seuraavaa komentoa sovelluksesi Gemfile-tiedostoon
Asenna Docs npm:n kautta
gem install docx
Kirjoita olemassa oleviin DOCX-tiedostoihin Rubyn kautta
Ruby Docx -kirjaston avulla ohjelmistokehittäjät voivat avata olemassa olevia DOCX-tiedostoja ja päivittää tiedoston sisältöä omissa Ruby-sovelluksissaan. Tiedoston avaamiseksi sinun on annettava olemassa olevan DOCX-tiedoston oikea polku. Kun pääset käsiksi asiakirjoihin, voit helposti lisätä yhden rivin tekstiä tai kappaleita, korvata tekstiä, poistaa ei-toivottua sisältöä, muokata olemassa olevaa tekstiä ja niin edelleen. Kun kaikki on tehty oikein, voit tallentaa asiakirjan määritettyyn polkuun.
Kuinka kirjoittaa olemassa oleviin DOCX-tiedostoihin Ruby API:n kautta
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')
Docx-tiedoston lukeminen Ruby-kirjaston kautta
Avoimen lähdekoodin Ruby Docx -kirjasto on tarjonnut toiminnot MS Word DOCX -tiedostojen käyttämiseen ja lukemiseen käyttämällä pari riviä Ruby-koodia. Kehittäjät voivat helposti luoda dokumenttiobjektin olemassa olevalle Docx-tiedostollemme ja noutaa ja näyttää tiedoston sisällön vain parilla Ruby-koodirivillä. Voit helposti näyttää tietyn kappaleen tai kirjanmerkin. Voit myös näyttää tiedostoja puskurista.
Avaa ja lue olemassa oleva Docx-tiedosto Ruby API:n kautta
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
Taulukoiden lukeminen Wordin DOCX-tiedostoissa
Avoimen lähdekoodin Ruby DOCX -kirjasto antaa ohjelmistokehittäjille mahdollisuuden käyttää ja lukea DOCX-tiedoston sisällä olevia taulukoita Ruby-komentojen avulla. Pääset helposti käsiksi taulukoiden riveihin, sarakkeisiin ja soluihin vain muutamalla koodirivillä. Kirjasto tukee iterointia taulukoiden kautta, rivipohjaista iteraatiota ja sarakepohjaista iteraatiota.
Kuinka lukea taulukoita Word-asiakirjoissa Ruby API:n kautta
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