Làm việc với bạt

Kẹp và chuyển đổi các bức tranh sơn dầu của các tệp XPS

 

Quản lý Canvases trong tài liệu là một trong những tính năng được cung cấp bởi Aspose.Page cho .NET. Đây là một giải pháp để làm việc với các Ngôn ngữ Mô tả Trang khác nhau, cụ thể là XPS XPS. Trong ví dụ dưới đây, bạn sẽ tìm hiểu cách:

  • Tạo canvas trong tệp XPS.

  • Thực hiện các hiệu ứng bên trái và bên trên trong canvas chính.

  • Thêm một canvas mới với một chuyển đổi đã dịch vào canvas chính.

  • Thêm một canvas mới với sự xoay quanh một chuyển đổi điểm vào canvas chính.

  • Kẹp vải. Và nhiều thao tác hơn nữa với các bức tranh sơn dầu trong tệp XPS.

Để chuyển đổi phông bạt của tệp XPS, hãy làm theo hướng dẫn tiếp theo:

  1. Tạo tệp XPS bằng XpsDocument Class .
  2. Tạo canvas chính, chung cho tất cả các phần tử trang bằng phương thức AddCanvas() .
  3. Tạo khoảng lệch trái và trên cùng trong canvas chính bằng phương pháp CreateMatrix() .
  4. Tạo hình học đường dẫn hình chữ nhật với phương pháp CreatePathGeometry() .
  5. Tạo màu tô cho hình chữ nhật bằng Lớp XpsBrush .
  6. Để tạo một hình chữ nhật trong canvas 2 và tô nó, hãy sử dụng Lớp XpsPath .
  7. Để dịch canvas 3 để định vị một hình chữ nhật mới bên dưới hình chữ nhật trước đó, hãy sử dụng phương pháp CreateMatrix() .
  8. Để dịch canvas này sang bên phải của trang, hãy sử dụng Phương pháp Translate() .
  9. Để chia tỷ lệ canvas 4, hãy gọi Phương thức Scale() .
  10. Để xoay canvas 5 xung quanh một điểm 45 độ, phương pháp RotateAround() sẽ thực hiện có ích.
  11. Lưu tài liệu XPS đã thay đổi bằng phương pháp XPsDocument.Save() .

Tệp XPS Mã chuyển đổi Canvas C#

    using Aspose.Page.Xps;
    using Aspose.Page.Xps.XpsModel;
    using System.Drawing;
    // The path to the documents directory.
    string dataDir = RunExamples.GetDataDir_WorkingWithCanvas();
            
    // Create a new XPS Document
    XpsDocument doc = new XpsDocument();

    // Create main canvas, common for all page elemnts
    XpsCanvas canvas1 = doc.AddCanvas();

    // Make left and top offsets in the main canvas
    canvas1.RenderTransform = doc.CreateMatrix(1, 0, 0, 1, 20, 10);

    // Create the rectangle path geometry
    XpsPathGeometry rectGeom = doc.CreatePathGeometry("M 0,0 L 200,0 200,100 0,100 Z");

    // Create a fill for rectangles
    XpsBrush fill = doc.CreateSolidColorBrush(doc.CreateColor(12, 15, 159));
            
    // Add new canvas without any transformations to the main canvas
    XpsCanvas canvas2 = canvas1.AddCanvas();
    // Create rectangle in this canvas and fill it
    XpsPath rect = canvas2.AddPath(rectGeom);
    rect.Fill = fill;

    // Add new canvas with translate transformation to the main canvas
    XpsCanvas canvas3 = canvas1.AddCanvas();
    // Translate this canvas to position new rectangle below the previous rectnagle
    canvas3.RenderTransform = doc.CreateMatrix(1, 0, 0, 1, 0, 200);
    // Translate this canvas to the right side of the page
    canvas3.RenderTransform.Translate(500, 0);
    // Create the rectangle in this canvas and fill it
    rect = canvas3.AddPath(rectGeom);
    rect.Fill = fill;

    // Add new canvas with the double scale transformation to the main canvas
    XpsCanvas canvas4 = canvas1.AddCanvas();
    // Translate this canvas to position new rectangle below the previous rectnagle
    canvas4.RenderTransform = doc.CreateMatrix(1, 0, 0, 1, 0, 400);
    // Scale this canvas
    canvas4.RenderTransform.Scale(2, 2);
    // Create a rectangle in this canvas and fill it
    rect = canvas4.AddPath(rectGeom);
    rect.Fill = fill;

    // Add new canvas with rotation around a point transformation to the main canvas
    XpsCanvas canvas5 = canvas1.AddCanvas();
    // Translate this canvas to position new rectangle below the previous rectnagle
    canvas5.RenderTransform = doc.CreateMatrix(1, 0, 0, 1, 0, 800);
    // Rotate this canvas aroud a point on 45 degrees
    canvas5.RenderTransform.RotateAround(45, new PointF(100, 50));
    rect = canvas5.AddPath(rectGeom);
    rect.Fill = fill;
            
    // Save the resultant XPS document
    doc.Save(dataDir + "output1.xps");
