การทำงานกับแปรงและการไล่ระดับสี

โซลูชัน C# .NET API เพื่อทำงานกับแปรงและการไล่ระดับสีของไฟล์ XPS

 

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

ในการจัดการแปรงและการไล่ระดับสีของไฟล์ XPS เราต้องการ:

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

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

Package Manager Console Command


    PM> Install-Package Aspose.Page

ขั้นตอนในการใช้ช่องว่างสีกับ C# .NET

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

รหัส C# เพื่อกำหนดช่องว่างสีของไฟล์ XPS

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

    // ARGB solid color filled rectangle
    XpsPath rect1 = doc.AddPath(doc.CreatePathGeometry("M 20,10 L 220,10 220,100 20,100 Z"));
    rect1.Fill = doc.CreateSolidColorBrush(doc.CreateColor(Color.FromArgb(222, 12, 15, 159)));

    // ARGB solid color filled rectangle, in another way
    XpsPath rect2 = doc.AddPath(doc.CreatePathGeometry("M 20,210 L 220,210 220,300 20,300 Z"));
    rect2.Fill = doc.CreateSolidColorBrush(doc.CreateColor(222, 12, 15, 159));

    // sRGB solid color filled rectangle
    XpsPath rect3 = doc.AddPath(doc.CreatePathGeometry("M 20,410 L 220,410 220,500 20,500 Z"));
    rect3.Fill = doc.CreateSolidColorBrush(doc.CreateColor(12, 15, 159));

    // scRGB solid color filled rectangle
    XpsPath rect4 = doc.AddPath(doc.CreatePathGeometry("M 20,610 L 220,610 220,700 20,700 Z"));
    rect4.Fill = doc.CreateSolidColorBrush(doc.CreateColor(0.08706f, 0.04706f, 0.05882f, 0.62353f));

    // CMYK (blue) solid color filled rectangle
    XpsPath rect5 = doc.AddPath(doc.CreatePathGeometry("M 20,810 L 220,810 220,900 20,900 Z"));
    rect5.Fill = doc.CreateSolidColorBrush(
        doc.CreateColor(dataDir + "uswebuncoated.icc", 1.0f, 1.000f, 0.000f, 0.000f, 0.000f));
            
    // Save the resultant XPS document
    doc.Save(dataDir + "ApplyDifferentColorSpaces_out.xps");
ข้อมูลโค้ดถัดไปแสดงวิธีใช้แปรงภาพของไฟล์ XPS ภายใน Aspose.Page สำหรับ .NET Api Solution

ขั้นตอนในการทำงานกับวิชวลบรัชด้วย C#

  1. กำหนดเส้นทางไปยังไดเร็กทอรีเอกสาร
  2. สร้างไฟล์ XPS โดยใช้ XpsDocument Class
  3. สร้างเรขาคณิตสำหรับ Visual Brush กริดสีม่วงโดยใช้คลาส XpsPathGeometry
  4. ในการตั้งค่าแคนวาสสำหรับ Visual Brush ตารางสีม่วง ให้ใช้เมธอด CreateCanvas()
  5. ในการสร้าง Visual Brush ให้ใช้วิธี CreateVisualBrush()
  6. บันทึกเอกสาร XPS ที่เปลี่ยนแปลงโดยใช้วิธีการ XPsDocument.Save()

