C++ ile PS EPS XPS Belgeleri Oluşturun

Aspose.Page for C++, C++ kullanılarak PostScript (PS/EPS) ve XPS belgelerinin işlenmesi için geliştirilmiş Aspose.Page Ürün Ailesi’nin değerli bir eklentisidir. Aspose.Page for C++, yeni XPS dosyaları oluşturmanın yanı sıra mevcut PostScript ve XPS belgelerini program aracılığıyla değiştirmek ve dönüştürmek için yerel bir C++ kitaplığıdır. API ayrıca XPS belgelerindeki tuvaller ve glifler gibi sayfalar ve öğelerle çalışmanıza olanak tanır. Ayrıca, belgelerin PDF’ye ve raster görüntülere dönüştürülmesini destekler. Bu makale, Aspose.Page for C++ kullanılarak XPS belgeleriyle ilgili aşağıdaki işlemlerin nasıl gerçekleştirileceğini göstermektedir.

  • C++‘da yeni bir XPS belgesi oluşturun
  • Mevcut bir XPS belgesini C++ ile düzenleyin
  • C++ ile bir XPS belgesine sayfa veya belge ekleme

C++ için XPS API’sinin kurulumu

Aspose.Page for C++ NuGet üzerinde barındırılır ve ayrıca indirilebilir ikili dosyalar olarak mevcuttur. İndirilebilir paket ayrıca temel örneklerin kaynak kodunu içeren bir C++ konsol uygulaması içerir.

C++ ile XPS Belgesi Oluşturma

Aşağıdakiler, Aspose.Page for C++ kullanarak metin ve resim içeren bir XPS belgesi oluşturmak için basit adımlardır.

  • XpsDocument sınıfından bir nesne oluşturun.
  • Sırasıyla XpsGlyphs ve XpsPath nesnelerini kullanarak metin ve resim ekleyin.
  • Kaydet yöntemini kullanarak belgeyi kaydedin.

Aşağıdaki kod örneği, C++‘da bir XPS belgesinin nasıl oluşturulacağını gösterir.

// Yeni bir XpsDocument nesnesi oluşturun
auto doc = System::MakeObject<XpsDocument>();

// Resim eklemek
System::SharedPtr<XpsPath> path = doc->AddPath(doc->CreatePathGeometry(u"M 30,20 l 450.24,0 0,150.64 -350.24,0 Z"));
// Uygun konumlandırma için kullanılabilecek bir matris oluşturun.
path->set_RenderTransform(doc->CreateMatrix(0.7f, 0.f, 0.f, 0.7f, 0.f, 20.f));
// Görüntü Fırçası Oluştur
path->set_Fill(doc->CreateImageBrush(u"QL_logo_color.tif", System::Drawing::RectangleF(0.f, 0.f, 450.24f, 150.64f), System::Drawing::RectangleF(50.f, 20.f, 450.68f, 150.48f)));

// Altbilgi olarak metin
System::SharedPtr<XpsSolidColorBrush> textFill = doc->CreateSolidColorBrush(System::Drawing::Color::get_Black());
System::SharedPtr<XpsGlyphs> glyphs = doc->AddGlyphs(u"Arial", 18.0f, System::Drawing::FontStyle::Regular, 40.f, 1015.f, u"Copyright &#xa9; 2006 QualityLogic, Inc.");
glyphs->set_Fill(textFill);
glyphs = doc->AddGlyphs(u"Arial", 15.0f, System::Drawing::FontStyle::Regular, 475.f, 1003.f, u"For information on QualityLogic XPS test products,");
glyphs->set_Fill(textFill);

// XPS olarak kaydet
doc->Save(u"Create-XPS.xps");

Çıktı

PS EPS XPS Belgesi C++'ı Düzenle

Bir XPS Belgesini C++ ile Düzenleyin

Mevcut bir XPS belgesini düzenleme adımları aşağıda verilmiştir:

  • XpsDocument sınıfından bir nesne oluşturun ve onu XPS belgesinin yolu ile başlatın.
  • XpsDocument nesnesini kullanarak belgenin öğelerine erişin.
  • Güncellenen belgeyi Kaydet yöntemini kullanarak kaydedin.

Aşağıdaki kod örneği, varolan bir XPS belgesinin C++ ile nasıl düzenleneceğini gösterir.

// XPS Belgesini Yükle
auto doc = System::MakeObject<XpsDocument>(u"Created-XPS.xps");
// Sayfa listesinin sonuna boş sayfa ekle
doc->AddPage();
// Sayfa listesinin başına boş bir sayfa ekle
doc->InsertPage(1, true); 
// XPS dosyasını kaydet
doc->Save(u"Updated-XPS.xps");

C++ ile XPS’e Sayfa ve Belge Ekleme

Aspose.Page for C++, bir XPS belgesine birden çok belgenin yanı sıra sayfalar eklemenize de olanak tanır. Aşağıda, yeni bir XPS belgesi oluşturma ve ek bir sayfa ve belge ekleme adımları yer almaktadır.

  • XpsDocument sınıfından bir nesne oluşturun.
  • Sayfa ve belge eklemek için sırasıyla AddPage ve AddDocument yöntemlerini kullanın.
  • İşlenmek üzere etkin belgeyi seçmek için SelectActiveDocument yöntemini kullanın.
  • Belgeye metin veya resim ekleyin.
  • Belgeyi kaydedin.

Aşağıdaki kod örneği, C++ kullanılarak XPS’ye ek sayfaların ve belgelerin nasıl ekleneceğini gösterir.

// Yeni belge (1 varsayılan boyutlu sayfaya sahip 1 sabit belge)
auto doc = System::MakeObject<XpsDocument>();
// 1. belgeye 2. sayfayı ekleyin ve aktif olarak ayarlayın
doc->AddPage();
// 1 sayfalı 2. belge ekle (dosyada 3. sayfa)
doc->AddDocument(false);
// 1. belgenin 2. sayfası hala aktif
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, 200.f, 500.f, u"Text on Page 2 (Document 1),");
glyphs->set_Fill(textFill);
// 2. belgeyi etkinleştir
doc->SelectActiveDocument(2);
glyphs = doc->AddGlyphs(u"Arial", 12.0f, System::Drawing::FontStyle::Regular, 200.f, 500.f, u"Text on Document 2 (Page #3 in file),");
glyphs->set_Fill(textFill); 
// XPS dosyasını kaydet
doc->Save(u"Create-XPS.xps");

Aspose.Page for C++ hakkında daha fazlasını öğrenin

GitHub’da bulunan belgeleri ve kaynak kodu örneklerini kullanarak Aspose.Page for C++ hakkında daha fazla bilgi edinebilirsiniz.