Đoạn mã tiếp theo cho thấy cách cắt các tệp XPS có bìa cứng trong Aspose.Page for .NET Api Solution.

Để Clip bìa của tệp XPS, hãy làm theo hướng dẫn tiếp theo:

  1. Tạo hoặc mở tệp XPS bằng XPsDocument Class.
  2. Tạo canvas chính, chung cho tất cả các phần tử trang bằng phương thức AddCanvas() .
  3. Tạo khoảng lệch trái và trên cùng trong canvas chính bằng phương pháp CreateMatrix() .
  4. Tạo hình học đường dẫn hình chữ nhật với phương pháp CreatePathGeometry() .
  5. Tạo màu tô cho hình chữ nhật bằng Lớp XpsBrush .
  6. Để thêm một canvas khác có clip vào canvas chính, hãy gọi lại phương thức AddCanvas().
  7. Tạo hình dạng vòng tròn cho clip bằng cách sử dụng Lớp XpsPathGeometry .
  8. Để tạo một hình chữ nhật trong canvas này và tô nó, hãy sử dụng Lớp XpsPath .
  9. Thêm một canvas khác bằng phương thức AddCanvas(), sau đó tạo một hình chữ nhật trong canvas này và vuốt nó bằng ClassXPsPathGeometry.
  10. Lưu tài liệu XPS đã thay đổi bằng phương thức XPsDocument.Save().

XPS tệp canvas cắt mã C#

    // The path to the documents directory.
    string dataDir = RunExamples.GetDataDir_WorkingWithCanvas();
            
    // Create a new XPS Document
    XpsDocument doc = new XpsDocument();

    // Create main canvas, common for all page elemnts
    XpsCanvas canvas1 = doc.AddCanvas();

    // Make left and top offsets in the main canvas
    canvas1.RenderTransform = doc.CreateMatrix(1, 0, 0, 1, 20, 10);

    // Create the rectangle path geometry
    XpsPathGeometry rectGeom = doc.CreatePathGeometry("M 0,0 L 500,0 500,300 0,300 Z");

    // Create a fill for rectangles
    XpsBrush fill = doc.CreateSolidColorBrush(doc.CreateColor(12, 15, 159));
            
    // Add another canvas with the clip to the main canvas
    XpsCanvas canvas2 = canvas1.AddCanvas();

    // Create circle geometry for the clip
    XpsPathGeometry clipGeom = doc.CreatePathGeometry("M250,250 A100,100 0 1 1 250,50 100,100 0 1 1 250,250");
    canvas2.Clip = clipGeom;

    // Create rectangle in this canvas and fill it
    XpsPath rect = canvas2.AddPath(rectGeom);
    rect.Fill = fill;

    // Add the second canvas with stroked rectangle to the main canvas
    XpsCanvas canvas3 = canvas1.AddCanvas();

    // Create rectangle in this canvas and stroke it
    rect = canvas3.AddPath(rectGeom);
    rect.Stroke = fill;
    rect.StrokeThickness = 2;

    // Save resultant XPS document
    doc.Save(dataDir + "output2.xps");



Câu hỏi thường gặp

1. Làm cách nào để thêm canvas vào tệp XPS?

Đặt đường dẫn đến thư mục tài liệu. Để thêm canvas, hãy sử dụng Phương thức AddCanvas().

2. Làm cách nào để thao tác bù canvas trong tệp XPS?

Đặt đường dẫn đến thư mục tài liệu và thêm canvas. Sử dụng Phương thức CreateMatrix() để thực hiện bù trừ.

3. Những thao tác nào với canvas trong tệp XPS được hỗ trợ?

Bạn có thể tạo, cắt và thêm khung vẽ cũng như thao tác các phần bù của nó.

XPS Những gì là XPS Tập Tin Định Dạng

Định dạng XPS tương tự như định dạng PDF. Cả hai đều là định dạng ngôn ngữ mô tả trang (PDL). EPS dựa trên HTML và không dựa trên ngôn ngữ PostScript. Tệp .eps có thể chứa phần đánh dấu cấu trúc của tài liệu cùng với thông tin về cách tài liệu sẽ trông như thế nào. Ngoài ra còn có các hướng dẫn bổ sung về cách in và kết xuất tài liệu. Đặc điểm của định dạng là nó sửa chữa mô tả của tài liệu, có nghĩa là nó sẽ trông giống nhau cho dù ai và từ hệ thống hoạt động nào mở nó ra.