Grafik dan Lukisan
Grafik dan Lukisan
Aspose.PDF FOSS for .NET termasuk subsistem lukisan untuk menambah grafik vektor ke halaman PDF. Kontainer Graph menyimpan elemen bentuk (Line, Arc, Circle) dan ditambahkan ke koleksi Paragraphs halaman.
Mencipta kontena graf
Graph mendefinisikan kawasan yang boleh dilukis dengan lebar dan tinggi yang ditentukan.
using var doc = new Document();
var page = doc.Pages.Add();
var graph = new Graph(400, 200);
page.Paragraphs.Add(graph);Melukis garis
var line = new Line(new float[] { 0, 0, 300, 100 });
graph.Shapes.Add(line);Melukis busur dan bulatan
var arc = new Arc(150, 100, 80, 0, 180);
graph.Shapes.Add(arc);
var circle = new Circle(150, 100, 50);
graph.Shapes.Add(circle);Bekerja dengan warna
Kelas Color menyediakan kaedah kilang untuk RGB, ARGB, dan warna bernama.
var red = Color.FromRgb(1.0, 0.0, 0.0);
var semiTransparent = Color.FromArgb(128, 0, 0, 255);Laluan lukisan
DrawingPath menyokong MoveTo, LineTo, CurveTo, dan Close untuk bentuk vektor bebas.
var path = new DrawingPath();
path.MoveTo(10, 10);
path.LineTo(100, 10);
path.CurveTo(150, 50, 150, 100, 100, 100);
path.Close();Format imej
ImageFormat menyediakan nilai enumerasi untuk format raster yang digunakan semasa menukar halaman kepada imej: Bmp, Jpeg, Png, Tiff, Gif.
Petua dan Amalan Terbaik
- Tetapkan dimensi graf untuk sepadan dengan kawasan yang anda ingin lukis — koordinat di dalam
Graphadalah relatif kepada sempadannya. - Gunakan
Color.FromArgbuntuk isian separuh lutsinar (sokongan saluran alfa). - Gabungkan pelbagai bentuk dalam satu
Graphuntuk rendering yang cekap. DrawingPathadalah ideal untuk lengkung Bezier yang kompleks dan bentuk poligon sewenang-wenanya.- Tambahkan
Graphke koleksiParagraphshalaman — jangan menambahkannya ke anotasi.
Isu Umum
| Issue | Cause | Fix |
|---|---|---|
| Bentuk tidak kelihatan | Dimensi graf terlalu kecil untuk koordinat bentuk | Tingkatkan lebar/tinggi Graph atau skala koordinat bentuk |
| Warna kelihatan berbeza dalam penonton | Tidak sepadan ruang warna | Gunakan Color.FromRgb dengan nilai dalam julat 0.0-1.0 |
| Lukisan bertindih teks | Graf diletakkan pada kedudukan yang salah dalam aliran perenggan | Laras susunan perenggan atau gunakan FloatingBox untuk penempatan mutlak |
Soalan Lazim
Bolehkah saya melukis bentuk berisi?
Ya. Tetapkan sifat GraphInfo.FillColor bentuk untuk mengisi dengan warna pepejal.
Bagaimana saya menempatkan Graph pada koordinat halaman tertentu?
Balut Graph dalam FloatingBox dan tetapkan sifat Left dan Topnya untuk penempatan mutlak.
Adakah perpustakaan menyokong gradien?
Kelas Shading menyokong corak bayangan asas. Gunakan DrawingPath dengan bayangan untuk isian gradien.
Ringkasan Rujukan API
| Kelas / Kaedah | Keterangan |
|---|---|
Graph | Bekas untuk bentuk yang boleh dilukis, ditambah kepada perenggan halaman |
Line | Garis lurus antara dua atau lebih titik |
Arc | Busur bulat yang ditakrifkan oleh pusat, jejari, dan sudut |
Circle | Bentuk bulatan yang ditakrifkan oleh pusat dan jejari |
DrawingPath | Laluan bebas dengan MoveTo, LineTo, CurveTo, Close |
Color | Nilai warna dengan RGB, ARGB, dan kaedah kilang |
Color.FromRgb | Cipta warna daripada komponen RGB |
Color.FromArgb | Cipta warna dengan kelegapan alfa |
GraphicElementCollection | Koleksi elemen grafik pada halaman |
ImageFormat | Enumerasi format imej raster (Bmp, Jpeg, Png, Tiff, Gif) |