Управление фигурами векторной графики файлов XPS
Решение C# .NET API для работы с векторной графикой файлов XPS
Как и любой другой формат языка описания страниц, XPS позволяет включать векторную графику. решение позволяет манипулировать векторной графикой файлов XPS. Функционал богат, поэтому здесь будет описано лишь несколько примеров того, как добавлять овалы и прямоугольники в файлы. Здесь вы также увидите, как работать с цветами фигур. Работая по аналогии, вы сможете создать любую нужную вам геометрическую фигуру.
Для работы с фигурами векторной графики в XPS нам понадобятся:
Aspose.Page for .NET API — многофункциональное, мощное и простое в использовании API решение для обработки и преобразования документов для платформы C#.
Откройте диспетчер пакетов NuGet, найдите Aspose.Page и установите. Вы также можете использовать следующую команду из консоли диспетчера пакетов.
Package Manager Console Command
PM> Install-Package Aspose.Page
Порядок действий по добавлению прямоугольника с помощью C#.
- Укажите путь к каталогу документов.
- Создайте XPS-файл, используя XpsDocument Class .
- Чтобы создать прямоугольник сплошного цвета CMYK (синий) в левом нижнем углу, используйте методы класса XpsPath .
- Сохраните измененный документ XPS, используя метод XPsDocument.Save .
Код С# для вставки прямоугольника в файл 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");
Порядок действий по добавлению эллипса с помощью C#.
- Укажите путь к каталогу документов.
- Откройте поток файла XPS.
- Создайте файл XPS, используя класс XpsDocument.
- Чтобы создать эллипс с радиальным градиентом в левом нижнем углу, используйте методы класса XpsPath.
- Сохраните измененный XPS-документ с помощью метода XPsDocument.Save().
Код С# для вставки эллипса в файл 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.
XPS Формат файла XPS
Формат XPS похож на формат PDF. Оба являются форматами языка описания страниц (PDL). EPS основан на HTML, а не на языке PostScript. Файл .eps может содержать разметку структуры документа вместе с информацией о том, как документ будет выглядеть. Также добавлены инструкции о том, как распечатать и визуализировать документ. Особенность формата в том, что он фиксирует описание документа, а значит, он будет выглядеть одинаково независимо от того, кто и из какой операционной системы его открывает.