Pulsuz C++ API vasitəsilə Dinamik Word DOCX faylının yaradılması
Açıq mənbəli C++ DOCX kitabxanası C++ kodundan birbaşa Word sənədləri (.docx Formatı) yaratmaq üçün. O, cədvəllər və şəkillər əlavə etməyə, mətnə formatlar və stillər tətbiq etməyə və daha çoxuna imkan verir.
MiniDocx nədir?
Microsoft Word sənədləri ilə proqramlı şəkildə işləmək ənənəvi olaraq C++ inkişafçıları üçün çətin bir tapşırıq olub, tez-tez ağır asılılıqlar və ya özəl proqram təminatı quraşdırmalarını tələb edirdi. MiniDocx bu sahəni dəyişdirir; C++ tətbiqlərindən birbaşa Word sənədləri yaratmaq üçün yüngül, müasir və istifadəçi dostu həll təqdim edir. Bu açıq mənbəli kitabxana Microsoft Office və ya WPS Office quraşdırılmasına ehtiyacı aradan qaldırır və sənəd manipulyasiyası üçün güclü funksionallıq təqdim edir. MiniDocx Word sənədi yaradılmasının əsas aspektlərini əhatə edən vacib xüsusiyyətlərlə təchiz olunmuşdur. O, bölmələr, paraqraflar, zəngin mətn formatlaması, cədvəllər, şəkillər, stillər və siyahıları dəstəkləyir. Bu geniş funksional dəst proqramçılara peşəkar standartlara uyğun mürəkkəb, yaxşı formatlanmış sənədlər yaratmağa imkan verir.
MiniDocx müasir, açıq mənbəli C++ kitabxanasıdır və inkişafçılara Microsoft Word .docx sənədlərini proqramlı şəkildə yaratmağa və idarə etməyə imkan verir — Microsoft Word və ya WPS Office quraşdırılmasına ehtiyac olmadan. Kitabxananın memarlığı müasir C++20 standartları üzərində qurulmuşdur və daha yaxşı performans, tip təhlükəsizliyi və kod aydınlığı üçün son dil xüsusiyyətlərindən istifadə edir. MiniDocx-ın diqqətəlayiq xüsusiyyətlərindən biri, onun çoxplatformalı uyğunluğudur. Kitabxana Windows, Linux və macOS əməliyyat sistemlərində problemsiz işləyir və bu, bir neçə platformada işləməsi lazım olan tətbiqlər hazırlayan inkişafçılar üçün əla seçimdir.
MiniDocx ilə başlamaq
MiniDocx-i quraşdırmanın tövsiyə olunan yolu GitHub vasitəsilədir. Səliqəli quraşdırma üçün aşağıdakı əmri istifadə edin.
MiniDocx-i GitHub vasitəsilə quraşdırın
git clone git@github.com:totravel/minidocx.git
cd minidocx You can also download it directly from Aspose product page.C++ vasitəsilə Word Docx sənədi yaratmaq
Açıq mənbəli MiniDocx kitabxanası proqram inkişafçılarının C++ tətbiqləri daxilində Word Docx sənədləri yaratmasını və idarə etməsini asanlaşdırır. Kitabxana formatlama tətbiqi, mətn, cədvəllər və şəkillər əlavə etmə dəstəyi təqdim edir. MiniDocx-ı anlamağın ən sadə yolu praktik bir nümunə vasitəsilədir. Formatlanmış mətnlə sadə bir Word sənədi yaratmaq kitabxananın intuitiv API dizaynını və sadə iş axınını göstərir.
C++ kitabxanası istifadə edərək Word sənədləri necə yaradılır?
#include "minidocx/minidocx.hpp"
#include
int main()
{
using namespace md;
try {
Document doc;
SectionPointer sect = doc.addSection();
ParagraphPointer para = sect->addParagraph();
para->prop_.align_ = Alignment::Centered;
RichTextPointer rich = para->addRichText("Happy Chinese New Year!");
rich->prop_.fontSize_ = 32;
rich->prop_.color_ = "FF0000";
doc.saveAs("a.docx");
}
catch (const Exception& ex) {
std::cerr << ex.what() << std::endl;
}
return 0;
}
C++ kitabxanası vasitəsilə sənədlərə cədvəllər əlavə edin
Cədvəllər Word sənədlərində strukturlaşdırılmış məlumatların təqdim edilməsi üçün vacibdir və MiniDocx geniş cədvəl yaradılması və formatlama imkanları təklif edir. Cədvəllər sətir və hüceyrələrdən ibarətdir, hər bir hüceyrə mətn, formatlama və hətta iç-içə məzmun saxlaya bilir. Cədvəl yaratmaq bir neçə mərhələdən ibarətdir: cədvəl quruluşunu təyin etmək, sətirlər əlavə etmək, hüceyrələri məzmunla doldurmaq və formatlama tətbiq etmək. Aşağıda C++ proqramlarında formatlanmış cədvəl yaratmağın detallı nümunəsi var.
C++ kitabxanası vasitəsilə Word sənədində formatlanmış cədvəl necə yaradılır?
#include "minidocx/minidocx.hpp"
int main()
{
using namespace md;
try {
Document doc;
SectionPointer sect = doc.addSection();
// Create a table with 3 rows and 2 columns
TablePointer table = sect->addTable(3, 2);
// Access and populate cells
// First row - header
auto cell00 = table->cell(0, 0);
auto para00 = cell00->addParagraph();
auto text00 = para00->addRichText("Name");
text00->prop_.bold_ = true;
auto cell01 = table->cell(0, 1);
auto para01 = cell01->addParagraph();
auto text01 = para01->addRichText("Age");
text01->prop_.bold_ = true;
// Second row
auto cell10 = table->cell(1, 0);
auto para10 = cell10->addParagraph();
para10->addRichText("Alice");
auto cell11 = table->cell(1, 1);
auto para11 = cell11->addParagraph();
para11->addRichText("25");
// Third row
auto cell20 = table->cell(2, 0);
auto para20 = cell20->addParagraph();
para20->addRichText("Bob");
auto cell21 = table->cell(2, 1);
auto para21 = cell21->addParagraph();
para21->addRichText("30");
doc.saveAs("table_document.docx");
}
catch (const Exception& ex) {
std::cerr << ex.what() << std::endl;
}
return 0;
}
Word DOCX faylına şəkillər və rəsmlər daxil edin
Vizual məzmun sənədin oxunaqlılığını və cəlbediciliyini artırır, buna görə də şəkil dəstəyi hər hansı sənəd yaradıcı kitabxana üçün vacib özəllikdir. MiniDocx proqram inkişafçılarının şəkilləri ölçü və yerləşdirmə üzərində nəzarət edərək sənədlərə əlavə etməsinə imkan verir. Şəkil əlavə etmək üçün şəkil faylının yolunu göstərmək və istəyə bağlı olaraq ölçüləri təyin etmək lazımdır. Aşağıda C++ kitabxanası vasitəsilə Word sənədinə şəkil daxil etmənin nümunəsi göstərilib.
C++ kitabxanası vasitəsilə Word sənədinə şəkil necə əlavə edilir?
#include "minidocx/minidocx.hpp"
int main()
{
using namespace md;
try {
Document doc;
SectionPointer sect = doc.addSection();
// Add a paragraph before the image
ParagraphPointer para1 = sect->addParagraph();
para1->addRichText("Below is an important diagram:");
// Add a paragraph containing the image
ParagraphPointer para2 = sect->addParagraph();
para2->prop_.align_ = Alignment::Centered;
// Insert the picture
PicturePointer pic = para2->addPicture("path/to/image.png");
pic->prop_.width_ = 400;
pic->prop_.height_ = 300;
// Add a paragraph after the image
ParagraphPointer para3 = sect->addParagraph();
para3->addRichText("Figure 1: Important visualization");
doc.saveAs("document_with_image.docx");
}
catch (const Exception& ex) {
std::cerr << ex.what() << std::endl;
}
return 0;
}
Sənəd bölmələri və səhifə düzümü
Bölmələr Word sənədlərində səhifə düzümü xüsusiyyətlərini idarə etmək üçün çərçivə təmin edir. Hər bölmə səhifə ölçüsü, yönümlülük, kənar boşluqlar, başlıqlar və altbilgilər kimi müxtəlif səhifə parametrlərinə sahib ola bilər. Bu bölmə‑əsaslı memarlıq dəyişən səhifə konfiqurasiyaları ilə mürəkkəb sənəd düzümü yaratmağa imkan verir. Çoxsaylı bölmələrin tipik istifadə nümunəsi, həm portret, həm də landşaft səhifələri olan sənədlərin yaradılmasıdır; məsələn, geniş cədvəllər və ya landşaft yönümlü qrafiklər tələb edən hesabatlar. Aşağıda C++ tətbiqləri daxilində Word sənədlərinin bir neçə bölməsi ilə işləmək nümunəsi var.
C++ kitabxanası vasitəsilə Word sənədlərinin bir neçə bölməsi ilə necə işləmək olar?
#include "minidocx/minidocx.hpp"
int main()
{
using namespace md;
try {
Document doc;
// First section with portrait orientation
SectionPointer sect1 = doc.addSection();
sect1->prop_.orientation_ = Orientation::Portrait;
sect1->prop_.pageWidth_ = 8.5 * 1440; // Letter size in twips
sect1->prop_.pageHeight_ = 11 * 1440;
ParagraphPointer para1 = sect1->addParagraph();
para1->addRichText("This is content in portrait orientation.");
// Second section with landscape orientation
SectionPointer sect2 = doc.addSection();
sect2->prop_.orientation_ = Orientation::Landscape;
sect2->prop_.pageWidth_ = 11 * 1440;
sect2->prop_.pageHeight_ = 8.5 * 1440;
ParagraphPointer para2 = sect2->addParagraph();
para2->addRichText("This content appears in landscape orientation.");
doc.saveAs("multi_section_document.docx");
}
catch (const Exception& ex) {
std::cerr << ex.what() << std::endl;
}
return 0;
}