Grafika i crtanje
Grafika i crtanje
Aspose.PDF FOSS for .NET uključuje pod‑sistem za crtanje za dodavanje vektorske grafike na PDF stranice. Kontejner Graph sadrži elemente oblika (Line, Arc, Circle) i dodaje se u kolekciju Paragraphs stranice.
Kreiranje kontejnera za graf
Graph definiše područje za crtanje sa specificiranom širinom i visinom.
using var doc = new Document();
var page = doc.Pages.Add();
var graph = new Graph(400, 200);
page.Paragraphs.Add(graph);Crtanje linija
var line = new Line(new float[] { 0, 0, 300, 100 });
graph.Shapes.Add(line);Crtanje lukova i krugova
var arc = new Arc(150, 100, 80, 0, 180);
graph.Shapes.Add(arc);
var circle = new Circle(150, 100, 50);
graph.Shapes.Add(circle);Rad sa bojama
Klasa Color pruža metode fabrike za RGB, ARGB i imenovane boje.
var red = Color.FromRgb(1.0, 0.0, 0.0);
var semiTransparent = Color.FromArgb(128, 0, 0, 255);Crtanje putanja
DrawingPath podržava MoveTo, LineTo, CurveTo i Close za slobodne vektorske oblike.
var path = new DrawingPath();
path.MoveTo(10, 10);
path.LineTo(100, 10);
path.CurveTo(150, 50, 150, 100, 100, 100);
path.Close();Formati slika
ImageFormat pruža vrednosti nabrajanja za raster formate koji se koriste prilikom konvertovanja stranica u slike: Bmp, Jpeg, Png, Tiff, Gif.
Saveti i najbolje prakse
- Postavite dimenzije grafa da odgovaraju oblasti u kojoj želite da crtate — koordinate unutar
Graphsu relativne u odnosu na njegove granice. - Koristite
Color.FromArgbza poluprozirna popunjavanja (podrška za alfa kanal). - Kombinujte više oblika u jedan
Graphradi efikasnog renderovanja. DrawingPathje idealan za složene Bezierove krive i proizvoljne poligonalne oblike.- Dodajte
Graphu kolekcijuParagraphsstranice — ne dodajte ga u anotacije.
Česti problemi
| Problem | Uzrok | Rešenje |
|---|---|---|
| Oblik nije vidljiv | Dimenzije grafa su premale za koordinate oblika | Povećajte Graph širinu/visinu ili skalirajte koordinate oblika |
| Boje se prikazuju drugačije u pregledniku | Neusklađenost kolor prostora | Koristite Color.FromRgb sa vrednostima u opsegu 0.0-1.0 |
| Crtanje preklapa tekst | Graf je postavljen na pogrešnu poziciju u toku pasusa | Podesite redosled pasusa ili koristite FloatingBox za apsolutno pozicioniranje |
Često postavljana pitanja
Mogu li da crtam popunjene oblike?
Da. Postavite svojstvo GraphInfo.FillColor oblika da se popuni jednobojnom bojom.
Kako da pozicioniram graf na određene koordinate stranice?
Umotajte Graph u FloatingBox i postavite njegove Left i Top osobine za apsolutno pozicioniranje.
Da li biblioteka podržava gradijente?
Klase Shading podržavaju osnovne obrasce senčenja. Koristite DrawingPath sa senčenjem za gradijentna popunjavanja.
Sažetak API reference
| Klasa / Metoda | Opis |
|---|---|
Graph | Kontejner za crtež‑oblike, dodat u odlomke stranice |
Line | Prava linija između dve ili više tačaka |
Arc | Kružni luk definisan centrom, poluprečnikom i uglovima |
Circle | Oblik kruga definisan centrom i poluprečnikom |
DrawingPath | Slobodni put sa MoveTo, LineTo, CurveTo, Close |
Color | Vrednost boje sa RGB, ARGB i metodama fabrike |
Color.FromRgb | Kreiraj boju iz RGB komponenti |
Color.FromArgb | Kreiraj boju sa alfa providnošću |
GraphicElementCollection | Kolekcija grafičkih elemenata na stranici |
ImageFormat | Enumeracija raster formata slika (Bmp, Jpeg, Png, Tiff, Gif) |