بفضل قوة الإنترنت ، أصبح كل شيء رقميًا وأصبحت الأنظمة اللاورقية شائعة. تعد المستندات الرقمية ، مثل PDF ، من بين اللبنات الأساسية للأنظمة غير الورقية التي جعلت الحياة أسهل من خلال توفير ميزات الإنشاء والمعالجة الآلية. تستخدم معظم الشركات أتمتة مستندات PDF لإنشاء التقارير والإيصالات والفواتير ومستندات الأعمال الأخرى بشكل ديناميكي. لذلك ، في هذه المقالة ، سأوضح كيفية دمج ميزات أتمتة PDF في التطبيقات القائمة على C++ وإنشاء ملفات PDF باستخدام C++.
مكتبة C++ PDF
لإنشاء ملفات PDF ، سنستخدم Aspose.PDF for C++ API وهي مكتبة C++ أصلية للعمل مع مستندات PDF برمجيًا. يسمح لك بإنشاء مستندات PDF تفاعلية بدعم من مجموعة متنوعة من عناصر PDF. يتوفر Aspose.PDF لـ C++ على NuGet وكذلك في قسم التنزيلات في Aspose.
قم بإنشاء ملف PDF في C++
بادئ ذي بدء ، سننشئ ملف PDF بسيطًا ونضيف بعض النص إلى الصفحة الأولى في شكل فقرة. فيما يلي الخطوات الواجب اتباعها:
- قم بإنشاء كائن مستند.
- أضف صفحة إلى PageCollection من المستند.
- احصل على فقرة من الصفحة.
- قم بإنشاء كائن TextFragment وأضفه إلى الفقرة.
- احفظ مستند PDF.
يوضح نموذج التعليمات البرمجية التالي كيفية إنشاء مستند PDF في C++.
// إنشاء وثيقة
auto doc = MakeObject<Document>();
auto pages = doc->get_Pages();
pages->Add();
// يبدأ ترقيم الصفحات من 1
auto page = pages->idx_get(1);
auto paragraps = page->get_Paragraphs();
// إنشاء جزء من النص
auto text = MakeObject<TextFragment>(u"PDF API for C++");
auto ts = text->get_TextState();
// تعيين حالة النص
ts->set_FontSize(16);
ts->set_FontStyle(FontStyles::Italic);
// أضف إلى الفقرة
paragraps->Add(text);
// أضف نصًا إلى الفقرة
paragraps->Add(MakeObject<TextFragment>(u"This example shows how to create a PDF with text using Aspose.PDF for C++."));
// احفظ ملف PDF
doc->Save(u"Example1.pdf");
انتاج |
قم بإنشاء ملف PDF باستخدام TextBuilder في C++
في هذا القسم ، سأوضح لك كيفية استخدام فئة TextBuilder لإلحاق مقاطع نصية وفقرات متنوعة على الصفحة. علاوة على ذلك ، في هذا المثال ، ستتعلم كيفية تعيين موضع جزء النص على الصفحة. فيما يلي خطوات إجراء هذه العملية:
- قم بإنشاء كائن مستند.
- أضف صفحة إلى المستند.
- قم بإنشاء كائن TextBuilder.
- قم بإنشاء جزء نص وإضافة نصه.
- عيّن موضع TextFragment.
- إلحاق TextFragment باستخدام TextBuilder.
- احفظ مستند PDF.
يوضح نموذج التعليمات البرمجية التالي كيفية إنشاء ملف PDF باستخدام TextBuilder في C++.
// إنشاء كائن المستند
auto doc = MakeObject<Document>();
auto pages = doc->get_Pages();
pages->Add();
// إنشاء TextBuilder
auto tb = MakeObject<TextBuilder>(pages->idx_get(1));
// إنشاء TextFragment
auto text = MakeObject<TextFragment>(u"Hello world!");
text->set_Position(MakeObject<Position>(100, 800));
// إلحاق TextFragment
tb->AppendText(text);
// قم بإنشاء جزء نصي آخر
text = MakeObject<TextFragment>(u"This example is created by Aspose.Pdf for C++.");
text->set_Position(MakeObject<Position>(150, 750));
tb->AppendText(text);
// قم بإنشاء جزء نصي آخر
text = MakeObject<TextFragment>(u"It demonstrates how to use TextBuilder to append text into PDF file.");
text->set_Position(MakeObject<Position>(200, 700));
tb->AppendText(text);
// قم بإنشاء TextParagraph
auto par = MakeObject<TextParagraph>();
par->set_Position(MakeObject<Position>(250,650));
par->AppendLine(u"New paragraph");
par->AppendLine(u"Line 2");
par->AppendLine(u"Line 3");
tb->AppendParagraph(par);
// احفظ مستند PDF
doc->Save(u"Created PDF.pdf");
انتاج |
قم بإنشاء ملف PDF مع صورة في C++
يمكنك أيضًا إنشاء وإضافة صور إلى مستندات PDF باستخدام Aspose.PDF لـ C++. فيما يلي خطوات إجراء هذه العملية:
- قم بإنشاء كائن مستند.
- أضف صفحة إلى المستند.
- قم بإنشاء صورة لتتم إضافتها.
- أضف الصورة إلى ملف PDF.
- احفظ ملف PDF.
يوضح نموذج التعليمات البرمجية التالي كيفية إنشاء صورة وإضافتها إلى مستند PDF في C++.
// إنشاء كائن المستند
auto doc = MakeObject<Document>();
auto pages = doc->get_Pages();
pages->Add();
auto page = pages->idx_get(1);
// قم بإنشاء صورة
auto stream = MakeObject<IO::MemoryStream>();
SharedPtr<Bitmap> bitmap = MakeObject<Bitmap>(200, 200);
SharedPtr<Graphics> graphics = Graphics::FromImage(bitmap);
graphics->Clear(System::Drawing::Color::get_Yellow());
graphics->FillRectangle(Brushes::get_Blue(), System::Drawing::Rectangle(0, 0, 200, 100));
bitmap->Save(stream, Imaging::ImageFormat::get_Bmp());
// قم بإنشاء مستطيل
double x = 100.0, y = 600.0, width = 200.0, height = 200.0;
auto rect = MakeObject<Aspose::Pdf::Rectangle>(x, y, x + width, y + height);
// أضف الصورة إلى ملف PDF
stream->Seek(0, System::IO::SeekOrigin::Begin);
page->AddImage(stream, rect);
// احفظ مستند PDF
doc->Save(u"Created PDF.pdf");
انتاج |
قم بإنشاء ملف PDF مع المرفقات في C++
يسمح تنسيق PDF أيضًا بإضافة مرفقات إلى المستند. هناك مجموعة متنوعة من تنسيقات الملفات التي يمكن إضافتها كمرفق لملف PDF. فيما يلي خطوات تضمين ملف في PDF باستخدام Aspose.PDF لـ C++:
- قم بتحميل ملف ليتم إرفاقه في SharedPtr .
- قم بإنشاء كائن من فئة المستند.
- قم بتضمين الملف في المستند.
- احفظ ملف PDF.
يوضح نموذج التعليمات البرمجية التالي كيفية إضافة مرفق إلى مستند PDF في C++.
// قم بإنشاء ملف نصي
System::IO::File::WriteAllText(u"Attachment.txt", u"Some info");
SharedPtr<FileSpecification> fileSpecification = MakeObject<FileSpecification>(u"Attachment.txt", u"Sample text file");
// أضف مرفقًا إلى مجموعة مرفقات المستند
auto doc = MakeObject<Document>();
doc->get_EmbeddedFiles()->Add(fileSpecification);
// أضف صفحة إلى ملف PDF
doc->get_Pages()->Add();
// احفظ مستند PDF
doc->Save(u"Created PDF.pdf");
انتاج |
تعرف على المزيد حول Aspose.PDF لـ C++
يمكنك معرفة المزيد حول Aspose.PDF لـ C++ من التوثيق وكود المصدر أمثلة.