Vložit textový obrázek XPS C++

Soubory XPS můžete snadno vytvářet, upravovat nebo s nimi manipulovat. Navíc můžete ovládat obsah a jeho umístění podle vašich požadavků. Do souborů XPS můžete vložit obrázek nebo text programově pomocí jazyka C++. Podívejme se na tuto funkci podrobně v následujících tématech:

Práce s textem nebo obsahem obrázků v souborech XPS - Instalace API

Do souborů XPS v aplikacích C++ můžete přidat textový nebo obrázkový obsah. Nemusíte zvažovat drobné podrobnosti o formátu souboru dokumentu, protože několik volání API může provést práci podle vašich požadavků. Aspose.Page for C++ API lze snadno nakonfigurovat buď stažením z New Releases nebo pomocí níže uvedeného instalačního příkazu NuGet:

PM> Install-Package Aspose.Page.Cpp

Přidejte text do souboru XPS pomocí C++

Text lze v souboru XPS použít k označení některých výkresů, obrázků nebo jiného obsahu. Podobně můžete také použít text jako vodoznak pro soubor. Chcete-li přidat nebo vložit text do souborů XPS, postupujte podle následujících kroků:

  1. Vytvořit nový dokument XPS
  2. Vytvořte štětec pro přidání textu
  3. Přidejte do dokumentu glyf
  4. Uložit výstupní dokument XPS

Níže uvedený kód ukazuje, jak přidat text do souboru XPS pomocí C++:

// Vytvořte nový dokument XPS
auto doc = System::MakeObject<XpsDocument>();

//Vytvořte štětec 
System::SharedPtr<XpsSolidColorBrush> textFill = doc->CreateSolidColorBrush(System::Drawing::Color::get_Black());

//Přidejte do dokumentu glyf
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);

// Uložte výsledný dokument XPS
doc->Save(RunExamples::outDir() + u"AddText_out.xps");

Přidejte text do souboru XPS pomocí řetězce Unicode v C++

Naučili jsme se přidat jednoduchý textový řetězec do souboru XPS. Pokračujme a zvažte scénář, kdy je třeba přidat řetězec Unicode do souborů XPS. Chcete-li přidat text do souboru XPS na základě řetězce Unicode, musíte provést následující kroky:

  1. Vytvořte nový dokument XPS
  2. Přidejte text Unicode
  3. Uložit výstupní dokument XPS

Následující kód je založen na těchto krocích, které ukazují, jak přidat text do souboru XPS pomocí řetězce Unicode v jazyce C++:

// Vytvořte nový dokument XPS
auto doc = System::MakeObject<XpsDocument>();

// Přidej text
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);

// Uložte výsledný dokument XPS
doc->Save(RunExamples::outDir() + u"AddText_unicode.xps");

Vložte obrázek do dokumentu XPS pomocí C++

Obrázky mohou obsahovat mnoho vizuálních informací, takže API podporuje vkládání obrázku do souboru XPS ve vašich aplikacích C++. Aspose.Page for C++ API vám umožňuje vkládat obrázky nebo obrázky do souborů XPS pomocí níže uvedených kroků:

  1. Vytvořte nový dokument XPS
  2. Načíst vstupní obrázek
  3. Vytvořte matici a ImageBrush
  4. Uložit výstupní soubor XPS

Níže uvedený příklad kódu ukazuje, jak vložit obrázek do dokumentu XPS s C++:

// Vytvořte nový dokument XPS
System::SharedPtr<XpsDocument> doc = System::MakeObject<XpsDocument>();

// Přidat obrázek
System::SharedPtr<XpsPath> path = doc->AddPath(doc->CreatePathGeometry(u"M 30,20 l 258.24,0 0,56.64 -258.24,0 Z"));

// Vytvoření matice je volitelné, lze ji použít pro správné umístění
path->set_RenderTransform(doc->CreateMatrix(0.7f, 0.f, 0.f, 0.7f, 0.f, 20.f));

//Vytvořte obrazový štětec
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)));

// Uložte výsledný dokument XPS
doc->Save(RunExamples::outDir() + u"AddImage_out.xps");

Vložte dlaždicový obrázek do souboru XPS pomocí C++

Naučili jsme se první krok přidání nebo vložení obrázku do souboru XPS, pojďme pokračovat souvisejícím příkladem vložení dlaždicového obrázku do dokumentu XPS. Níže jsou uvedeny kroky pro přidání dlaždicového obrázku do souboru XPS:

  1. Vytvořte nový dokument XPS
  2. Přidejte ImageBrush vyplněný obdélník
  3. Přidejte dlaždicový obrázek
  4. Uložte výsledný dokument XPS

Následující fragment kódu ukazuje, jak přidat dlaždicový obrázek do souboru XPS pomocí C++:

// Vytvořte nový dokument XPS
System::SharedPtr<XpsDocument> doc = System::MakeObject<XpsDocument>();

// Obrázek dlaždice
// Obdélník vyplněný ImageBrushem v pravém horním rohu
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);

// Uložte výsledný dokument XPS
doc->Save(RunExamples::outDir() + u"AddTiledImage_out.xps");

Závěr

V tomto článku jste se naučili, jak vložit nebo přidat nějaký text nebo obrázek do souborů XPS pomocí jazyka C++. Tato funkce může být užitečná ve scénářích, jako když potřebujete přidat vodoznak do dokumentů XPS nebo přidat nějaké razítko podle vašich požadavků. Stejně tak je u formátu XPS podporováno mnoho dalších zajímavých funkcí. Více se můžete dozvědět na dokumentaci API, nebo s námi můžete také diskutovat na Free Support Forum. Těšíme se, že se s vámi spojíme!

Viz také