أدخل صورة نصية XPS C++

يمكنك إنشاء ملفات XPS أو تحريرها أو معالجتها بسهولة. علاوة على ذلك ، يمكنك التحكم في المحتويات ووضعها وفقًا لمتطلباتك. يمكنك إدراج صورة أو نص في ملفات XPS برمجيًا باستخدام لغة C++. دعونا نستكشف هذه الميزة بالتفصيل تحت الموضوعات التالية:

العمل مع محتويات النص أو الصورة في ملفات XPS - تثبيت API

يمكنك إضافة محتويات نصية أو صور إلى ملفات XPS في تطبيقات C++. لا تحتاج إلى التفكير في تفاصيل ثانوية حول تنسيق ملف المستند حيث أن القليل من استدعاءات واجهة برمجة التطبيقات يمكنها القيام بالمهمة وفقًا لمتطلباتك. Aspose.Page for C++ يمكن تكوين API بسهولة إما عن طريق تنزيلها من الإصدارات الجديدة أو باستخدام أمر التثبيت NuGet أدناه:

PM> Install-Package Aspose.Page.Cpp

أضف نصًا في ملف XPS باستخدام C++

يمكن استخدام النص في ملف XPS لتسمية بعض الرسومات أو الصور أو المحتويات الأخرى. وبالمثل ، يمكنك أيضًا استخدام النص كعلامة مائية للملف. تحتاج إلى اتباع الخطوات أدناه لإضافة أو إدراج نص في ملفات XPS:

  1. إنشاء [مستند XPS] جديد 9
  2. قم بإنشاء فرشاة لإضافة نص
  3. أضف حرفًا رسوميًا إلى المستند
  4. احفظ مستند XPS الناتج

يوضح الكود أدناه كيفية إضافة نص في ملف XPS باستخدام C++:

// قم بإنشاء مستند XPS جديد
auto doc = System::MakeObject<XpsDocument>();

//اصنع فرشاة 
System::SharedPtr<XpsSolidColorBrush> textFill = doc->CreateSolidColorBrush(System::Drawing::Color::get_Black());

//أضف حرفًا رسوميًا إلى المستند
System::SharedPtr<XpsGlyphs> glyphs = doc->AddGlyphs(u"Arial", 12.0f, System::Drawing::FontStyle::Regular, 300.f, 450.f, u"Hello World!");
glyphs->set_Fill(textFill);

// احفظ مستند XPS الناتج
doc->Save(RunExamples::outDir() + u"AddText_out.xps");

أضف نصًا في ملف XPS باستخدام سلسلة Unicode في C++

لقد تعلمنا إضافة سلسلة نصية بسيطة إلى ملف XPS. دعنا نتابع وننظر في سيناريو حيث تحتاج إلى إضافة سلسلة Unicode في ملفات XPS. تحتاج إلى اتباع الخطوات التالية لإضافة نص في ملف XPS ، بناءً على سلسلة Unicode:

  1. قم بإنشاء مستند XPS جديد
  2. أضف نص Unicode
  3. احفظ مستند XPS الناتج

يعتمد الكود التالي على هذه الخطوات ، والتي توضح كيفية إضافة نص في ملف XPS باستخدام سلسلة Unicode في لغة C++:

// قم بإنشاء مستند XPS جديد
auto doc = System::MakeObject<XpsDocument>();

// أضف نصًا
System::SharedPtr<XpsSolidColorBrush> textFill = doc->CreateSolidColorBrush(System::Drawing::Color::get_Black());
System::SharedPtr<XpsGlyphs> glyphs = doc->AddGlyphs(u"Arial", 20.0f, System::Drawing::FontStyle::Regular, 400.f, 200.f, u"++C. rof SPX.esopsA");
glyphs->set_BidiLevel(1);
glyphs->set_Fill(textFill);

// احفظ مستند XPS الناتج
doc->Save(RunExamples::outDir() + u"AddText_unicode.xps");

أدخل الصورة في مستند XPS باستخدام C++

