Tạo tài liệu PS EPS XPS trong C++

Aspose.Page for C++ là phần bổ sung có giá trị cho Dòng sản phẩm Aspose.Page được phát triển để thao tác với các tài liệu PostScript (PS/EPS) và XPS bằng C++. Aspose.Page for C++ là một thư viện C++ gốc để tạo các tệp XPS mới cũng như sửa đổi và chuyển đổi các tài liệu PostScript và XPS hiện có theo chương trình. API cũng cho phép bạn làm việc với các trang và thành phần, chẳng hạn như canvas và glyphs trong tài liệu XPS. Hơn nữa, nó hỗ trợ chuyển đổi tài liệu sang PDF và hình ảnh raster. Bài viết này giải thích cách thực hiện các thao tác sau liên quan đến tài liệu XPS bằng Aspose.Page for C++.

  • Tạo một tài liệu XPS mới trong C++
  • Chỉnh sửa tài liệu XPS hiện có trong C++
  • Thêm trang hoặc tài liệu vào tài liệu XPS trong C++

Cài đặt XPS API cho C++

Aspose.Page for C++ được lưu trữ trên NuGet cũng như có sẵn dưới dạng [nhị phân] có thể tải xuống]4. Gói có thể tải xuống cũng chứa ứng dụng bảng điều khiển C++ chứa mã nguồn của các ví dụ cơ bản.

Tạo một tài liệu XPS trong C++

Sau đây là các bước đơn giản để tạo tài liệu XPS có chứa văn bản và hình ảnh bằng Aspose.Page for C++.

  • Tạo một đối tượng thuộc lớp XpsDocument.
  • Thêm văn bản và hình ảnh bằng các đối tượng XpsGlyphsXpsPath tương ứng.
  • Lưu tài liệu bằng phương pháp Save.

Mẫu mã sau đây cho biết cách tạo tài liệu XPS trong C++.

// Tạo đối tượng XpsDocument mới
auto doc = System::MakeObject<XpsDocument>();

// Thêm hình ảnh
System::SharedPtr<XpsPath> path = doc->AddPath(doc->CreatePathGeometry(u"M 30,20 l 450.24,0 0,150.64 -350.24,0 Z"));
// Tạo một ma trận có thể được sử dụng để định vị thích hợp.
path->set_RenderTransform(doc->CreateMatrix(0.7f, 0.f, 0.f, 0.7f, 0.f, 20.f));
// Tạo cọ ảnh
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)));

// Văn bản dưới dạng chân trang
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);

// Lưu dưới dạng XPS
doc->Save(u"Create-XPS.xps");

đầu ra

Chỉnh sửa tài liệu PS EPS XPS C++

Chỉnh sửa tài liệu XPS trong C++

Sau đây là các bước để chỉnh sửa tài liệu XPS hiện có:

  • Tạo một đối tượng của lớp XpsDocument và khởi tạo nó với đường dẫn của tài liệu XPS.
  • Truy cập các phần tử của tài liệu bằng đối tượng XpsDocument.
  • Lưu tài liệu đã cập nhật bằng phương pháp Save.

Mẫu mã sau đây cho biết cách chỉnh sửa tài liệu XPS hiện có trong C++.

// Tải tài liệu XPS
auto doc = System::MakeObject<XpsDocument>(u"Created-XPS.xps");
// Thêm trang trống vào cuối danh sách trang
doc->AddPage();
// Chèn một trang trống vào đầu danh sách trang
doc->InsertPage(1, true); 
// Lưu tệp XPS
doc->Save(u"Updated-XPS.xps");

Thêm Trang và Tài liệu vào XPS trong C++

Aspose.Page for C++ cũng cho phép bạn thêm các trang cũng như nhiều tài liệu vào một tài liệu XPS. Sau đây là các bước để tạo một tài liệu XPS mới và thêm một trang và tài liệu bổ sung.

  • Tạo một đối tượng thuộc lớp XpsDocument.
  • Sử dụng các phương pháp AddPageAddDocument để thêm trang và tài liệu tương ứng.
  • Sử dụng phương pháp SelectActiveDocument để chọn tài liệu đang hoạt động để xử lý.
  • Thêm văn bản hoặc hình ảnh vào tài liệu.
  • Lưu tài liệu.

Mẫu mã sau đây cho biết cách thêm các trang và tài liệu bổ sung vào XPS bằng C++.

// Tài liệu mới (1 tài liệu cố định với 1 trang kích thước mặc định)
auto doc = System::MakeObject<XpsDocument>();
// Thêm trang thứ 2 vào tài liệu thứ nhất và thiết lập hoạt động
doc->AddPage();
// Thêm tài liệu thứ 2 với 1 trang (trang thứ 3 trong tệp)
doc->AddDocument(false);
// Trang thứ 2 của tài liệu đầu tiên vẫn hoạt động
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);
// Kích hoạt tài liệu thứ 2
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); 
// Lưu tệp XPS
doc->Save(u"Create-XPS.xps");

Tìm hiểu thêm về Aspose.Page for C++

Bạn có thể tìm hiểu thêm về Aspose.Page for C++ bằng cách sử dụng tài liệuví dụ mã nguồn có sẵn trên GitHub.