کتابخانه منبعباز روبی برای ایجاد اسناد Word و افزودن جدولها
جِم (کتابخانه) رایگان روبی که امکان ایجاد فایلهای Microsoft Word .docx با استفاده از فرمت Office Open XML (OOXML) و افزودن پاراگرافهای متنی، جدولها و تصاویر درون فایلهای DOCX را فراهم میکند.
OpenXml::Docx چیست؟
اسناد Microsoft Word به استانداردی برای ارتباطات کسبوکار، گزارشها و مستندات در تمام صنایع تبدیل شدهاند. گرچه ایجاد دستی سند برای وظایف کوچک کافی است، خودکارسازی تولید اسناد زمانی ضروری میشود که با قالبها، عملیات انبوه یا محتوای پویا سروکار دارید. اینجاست که OpenXml::Docx وارد میشود—یک کتابخانه روبی که به توسعهدهندگان نرمافزار امکان ایجاد اسناد Word حرفهای بهصورت برنامهنویسیشده را میدهد. این کتابخانه در هر جایی که روبی اجرا شود کار میکند و بدون وابستگیهای خارجی است. چندین ویژگی مهم در این کتابخانه وجود دارد، از جمله ایجاد اسناد Word جدید، اعمال قالببندی و استایل متنی، جدولها و ارائه دادهها، ادغام تصاویر و رسانهها و غیره.
OpenXml::Docx یک جِم روبی است که رابط کاربری تمیز و شهودی برای تولید اسناد Word در فرمت Open XML (پسوند .docx که همه ما میدانیم) فراهم میکند. برخلاف راهحلهای سنگینی که نیاز به نصب Microsoft Office دارند، این کتابخانه بهصورت مستقل عمل میکند و اسناد را از ابتدا با استفاده از کد خالص روبی ایجاد مینماید. این کتابخانه از استاندارد Office Open XML پیروی میکند و سازگاری با Microsoft Word، Google Docs، LibreOffice و سایر پردازشگرهای کلمه مدرن را تضمین میکند. تمرکز کتابخانه بر سادگی و خوانایی است و تولید اسناد را حتی برای توسعهدهندگانی که با ساختار XML پیچیده اسناد Word آشنا نیستند، قابل دسترس میسازد. به جای درگیر شدن با فضای نامها و طرحهای XML، میتوانید کد روبی ساده و طبیعی بنویسید که قابل نگهداری باشد.
شروع کار با OpenXml::Docx
روش پیشنهادی برای نصب OpenXml::Docx استفاده از RubyGems است. لطفاً برای نصب روان، فرمان زیر را اجرا کنید.
نصب OpenXml::Docx از طریق RubyGems
gem install openxml-docxYou can also download it directly from GitHub.ایجاد اولین سند DOCX شما
کتابخانه منبعباز OpenXml::Docx پشتیبانی کامل برای ایجاد و مدیریت اسناد Word جدید درون برنامههای Java را فراهم کرده است. بلوک بنیادی یک سند Word، پاراگراف است. با تنها چند خط کد، توسعهدهندگان نرمافزار میتوانند متن و تصاویر را داخل اسناد Word اضافه کنند. در اینجا یک مثال ساده نشان میدهد چگونه توسعهدهندگان میتوانند به بدنه سند دسترسی پیدا کنند، پاراگرافی با یک بخش متنی اضافه کنند، قالببندی اعمال کنند و فایل را ذخیره نمایند.
چگونه یک سند Word ایجاد کنیم و پاراگراف متنی اضافه کنیم با استفاده از 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')
قالببندی پیشرفته متن با Java
کتابخانه منبعباز OpenXml::Docx پشتیبانی کامل برای قالببندی متن پایه و پیشرفته درون اسناد Word را فراهم کرده است. فراتر از بولد و ایتالیک ساده، این کتابخانه از قالببندی متن پیشرفته پشتیبانی میکند. مثال کد Java زیر زیرخطها، خطخوردهها، برجستهسازی و ترکیبهای چندین اثر را نشان میدهد. ویژگی رنگ مقادیر هگز را میپذیرد و امکان تطبیق دقیق رنگ با راهنماییهای برند را میدهد.
چگونه قالببندی متن را به اسناد Word اعمال کنیم با 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')
ایجاد جدولها برای دادهها در فایلهای Word با Java
جدولها برای ارائه اطلاعات ساختاریافته ضروری هستند. کتابخانه OpenXml::Docx ایجاد جدول درون اسناد Word را برای توسعهدهندگان نرمافزار آسان میکند تا دادهها را بهصورت صحیح در برنامههای Java مدیریت کنند. در اینجا یک مثال کاربردی وجود دارد که یک جدول فروش حرفهای با یک ردیف سرعنوان بولد و سه ردیف داده ایجاد میکند. کد نشان میدهد چگونه به سلولهای خاص دسترسی پیدا کنید و آنها را با محتوا پر کنید. میتوانید در میان ساختارهای داده پیمایش کنید و جدولها را بهطور پویا پر کنید، که این برای تولید گزارش ایدهآل است.
چگونه یک جدول با ردیفها و ستونها در برنامههای 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')
تولید خودکار گزارشها و فاکتورها
شرکتها میتوانند از کتابخانه OpenXml::Docx برای تولید خودکار گزارشهای ماهانه، صورتهای مالی یا خلاصههای تحلیلی استفاده کنند. با استخراج دادهها از پایگاههای داده و قالببندی آنها به اسناد حرفهای، سازمانها ساعتها کار دستی را صرفهجویی میکنند. علاوه بر این، پلتفرمهای تجارت الکترونیک و کسبوکارهای خدماتی میتوانند فاکتورها و قراردادها را بهصورت پویا تولید کنند. اطلاعات مشتری، موارد خطی و شرایط میتوانند از پایگاههای داده پر شوند و دقت و ثبات در تمام اسناد ضمانت شود.