แทรกรูปภาพข้อความ XPS C++

คุณสามารถสร้าง แก้ไข หรือจัดการไฟล์ XPS ได้อย่างง่ายดาย นอกจากนี้ คุณสามารถควบคุมเนื้อหาและตำแหน่งตามความต้องการของคุณ คุณสามารถแทรกรูปภาพหรือข้อความในไฟล์ XPS โดยทางโปรแกรมโดยใช้ภาษา C++ ให้เราสำรวจคุณสมบัตินี้โดยละเอียดในหัวข้อต่อไปนี้:

ทำงานกับเนื้อหาข้อความหรือรูปภาพในไฟล์ XPS - การติดตั้ง API

คุณสามารถเพิ่มเนื้อหาข้อความหรือรูปภาพลงในไฟล์ XPS ในแอปพลิเคชัน C++ คุณไม่จำเป็นต้องพิจารณารายละเอียดเล็กน้อยเกี่ยวกับรูปแบบไฟล์ของเอกสาร เนื่องจากการเรียก API เพียงไม่กี่ครั้งก็สามารถทำงานได้ตามความต้องการของคุณ Aspose.Page for C++ สามารถกำหนดค่า API ได้ง่ายๆ โดยการดาวน์โหลดจาก New Releases หรือด้วยคำสั่งติดตั้งด้านล่าง NuGet:

PM> Install-Package Aspose.Page.Cpp

เพิ่มข้อความในไฟล์ XPS โดยใช้ C++

สามารถใช้ข้อความในไฟล์ XPS เพื่อติดป้ายรูปวาด รูปภาพ หรือเนื้อหาอื่นๆ ในทำนองเดียวกัน คุณยังสามารถใช้ข้อความเป็นลายน้ำสำหรับไฟล์ คุณต้องทำตามขั้นตอนด้านล่างเพื่อเพิ่มหรือแทรกข้อความในไฟล์ XPS:

  1. สร้าง เอกสาร XPS ใหม่
  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 String ใน 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++

รูปภาพสามารถมีข้อมูลภาพจำนวนมาก ดังนั้น API จึงสนับสนุนการแทรกรูปภาพในไฟล์ XPS ในแอปพลิเคชัน C++ ของคุณ Aspose.Page for C++ API ให้คุณแทรกรูปภาพหรือรูปภาพในไฟล์ XPS ด้วยขั้นตอนด้านล่าง:

  1. สร้างเอกสาร XPS ใหม่
  2. โหลดภาพอินพุต
  3. สร้าง Matrix และ 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 หรือคุณสามารถพูดคุยกับเราได้ที่ ฟอรัมการสนับสนุนฟรี เราหวังว่าจะได้ติดต่อคุณ!

ดูสิ่งนี้ด้วย