يمكن أن تحتوي الصور على الكثير من المعلومات المرئية ، لذا تدعم واجهة برمجة التطبيقات إدراج صورة في ملف XPS في تطبيقات C++. يتيح لك Aspose.Page for C++ API إدراج الصور أو الصور في ملفات XPS بالخطوات التالية:

  1. قم بإنشاء مستند XPS جديد
  2. تحميل صورة الإدخال
  3. إنشاء مصفوفة و ImageBrush
  4. حفظ ملف الناتج XPS

يوضح مثال الرمز أدناه كيفية إدراج صورة في مستند XPS باستخدام C++:

// قم بإنشاء مستند XPS جديد
System::SharedPtr<XpsDocument> doc = System::MakeObject<XpsDocument>();

// إضافة صورة
System::SharedPtr<XpsPath> path = doc->AddPath(doc->CreatePathGeometry(u"M 30,20 l 258.24,0 0,56.64 -258.24,0 Z"));

// يعد إنشاء مصفوفة أمرًا اختياريًا ، ويمكن استخدامه لتحديد المواقع المناسبة
path->set_RenderTransform(doc->CreateMatrix(0.7f, 0.f, 0.f, 0.7f, 0.f, 20.f));

//إنشاء فرشاة الصورة
path->set_Fill(doc->CreateImageBrush(RunExamples::dataDir() + u"QL_logo_color.tif", System::Drawing::RectangleF(0.f, 0.f, 258.24f, 56.64f), System::Drawing::RectangleF(50.f, 20.f, 193.68f, 42.48f)));

// احفظ مستند XPS الناتج
doc->Save(RunExamples::outDir() + u"AddImage_out.xps");

أدخل صورة متجانبة في ملف XPS باستخدام C++

لقد تعلمنا الخطوة الأولى لإضافة صورة أو إدراجها في ملف XPS ، فلننتقل إلى المثال ذي الصلة لإدراج صورة متجانبة في مستند XPS. فيما يلي خطوات إضافة صورة متجانبة في ملف XPS:

  1. قم بإنشاء مستند XPS جديد
  2. أضف ImageBrush مستطيل معبأ
  3. أضف صورة متجانبة
  4. احفظ مستند XPS الناتج

يوضح مقتطف الشفرة التالي كيفية إضافة صورة متجانبة في ملف XPS باستخدام C++:

// قم بإنشاء مستند XPS جديد
System::SharedPtr<XpsDocument> doc = System::MakeObject<XpsDocument>();

// صورة المربعات
// ImageBrush تملأ مستطيل في الجزء العلوي الأيمن من الخار
System::SharedPtr<XpsPath> path = doc->AddPath(doc->CreatePathGeometry(u"M 10,160 L 228,160 228,305 10,305"));
path->set_Fill(doc->CreateImageBrush(RunExamples::dataDir() + u"R08LN_NN.jpg", System::Drawing::RectangleF(0.f, 0.f, 128.f, 96.f), System::Drawing::RectangleF(0.f, 0.f, 64.f, 48.f)));
(System::DynamicCast<Aspose::Page::Xps::XpsModel::XpsImageBrush>(path->get_Fill()))->set_TileMode(Aspose::Page::Xps::XpsModel::XpsTileMode::Tile);
path->get_Fill()->set_Opacity(0.5f);

// احفظ مستند XPS الناتج
doc->Save(RunExamples::outDir() + u"AddTiledImage_out.xps");

استنتاج

في هذه المقالة ، تعلمت كيفية إدراج أو إضافة بعض النصوص أو الصور في ملفات XPS باستخدام لغة C++. يمكن أن تكون هذه الميزة مفيدة في سيناريوهات مثل عندما تحتاج إلى إضافة علامة مائية في مستندات XPS ، أو إضافة بعض الطوابع وفقًا لمتطلباتك. وبالمثل ، يتم دعم الكثير من الميزات المثيرة الأخرى لتنسيق ملف XPS. يمكنك معرفة المزيد من خلال زيارة وثائق API ، أو يمكنك أيضًا المناقشة معنا في منتدى الدعم المجاني. نحن نتطلع إلى التواصل معك!

أنظر أيضا