العمل بالفرش والتدرجات

حل C# .NET API للعمل مع الفرش والتدرجات اللونية لملفات XPS.

 

يتيح لك حل Aspose.Page for .NET API معالجة الرسومات المتجهة لملفات XPS. يمكنك إنشاء أشكال هندسية مختلفة بألوان وأنسجة مختلفة. في هذه الصفحة ، سيتم وصف بعض الأمثلة حول كيفية إضافة فراغات وتدرجات لونية مختلفة وكيفية العمل باستخدام فرش مختلفة. بالعمل بشكل تناظري ، ستتمكن من إنشاء أي شكل هندسي تحتاجه من أي لون.

لمعالجة الفرش والتدرجات اللونية لملفات XPS ، نحتاج إلى:

  • Aspose.Page لـ .NET 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# Code لضبط فراغات اللون لملف 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. أنشئ شكلًا هندسيًا للفرشاة المرئية للشبكة الأرجواني باستخدام فئة XpsPathGeometry .
  4. لتعيين لوحة الرسم للشبكة المرئية ذات الفرشاة الأرجواني ، استخدم طريقة CreateCanvas() .
  5. لإنشاء فرشاة مرئية ، استخدم طريقة 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() الطرق.
  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. كيفية العمل باستخدام الفرشاة المرئية في ملف XPS؟

قم بتعيين المسار إلى دليل المستندات. لإنشاء فرشاة مرئية، استخدم طريقة CreateVisualBrush().

3. كيفية فتح ملف XPS؟

استخدم Aspose.Page API Solution لفتح ملف XPS برمجيًا أو عبر الأنظمة الأساسية المشتركة XPS Viewer .

XPS ما هو XPS تنسيق الملف

تنسيق XPS مشابه لتنسيق PDF. كلاهما عبارة عن تنسيقات لغة وصف الصفحة (PDL). يعتمد EPS على HTML وليس على لغة PostScript. يمكن أن يحتوي ملف .eps على ترميز لهيكل المستند بالإضافة إلى معلومات حول الشكل الذي سيبدو عليه المستند. هناك أيضًا إرشادات مضافة حول كيفية طباعة المستند وتقديمه. تتمثل ميزة التنسيق في أنه يعمل على إصلاح وصف المستند مما يعني أنه سيبدو كما هو بغض النظر عن من ومن أي نظام تشغيل يفتحه.