Thư viện Ruby mã nguồn mở để tạo tài liệu Word & thêm bảng
Gem Ruby miễn phí (Thư viện) cho phép tạo các tệp Microsoft Word .docx bằng định dạng Office Open XML (OOXML) và Thêm các đoạn văn bản, bảng và hình ảnh vào các tệp DOCX.
OpenXml::Docx là gì?
Các tài liệu Microsoft Word đã trở thành tiêu chuẩn cho giao tiếp kinh doanh, báo cáo và tài liệu trong mọi ngành. Trong khi việc tạo tài liệu thủ công phù hợp với các nhiệm vụ nhỏ, tự động hoá việc tạo tài liệu trở nên thiết yếu khi làm việc với các mẫu, xử lý hàng loạt hoặc nội dung động. Đó là lúc OpenXml::Docx xuất hiện — một thư viện Ruby giúp các nhà phát triển phần mềm tạo ra các tài liệu Word chuyên nghiệp một cách lập trình. Thư viện chạy ở bất kỳ môi trường nào có Ruby, không cần phụ thuộc bên ngoài. Nó có nhiều tính năng quan trọng như tạo tài liệu Word mới, áp dụng định dạng và kiểu dáng văn bản, bảng và trình bày dữ liệu, tích hợp hình ảnh và phương tiện, v.v.
OpenXml::Docx là một gem Ruby cung cấp giao diện sạch sẽ và trực quan để tạo tài liệu Word ở định dạng Open XML (phần mở rộng .docx mà chúng ta đều biết). Khác với các giải pháp nặng nề yêu cầu cài đặt Microsoft Office, thư viện này hoạt động độc lập, tạo tài liệu từ đầu bằng mã Ruby thuần. Nó tuân theo tiêu chuẩn Office Open XML, đảm bảo tương thích với Microsoft Word, Google Docs, LibreOffice và các trình xử lý văn bản hiện đại khác. Thư viện tập trung vào tính đơn giản và dễ đọc, giúp việc tạo tài liệu trở nên dễ tiếp cận ngay cả với các nhà phát triển không quen với cấu trúc XML phức tạp bên trong tài liệu Word. Thay vì chối chiếm với các namespace và schema XML, bạn có thể viết mã Ruby đơn giản, tự nhiên và dễ bảo trì.
Bắt đầu với OpenXml::Docx
Cách khuyến nghị để cài đặt OpenXml::Docx là sử dụng RubyGems. Vui lòng dùng lệnh sau để cài đặt thuận lợi.
Cài đặt OpenXml::Docx qua RubyGems
gem install openxml-docxYou can also download it directly from GitHub.Tạo tài liệu DOCX đầu tiên của bạn
OpenXml::Docx mã nguồn mở đã bao gồm hỗ trợ đầy đủ cho việc tạo và quản lý tài liệu Word mới trong các ứng dụng Java. Thành phần cơ bản nhất của một tài liệu Word là đoạn văn. Chỉ với vài dòng mã, các nhà phát triển phần mềm có thể thêm văn bản và hình ảnh vào tài liệu Word. Dưới đây là một ví dụ đơn giản minh họa cách các nhà phát triển có thể truy cập phần thân tài liệu, thêm một đoạn văn với một chuỗi văn bản, áp dụng định dạng và lưu tệp.
Làm thế nào để tạo tài liệu Word và thêm đoạn văn bản qua API Java?
require 'openxml/docx'
# Create a new document package
package = OpenXml::Docx::Package.new
# Access the main document
doc = package.document
# Add a paragraph with text
paragraph = doc.add_paragraph
run = paragraph.add_run
run.text = "Welcome to OpenXml::Docx"
run.bold = true
run.font_size = 24
# Save the document
package.save('welcome.docx')
Định dạng văn bản nâng cao qua Java
Thư viện OpenXml::Docx mã nguồn mở đã bao gồm hỗ trợ đầy đủ cho cả định dạng văn bản cơ bản và nâng cao trong tài liệu Word. Ngoài in đậm và nghiêng cơ bản, thư viện còn hỗ trợ định dạng văn bản tinh vi. Ví dụ mã Java dưới đây minh họa các gạch chân, gạch ngang, làm nổi bật và sự kết hợp của nhiều hiệu ứng. Thuộc tính màu chấp nhận giá trị hex, cho phép khớp màu chính xác với hướng dẫn thương hiệu.
Làm thế nào để áp dụng định dạng văn bản cho tài liệu Word qua API Java?
require 'openxml/docx'
package = OpenXml::Docx::Package.new
doc = package.document
# Demonstrate various text effects
para1 = doc.add_paragraph
run1 = para1.add_run
run1.text = "This text is underlined"
run1.underline = :single
para2 = doc.add_paragraph
run2 = para2.add_run
run2.text = "This text has a strikethrough"
run2.strike = true
para3 = doc.add_paragraph
run3 = para3.add_run
run3.text = "This text is highlighted"
run3.highlight = "yellow"
para4 = doc.add_paragraph
run4 = para4.add_run
run4.text = "This combines multiple effects"
run4.bold = true
run4.italic = true
run4.color = "FF0000"
run4.font_size = 16
package.save('formatted_text.docx')
Tạo bảng cho dữ liệu trong tệp Word qua Java
Bảng là yếu tố thiết yếu để trình bày thông tin có cấu trúc. Thư viện OpenXml::Docx giúp các nhà phát triển phần mềm dễ dàng tạo bảng trong tài liệu Word để quản lý dữ liệu một cách hợp lý trong các ứng dụng Java. Dưới đây là một ví dụ thực tế tạo một bảng bán hàng chuyên nghiệp với một hàng tiêu đề in đậm và ba hàng dữ liệu. Mã minh họa cách truy cập các ô cụ thể và điền nội dung vào chúng. Bạn có thể lặp qua cấu trúc dữ liệu và điền bảng một cách động, rất thích hợp cho việc tạo báo cáo.
Làm thế nào để tạo bảng có hàng và cột trong các ứng dụng Java?
require 'openxml/docx'
package = OpenXml::Docx::Package.new
doc = package.document
# Add a heading
heading = doc.add_paragraph
heading_run = heading.add_run
heading_run.text = "Sales Summary"
heading_run.bold = true
heading_run.font_size = 18
# Create a table with 3 columns and 4 rows
table = doc.add_table(rows: 4, cols: 3)
# Header row
table.rows[0].cells[0].add_paragraph.add_run.text = "Product"
table.rows[0].cells[1].add_paragraph.add_run.text = "Units Sold"
table.rows[0].cells[2].add_paragraph.add_run.text = "Revenue"
# Make header row bold
table.rows[0].cells.each do |cell|
cell.paragraphs[0].runs[0].bold = true
end
# Data rows
products = [
["Widget A", "1,250", "$25,000"],
["Widget B", "890", "$17,800"],
["Widget C", "2,100", "$42,000"]
]
products.each_with_index do |product, index|
row = table.rows[index + 1]
product.each_with_index do |value, col_index|
row.cells[col_index].add_paragraph.add_run.text = value
end
end
package.save('sales_summary.docx')
Tự động tạo báo cáo & hoá đơn
Các công ty có thể sử dụng thư viện OpenXml::Docx để tự động tạo báo cáo hàng tháng, báo cáo tài chính hoặc tóm tắt phân tích. Bằng cách lấy dữ liệu từ cơ sở dữ liệu và định dạng thành tài liệu chuyên nghiệp, tổ chức tiết kiệm vô số giờ công việc thủ công. Hơn nữa, các nền tảng thương mại điện tử và doanh nghiệp dịch vụ có thể tạo hoá đơn và hợp đồng một cách động. Thông tin khách hàng, các mục hàng và điều khoản có thể được điền từ cơ sở dữ liệu, đảm bảo độ chính xác và nhất quán trong mọi tài liệu.