รหัส C# เพื่อจัดการแปรงภาพของไฟล์ XPS

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

    XpsDocument doc = new XpsDocument();
    // Geometry for the magenta grid VisualBrush
    XpsPathGeometry pathGeometry = doc.CreatePathGeometry();
    pathGeometry.AddSegment(doc.CreatePolyLineSegment(
        new PointF[] { new PointF(240f, 5f), new PointF(240f, 310f), new PointF(0f, 310f) }));
    pathGeometry[0].StartPoint = new PointF(0f, 5f);

    // Canvas for the magenta grid VisualBrush
    XpsCanvas visualCanvas = doc.CreateCanvas();

    XpsPath visualPath = visualCanvas.AddPath(
        doc.CreatePathGeometry("M 0,4 L 4,4 4,0 6,0 6,4 10,4 10,6 6,6 6,10 4,10 4,6 0,6 Z"));
    visualPath.Fill = doc.CreateSolidColorBrush(doc.CreateColor(1f, .61f, 0.1f, 0.61f));

    XpsPath gridPath = doc.CreatePath(pathGeometry);
    // Create the Visual Brush, it is specified by some XPS fragment (vector graphics and glyphs)
    gridPath.Fill = doc.CreateVisualBrush(visualCanvas,
        new RectangleF(0f, 0f, 10f, 10f), new RectangleF(0f, 0f, 10f, 10f));
    ((XpsVisualBrush)gridPath.Fill).TileMode = XpsTileMode.Tile;
    // New canvas
    XpsCanvas canvas = doc.AddCanvas();
    canvas.RenderTransform = doc.CreateMatrix(1f, 0f, 0f, 1f, 268f, 70f);
    // Add a grid
    canvas.AddPath(pathGeometry);
    // Red transparent rectangle in the middle top
    XpsPath path = canvas.AddPath(doc.CreatePathGeometry("M 30,20 l 258.24,0 0,56.64 -258.24,0 Z"));
    path = canvas.AddPath(doc.CreatePathGeometry("M 10,10 L 228,10 228,100 10,100"));
    path.Fill = doc.CreateSolidColorBrush(doc.CreateColor(1.0f, 0.0f, 0.0f));
    path.Opacity = 0.7f;
    // Save the resultant XPS document
    doc.Save(dataDir + "AddGrid_out.xps");

ขั้นตอนในการเพิ่มการไล่ระดับสีในแนวนอนด้วย C#

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

รหัส C# เพื่อแทรกการไล่ระดับสีในแนวนอนไปยังไฟล์ XPS

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

    // Initialize the List of XpsGradentStop
    List<XpsGradientStop> stops = new List<XpsGradientStop>();
    stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 244, 253, 225), 0.0673828f));
    stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 251, 240, 23), 0.314453f));
    stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 252, 209, 0), 0.482422f));
    stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 241, 254, 161), 0.634766f));
    stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 53, 253, 255), 0.915039f));
    stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 12, 91, 248), 1f));

    // Create a new path by defining the geometery in the abbreviation form
    XpsPath path = doc.AddPath(doc.CreatePathGeometry("M 10,210 L 228,210 228,300 10,300"));
    path.RenderTransform = doc.CreateMatrix(1f, 0f, 0f, 1f, 20f, 70f);
    path.Fill = doc.CreateLinearGradientBrush(new PointF(10f, 0f), new PointF(228f, 0f));
    ((XpsGradientBrush)path.Fill).GradientStops.AddRange(stops);

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



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

1. ฉันจะเพิ่มการไล่ระดับสีลงในไฟล์ XPS ได้อย่างไร

กำหนดเส้นทางไปยังไดเร็กทอรีเอกสาร หากต้องการเพิ่มการไล่ระดับสี ให้ใช้เมธอด CreateColor() และ CreateGradientStop()

2. จะทำงานกับ Visual Brush ในไฟล์ XPS ได้อย่างไร?

กำหนดเส้นทางไปยังไดเร็กทอรีเอกสาร หากต้องการสร้างแปรงภาพให้ใช้เมธอด CreateVisualBrush()

3. เปิดไฟล์ .XPS ได้อย่างไร

ใช้โซลูชัน Aspose.Page API เพื่อ เปิด XPS ไฟล์โดยทางโปรแกรมหรือโดยวิธีข้ามแพลตฟอร์ม XPS Viewer

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

รูปแบบ XPS คล้ายกับรูปแบบ PDF ทั้งสองรูปแบบเป็นภาษาคำอธิบายหน้า (PDL) EPS อิงตาม HTML ไม่ใช่ภาษา PostScript ไฟล์ .eps สามารถใส่มาร์กอัปของโครงสร้างของเอกสารพร้อมกับข้อมูลเกี่ยวกับลักษณะของเอกสารได้ นอกจากนี้ยังมีคำแนะนำเพิ่มเติมเกี่ยวกับวิธีการพิมพ์และแสดงผลเอกสาร คุณสมบัติของรูปแบบคือ แก้ไขคำอธิบายของเอกสาร ซึ่งหมายความว่าจะมีลักษณะเหมือนกันไม่ว่าใครจะเปิดจากระบบปฏิบัติการใด