แทรกรูปทรงกราฟิกแบบเวกเตอร์ลงในไฟล์ XPS

C# .NET API solution สำหรับทำงานกับกราฟิกแบบเวกเตอร์ของไฟล์ XPS

 

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

ในการทำงานกับรูปทรงกราฟิกแบบเวกเตอร์ของ XPS เราต้องการ:

  • Aspose.Page สำหรับ .NET API ซึ่งเป็น API สำหรับจัดการและแปลงเอกสารที่เต็มไปด้วยคุณสมบัติ ทรงพลัง และใช้งานง่ายสำหรับแพลตฟอร์ม C#

  • เปิด NuGet package manager และค้นหา Aspose.Page แล้วติดตั้ง คุณอาจใช้คำสั่งต่อไปนี้จาก Package Manager Console ได้เช่นกัน

Package Manager Console Command


    PM> Install-Package Aspose.Page

ขั้นตอนในการเพิ่มรูปสี่เหลี่ยมผืนผ้าด้วย C#

  1. ตั้งค่าเส้นทางไปยังไดเรกทอรีเอกสาร
  2. สร้างไฟล์ XPS โดยใช้ XpsDocument Class
  3. ในการสร้างรูปสี่เหลี่ยมผืนผ้าที่มีเส้นขอบสีทึบ CMYK (สีน้ำเงิน) ที่มุมล่างซ้าย ให้ใช้เมธอดของคลาส XpsPath
  4. บันทึกเอกสาร XPS ที่เปลี่ยนแปลงโดยใช้เมธอด XPsDocument.Save

โค้ด C# สำหรับแทรกรูปสี่เหลี่ยมผืนผ้าลงในไฟล์ XPS

    using Aspose.Page.XPS;
    using Aspose.Page.XPS.XpsModel;
    using System.Drawing;
    using System.Collections.Generic;
    // The path to the documents directory.
    string dataDir = RunExamples.GetDataDir_WorkingWithShapes();

    // Create a new XPS Document
    XpsDocument doc = new XpsDocument();

    // CMYK (blue) solid color stroked rectangle in the lower left
    XpsPath path = doc.AddPath(doc.CreatePathGeometry("M 20,10 L 220,10 220,100 20,100 Z"));
    path.Stroke = doc.CreateSolidColorBrush(
        doc.CreateColor(dataDir + "uswebuncoated.icc", 1.0f, 1.000f, 0.000f, 0.000f, 0.000f));
    path.StrokeThickness = 12f;

    // Save the resultant XPS document
     doc.Save(dataDir + "AddRectangle_out.xps");
โค้ดสั้นๆ ต่อไปนี้แสดงวิธีใส่รูปวงรีลงในไฟล์ XPS ภายใน Aspose.Page สำหรับ .NET Api Solution

ขั้นตอนในการเพิ่มรูปวงรีด้วย C#

  1. ตั้งค่าเส้นทางไปยังไดเรกทอรีเอกสาร
  2. เปิดสตรีมของไฟล์ XPS
  3. สร้างไฟล์ XPS โดยใช้ XpsDocument Class
  4. ในการสร้างรูปวงรีที่มีเส้นขอบไล่ระดับสีแบบวงกลมที่มุมล่างซ้าย ให้ใช้เมธอดของคลาส XpsPath
  5. บันทึกเอกสาร XPS ที่เปลี่ยนแปลงโดยใช้เมธอด XPsDocument.Save()

โค้ด C# สำหรับแทรกรูปวงรีลงในไฟล์ XPS

    // The path to the documents directory.
    string dataDir = RunExamples.GetDataDir_WorkingWithShapes();

    // Create a new XPS Document
    XpsDocument doc = new XpsDocument();

    // Radial gradient stroked ellipse in the lower left
    List<XpsGradientStop> stops = new List<XpsGradientStop>();
    stops.Add(doc.CreateGradientStop(doc.CreateColor(0, 0, 255), 0f));
    stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 0, 0), .25f));
    stops.Add(doc.CreateGradientStop(doc.CreateColor(0, 255, 0), .5f));
    stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 255, 0), .75f));
    stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 0, 0), 1f));

    XpsPath path = doc.AddPath(doc.CreatePathGeometry("M 20,250 A 100,50 0 1 1 220,250 100,50 0 1 1 20,250"));
    path.Stroke = doc.CreateRadialGradientBrush(new PointF(575f, 125f), new PointF(575f, 100f), 75f, 50f);
    ((XpsGradientBrush)path.Stroke).SpreadMethod = XpsSpreadMethod.Reflect;
    ((XpsGradientBrush)path.Stroke).GradientStops.AddRange(stops);
    stops.Clear();
    path.StrokeThickness = 12f;

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



คำถามที่พบบ่อย

1. จะวาดกราฟิกใน XPS ได้อย่างไร?

หากต้องการจัดการวัตถุกราฟิกแบบเวกเตอร์ภายใน XPS ให้ใช้คลาสที่สอดคล้องกันของเนมสเปซ Aspose.Page.XPS.XpsModel

2. ฉันสามารถเปลี่ยนสีของกราฟิกภายใน XPS ได้หรือไม่

ใช่ คุณสามารถจัดการสี การไล่ระดับสี แปรง แคนวาส ฯลฯ ได้

3. ฉันจะเพิ่มรูปทรงเรขาคณิตลงในไฟล์ XPS ได้อย่างไร

เปิดสตรีมของไฟล์ XPS หากต้องการเพิ่มตัวเลขที่จำเป็น ให้ใช้วิธีการของ XpsPath Class

XPS XPS รูปแบบไฟล์คืออะไร

XPS (XML Paper Specification) เป็นรูปแบบทางเลือกของ Microsoft ต่อ PDF พื้นฐานบน XML/HTML รักษาเลย์เอาต์ข้ามแพลตฟอร์มและไม่ขึ้นกับระบบปฏิบัติการ