DuckX
API منبع باز C++ برای اسناد Word OOXML
فایلهای Microsoft Office Word DOCX را در برنامههای C++ ایجاد کنید، بخوانید، بهروزرسانی کنید و صادر کنید.
DuckX یک کتابخانه C++ رایگان منبع باز است که توسعه دهندگان نرم افزار را قادر می سازد تا با Microsoft Word (DOCX) در داخل برنامه های خود کار کنند. API می تواند اسناد MS Word را بخواند، بنویسد و ویرایش کند که پسوند فایل docx. دارند.
API بسیار پایدار است و از بسیاری از ویژگی های مهم پردازش ورد مانند ایجاد و ذخیره اسناد DOCX، اضافه کردن پاراگراف، عنوان، درج متن، افزودن جداول، افزودن تصاویر، سبک های پاراگراف، اعمال قالب بندی متن و موارد دیگر پشتیبانی می کند.
شروع کار با DuckX
راه ترجیحی ایجاد یک پوشه ساخت است.
ایجاد پوشه Build برای DuckX
git clone https://github.com/amiremohamadi/DuckX.git
cd DuckX
mkdir build
cd build
cmake ..
cmake --build;
C++ API برای باز کردن و خواندن اسناد Word DOCX
کتابخانه DuckX به نرمافزارهای حرفهای این امکان را میدهد تا بدون استفاده از مایکروسافت ورد، اسناد DOCX word موجود را در برنامههای خود باز کنند. می توانید پاراگراف ها را مرور کنید، اجرا کنید و آنها را چاپ کنید. همچنین قابلیتی برای اصلاح اسناد word می دهد، همچنین می توانید تصاویر، متن، فونت، قالب بندی متن و موارد دیگر را اضافه کنید.
نحوه باز کردن و خواندن اسناد Word از طریق C++ API
#include
#include
int main() {
duckx::Document doc("file.docx");
doc.open();
for (auto p : doc.paragraphs())
for (auto r : p.runs())
std::cout << r.get_text() << std::endl;
}
درج و جدول در فایل Word DOCX
کتابخانه DuckX به توسعه دهندگان این امکان را می دهد که جداول را در یک سند Word DOCX در برنامه های C++ قرار دهند. جداول MS Word نقش بسیار مهمی در چیدمان داده های با فرمت مناسب دارند. جداول روش خوبی برای ارائه داده ها در ردیف ها و ستون ها هستند. درج و دستکاری آنها در فایل های Word بسیار ساده است.
پشتیبانی از خواندن جدول در اسناد Word از طریق C++ API
#include "../src/duckx.hpp"
using namespace std;
// Print a paragraph and all children runs
void print_paragraph(duckx::Paragraph& p) {
for (auto r = p.runs(); r.has_next(); r.next()) {
cout << r.get_text() << endl;
}
}
int main() {
duckx::Document doc("my_test.docx");
doc.open();
cout << "Paragraph content:" << endl;
for (auto p = doc.paragraphs(); p.has_next(); p.next()) {
for (auto r = p.runs(); r.has_next(); r.next()) {
cout << r.get_text() << endl;
}
print_paragraph(p);
}
cout << "Table content:" << endl;
for (auto t = doc.tables(); t.has_next(); t.next()) {
for (auto tr = t.rows(); tr.has_next(); tr.next()) {
for (auto tc = tr.cells(); tc.has_next(); tc.next()) {
for (auto p = tc.paragraphs(); p.has_next(); p.next()) {
print_paragraph(p);
}
}
}
}
return 0;
}
افزودن تصاویر به فایل های Word DOCX
کتابخانه DuckX عملکردی را برای درج تصاویر در سند Word DOCX فراهم می کند. برای افزودن یک تصویر باید نام و مکان تصویر را وارد کنید. توسعه دهندگان همچنین می توانند هم عرض و هم ارتفاع تصویر را مشخص کنند.