امروز قصد داریم اصول برنامه نویسی گرافیکی در Java را بیاموزیم. ما به اصول طراحی اشکال اساسی، دستکاری رنگ ها و کار با خودکارها می پردازیم. چه در حال ایجاد گرافیک به عنوان بخشی از پروژه فعلی خود باشید و چه به عنوان پایه بازی یا برنامه خود، بیایید نحوه ایجاد تصاویر زیبا را به راحتی از طریق برنامه نویسی بررسی کنیم.
این مقاله موضوعات زیر را پوشش می دهد:
- کتابخانه گرافیک جاوا
- برنامه نویسی گرافیک در جاوا
- رسم منحنی ها
- چند ضلعی ها و مستطیل ها
- نحوه ترسیم خطوط
- طراحی مسیرها
- یک منطقه پر را رسم کنید
کتابخانه گرافیک Java - دانلود رایگان
Aspose.Drawing یکی از پرکاربردترین کتابخانه های گرافیکی برداری برای برنامه نویسی دو بعدی است. ما از Aspose.Drawing for Java API برای برنامه نویسی گرافیکی در Java استفاده خواهیم کرد. برنامه نویسان می توانند از این کتابخانه چند پلتفرمی برای ترسیم متن، اشکال و تصاویر در برنامه های دو بعدی خود استفاده کنند. این امکان بارگیری، ذخیره و دستکاری [فرمت های فایل پشتیبانی شده] را فراهم می کند.
لطفاً JAR API را دانلود کنید یا پیکربندی pom.xml زیر را در یک برنامه Java مبتنی بر Maven اضافه کنید.
<repositories>
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-drawing</artifactId>
<version>24.1</version>
</dependency>
</dependencies>
برنامه نویسی گرافیک در Java
در Java به راحتی می توانیم انواع اشکال مانند منحنی ها، خطوط، مستطیل ها، نواحی پر شده، بیضی ها و چندضلعی ها را رسم کنیم. API روش های مختلفی را برای ترسیم این اشکال ارائه می دهد. با دنبال کردن مراحل زیر میتوانیم انواع گرافیکهای برداری مختلف را به صورت برنامهنویسی ایجاد کنیم:
- یک شی از کلاس Bitmap ایجاد کنید.
- یک شی از کلاس Graphics را از بیت مپ مقدار دهی اولیه کنید.
- یک شیء کلاس Pen یا SolidBrush با پارامترهای دلخواه تعریف کنید.
- از متد(های) مخصوص شکل کلاس Graphics برای رسم شکل(های) مورد نظر استفاده کنید.
- در پایان، تصویر را ذخیره کنید.
حال بیایید ببینیم که چگونه این مراحل را در Java انجام دهیم.
رسم منحنی ها در Java
با استفاده از روش های زیر می توانیم کمان، دایره، بیضی یا منحنی بسته رسم کنیم:
- متد drawArc() برای رسم کمان.
- متد drawEllipse() برای رسم بیضی.
- متد drawClosedCurve() برای رسم منحنی بسته.
- متد drawCurve() برای رسم منحنی.
لطفا مراحل زیر را برای ترسیم اشکال منحنی دنبال کنید:
- یک نمونه از کلاس Bitmap ایجاد کنید.
- شی کلاس Graphics را با استفاده از متد fromImage() از شی Bitmap جدید ایجاد کنید.
- یک شی کلاس Pen با رنگ و اندازه مشخص شده تعریف کنید.
- پس از آن، متد drawClosedCurve() را برای رسم منحنی بسته فراخوانی کنید.
- در صورت تمایل، مراحل بالا را برای اضافه کردن قوس و بیضی تکرار کنید.
- در نهایت با استفاده از متد save() تصویر خروجی را ذخیره کنید.
نمونه کد زیر نحوه رسم اشکال منحنی در Java را نشان می دهد.
// این مثال کد نحوه رسم منحنی، قوس و دایره بسته را نشان می دهد.
// یک بیت مپ ایجاد کنید
Bitmap bitmap = new Bitmap(1000, 800);
// گرافیک را از Bitmap راه اندازی کنید
Graphics graphics = Graphics.fromImage(bitmap);
// یک قلم برای کشیدن تعریف کنید
Pen penBlue = new Pen(Color.getBlue(), 4);
// یک منحنی بکشید
graphics.drawClosedCurve(penBlue, new Point[] { new Point(10, 700), new Point(250, 500), new Point(500, 10), new Point(750, 500), new Point(990, 700) });
// یک قوس بکشید
Pen penRed = new Pen(Color.getRed(), 2);
graphics.drawArc(penRed, 0, 0, 700, 700, 0, 180);
// یک بیضی بکشید
Pen penGreen = new Pen(Color.getGreen(), 2);
graphics.drawEllipse(penGreen, 10, 10, 500, 500);
// بیت مپ را به صورت PNG ذخیره کنید
bitmap.save("D:\\Files\\Curves.png");
رسم چند ضلعی و مستطیل در Java
با انجام مراحلی که قبلا ذکر شد می توانیم چند ضلعی و مستطیل رسم کنیم. با این حال، ما باید از روش های زیر در مرحله 4 استفاده کنیم:
- متد drawPolygon() برای رسم چند ضلعی.
- متد drawRectangle() برای رسم مستطیل.
نمونه کد زیر نحوه رسم چند ضلعی و مستطیل در Java را نشان می دهد.
// این مثال کد نحوه رسم چند ضلعی و مستطیل را نشان می دهد.
// یک بیت مپ ایجاد کنید
Bitmap bitmap = new Bitmap(1000, 800);
// گرافیک را از Bitmap راه اندازی کنید
Graphics graphics = Graphics.fromImage(bitmap);
// یک قلم برای کشیدن تعریف کنید
Pen penBlue = new Pen(Color.getBlue(), 4);
// یک چند ضلعی رسم کنید
graphics.drawPolygon(penBlue, new Point[] { new Point(100, 100), new Point(500, 700), new Point(900, 100) });
// یک مستطیل رسم کنید
Pen penRed = new Pen(Color.getRed(), 2);
graphics.drawRectangle(penRed, 10, 10, 900, 700);
// بیت مپ را به صورت PNG ذخیره کنید
bitmap.save("D:\\Files\\Shapes.png");
رسم خطوط در Java
به همین ترتیب، میتوانیم با دنبال کردن مراحلی که قبلاً ذکر شد، خطوط را ترسیم کنیم. با این حال، ما باید از متد drawLine() در مرحله 4 برای رسم یک خط استفاده کنیم.
نمونه کد زیر نحوه رسم خطوط در Java را نشان می دهد.
// این مثال کد نحوه رسم یک خط را نشان می دهد.
// یک بیت مپ ایجاد کنید
Bitmap bitmap = new Bitmap(1000, 800);
// گرافیک را از Bitmap راه اندازی کنید
Graphics graphics = Graphics.fromImage(bitmap);
// یک قلم برای کشیدن تعریف کنید
Pen pen = new Pen(Color.getBlue(), 4);
// رسم خطوط
graphics.drawLine(pen, 10, 700, 500, 10);
graphics.drawLine(pen, 500, 10, 990, 700);
// بیت مپ را به صورت PNG ذخیره کنید
bitmap.save("D:\\Files\\Lines.png");
ترسیم مسیرها در Java
مسیرها در گرافیک برداری مجموعه ای از خطوط مستقیم صاف را نشان می دهند که با نقطه شروع و پایان به همراه سایر نقاط تعریف شده اند. با دنبال کردن مراحل زیر می توانیم مسیری را ترسیم کنیم:
- یک نمونه از کلاس Bitmap ایجاد کنید.
- شی کلاس Graphics را از شی Bitmap تازه ایجاد شده با استفاده از متد fromImage() راه اندازی کنید.
- یک شی کلاس Pen با رنگ و اندازه مشخص شده تعریف کنید.
- یک نمونه از کلاس GraphicsPath ایجاد کنید.
- خطوط را با استفاده از متد addLine() اضافه کنید.
- پس از آن، متد drawPath() را با اشیاء Pen و GraphicsPath فراخوانی کنید.
- در نهایت با استفاده از متد save() تصویر خروجی را ذخیره کنید.
نمونه کد زیر نحوه رسم مسیر در Java را نشان می دهد.
// این مثال کد نحوه رسم مسیر را نشان می دهد.
// یک بیت مپ ایجاد کنید
Bitmap bitmap = new Bitmap(1000, 800);
// گرافیک را از Bitmap راه اندازی کنید
Graphics graphics = Graphics.fromImage(bitmap);
// یک قلم برای کشیدن تعریف کنید
Pen pen = new Pen(Color.getBlue(), 4);
// راه اندازی مسیر گرافیکی
GraphicsPath path = new GraphicsPath();
// خط 1 را اضافه کنید
path.addLine(100, 100, 1000, 400);
// خط 2 را اضافه کنید
path.addLine(1000, 600, 300, 600);
// مستطیل اضافه کنید
path.addRectangle(new Rectangle(500, 350, 200, 400));
// Ellipse را اضافه کنید
path.addEllipse(10, 250, 450, 300);
// یک مسیر بکشید
graphics.drawPath(pen, path);
// بیت مپ را به صورت PNG ذخیره کنید
bitmap.save("D:\\Files\\Shapes.png");
یک منطقه پر را در Java رسم کنید
با دنبال کردن مراحل زیر می توانیم یک منطقه پر را رسم کنیم:
- یک نمونه از کلاس Bitmap ایجاد کنید.
- شی کلاس Graphics را از شی Bitmap تازه ایجاد شده با استفاده از متد fromImage() راه اندازی کنید.
- یک نمونه از کلاس GraphicsPath ایجاد کنید.
- با استفاده از متد addPolygon() یک چند ضلعی اضافه کنید.
- یک نمونه از کلاس Region ایجاد کنید.
- یک شی GraphicsPath دیگر اضافه کنید و با استفاده از متد addRectangle() یک مستطیل اضافه کنید.
- برای حذف مسیر داخلی از منطقه، متد exclude() را فراخوانی کنید.
- سپس یک شی کلاس SolidBrush با رنگ مشخص شده تعریف کنید.
- پس از آن، متد fillRegion() را با اشیاء SolidBrush و GraphicsPath فراخوانی کنید.
- در نهایت با استفاده از متد save() تصویر خروجی را ذخیره کنید.
نمونه کد زیر نحوه رسم ناحیه پر شده در Java را نشان می دهد.
// این مثال کد نحوه رسم منطقه را نشان می دهد.
// یک بیت مپ ایجاد کنید
Bitmap bitmap = new Bitmap(1000, 800);
// گرافیک را از Bitmap راه اندازی کنید
Graphics graphics = Graphics.fromImage(bitmap);
// یک چند ضلعی اضافه کنید
GraphicsPath path = new GraphicsPath();
path.addPolygon(new Point[] { new Point(100, 400), new Point(500, 100), new Point(900, 400), new Point(500, 700) });
// راه اندازی یک منطقه
Region region = new Region(path);
// مسیر گرافیکی داخلی
GraphicsPath innerPath = new GraphicsPath();
// یک مستطیل اضافه کنید
innerPath.addRectangle(new Rectangle(300, 300, 400, 200));
// مسیر درونی را حذف کنید
region.exclude(innerPath);
// یک برس جامد را تعریف کنید
Brush brush = new SolidBrush(Color.getBlue());
// منطقه را پر کنید
graphics.fillRegion(brush, region);
// بیت مپ را به صورت PNG ذخیره کنید
bitmap.save("D:\\Files\\FillRegion.png");
مجوز رایگان دریافت کنید
برای امتحان Aspose.Drawing for Java بدون محدودیت ارزیابی میتوانید یک مجوز موقت رایگان دریافت کنید.
برنامه نویسی گرافیک در Java – منابع رایگان
علاوه بر ترسیم خطوط، مسیرها و مستطیل ها، می توانید ویژگی های مختلف کتابخانه را با استفاده از منابع زیر کشف کنید:
نتیجه
در این مقاله اصول برنامه نویسی گرافیکی در Java را با استفاده از Aspose.Drawing for Java آموختیم. ما نحوه ترسیم مستطیل، بیضی، خطوط و مسیرها را به صورت برنامهنویسی در Java دیدهایم. ما همچنین یاد گرفتیم که چگونه یک تصویر بیت مپ را به عنوان یک تصویر PNG ایجاد و ذخیره کنیم. با دنبال کردن مراحل ذکر شده در این مقاله و نمونه کدهای ارائه شده، می توانید گرافیک های برداری خیره کننده ای در برنامه های Java خود ایجاد کنید. در صورت وجود هرگونه ابهام، لطفاً با ما در تالار گفتمان پشتیبانی رایگان تماس بگیرید.