Графіка та малювання

Графіка та малювання

Огляд

Aspose.PDF FOSS for .NET включає підсистему малювання для додавання векторної графіки на сторінки PDF. Контейнер Graph містить елементи форми (Line, Arc, Circle) і додається до колекції Paragraphs сторінки.


Створення контейнера графа

Graph визначає область для малювання з вказаною шириною та висотою.

using var doc = new Document();
var page = doc.Pages.Add();

var graph = new Graph(400, 200);
page.Paragraphs.Add(graph);

Малювання ліній

var line = new Line(new float[] { 0, 0, 300, 100 });
graph.Shapes.Add(line);

Малювання дуг і кіл

var arc = new Arc(150, 100, 80, 0, 180);
graph.Shapes.Add(arc);

var circle = new Circle(150, 100, 50);
graph.Shapes.Add(circle);

Робота з кольорами

Клас Color надає фабричні методи для RGB, ARGB та іменованих кольорів.

var red = Color.FromRgb(1.0, 0.0, 0.0);
var semiTransparent = Color.FromArgb(128, 0, 0, 255);

Малювання шляхів

DrawingPath підтримує MoveTo, LineTo, CurveTo та Close для вільних векторних форм.

var path = new DrawingPath();
path.MoveTo(10, 10);
path.LineTo(100, 10);
path.CurveTo(150, 50, 150, 100, 100, 100);
path.Close();

Формати зображень

ImageFormat надає значення перерахування для растрових форматів, що використовуються при перетворенні сторінок у зображення: Bmp, Jpeg, Png, Tiff, Gif.


Поради та кращі практики

  • Встановіть розміри графіка відповідно до області, у якій ви хочете малювати — координати всередині Graph відносні до її меж.
  • Використовуйте Color.FromArgb для напівпрозорих заповнень (підтримка альфа‑каналу).
  • Об’єднуйте кілька форм у один Graph для ефективного рендерингу.
  • DrawingPath ідеальний для складних кривих Безьє та довільних багатокутних форм.
  • Додайте Graph до колекції Paragraphs сторінки — не додавайте його до анотацій.

Поширені проблеми

IssueCauseFix
Фігура не відображаєтьсяРозміри графіка занадто малі для координат фігуриЗбільште Graph ширину/висоту або масштабуйте координати фігури
Кольори виглядають по‑різному у переглядачіНесумісність колірного просторуВикористовуйте Color.FromRgb зі значеннями в діапазоні 0.0‑1.0
Малюнок перекриває текстГрафік розташований у неправильному місці в потоці абзацуВідкоригуйте порядок абзаців або використайте FloatingBox для абсолютного позиціонування

FAQ

Чи можу я малювати заповнені форми?

Так. Встановіть властивість GraphInfo.FillColor форми на заповнення суцільним кольором.

Як розташувати графік у певних координатах сторінки?

Обгорніть Graph у FloatingBox і встановіть його Left та Top властивості для абсолютного позиціонування.

Чи підтримує бібліотека градієнти?

Класи Shading підтримують базові шаблони затінення. Використовуйте DrawingPath з затіненням для градієнтних заповнень.


Огляд довідки API

Клас / МетодОпис
GraphКонтейнер для малювальних форм, додається до абзаців сторінки
LineПряма лінія між двома або більше точками
ArcКругова дуга, визначена центром, радіусом і кутами
CircleФорма кола, визначена центром і радіусом
DrawingPathВільний шлях з MoveTo, LineTo, CurveTo, Close
ColorКолірне значення з RGB, ARGB та фабричними методами
Color.FromRgbСтворити колір з компонентів RGB
Color.FromArgbСтворити колір з альфа‑прозорістю
GraphicElementCollectionКолекція графічних елементів на сторінці
ImageFormatПерерахування форматів растрових зображень (Bmp, Jpeg, Png, Tiff, Gif)

Див. також

 Українська