گرافیک و رسم

گرافیک و رسم

گرافیک و رسم

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 صفحه اضافه کنید — آن را به حاشیه‌نویسی‌ها اضافه نکنید.

مشکلات رایج

مشکلدلیلراه‌حل
شکل قابل مشاهده نیستابعاد گراف برای مختصات شکل بسیار کوچک استعرض/ارتفاع Graph را افزایش دهید یا مختصات شکل را مقیاس‌بندی کنید
رنگ‌ها در نمایشگر متفاوت به نظر می‌رسندعدم تطابق فضای رنگاز Color.FromRgb با مقادیر در بازه 0.0-1.0 استفاده کنید
نقاشی متن را پوشش می‌دهدگراف در موقعیت نادرست در جریان پاراگراف قرار گرفته استترتیب پاراگراف را تنظیم کنید یا برای موقعیت‌یابی مطلق از FloatingBox استفاده کنید

سوالات متداول

آیا می‌توانم اشکال پرشده رسم کنم؟

بله. ویژگی 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)

موارد مرتبط

 فارسی