رسم اشکال در جاوا

در موارد خاص، ممکن است لازم باشد با کشیدن اشکالی مانند دایره، خطوط، مستطیل و غیره اشیاء مختلفی ایجاد کنید. همچنین ممکن است مجبور شوید این اشکال را برای حاشیه نویسی روی تصاویر بکشید. در این مقاله با نحوه ترسیم اشکال به صورت برنامه نویسی در جاوا آشنا می شوید. به ویژه، شما یاد خواهید گرفت که چگونه خطوط، بیضی ها، کمان ها و مستطیل ها را بکشید و تصاویر آنها را ایجاد کنید.

Java API برای ترسیم اشکال - دانلود رایگان

برای ترسیم اشکال و تولید تصاویر خروجی، از Aspose.Imaging for Java استفاده می کنیم. این یک API ویرایش تصویر قدرتمند است که طیف گسترده ای از ویژگی ها را برای دستکاری تصاویر و ایجاد نقشه ها ارائه می دهد. می‌توانید API را دانلود یا با استفاده از تنظیمات Maven زیر نصب کنید.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository> 

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-imaging</artifactId>
    <version>22.9</version>
</dependency>

با استفاده از جاوا یک خط بکشید

مراحل زیر برای کشیدن خط در جاوا آمده است.

  • ابتدا یک شی از کلاس BmpOptions ایجاد کنید و بیت‌ها را در هر پیکسل با استفاده از روش setBitsPerPixel() تنظیم کنید.
  • سپس، StreamSource را با استفاده از روش setSource() اختصاص دهید.
  • یک تصویر جدید ایجاد کنید و آن را با شی BmpOptions و ارتفاع و عرض تصویر مقداردهی کنید.
  • یک شی از کلاس Graphics ایجاد کنید و آن را با شی Image مقداردهی اولیه کنید.
  • با استفاده از روش Graphics.clear() سطح تصویر را با مقداری رنگ پاک کنید.
  • با استفاده از روش [Graphics.drawLine(Pen, int, int, int, int) 18 خط بکشید.
  • با استفاده از روش Image.save() تصویر تولید و ذخیره کنید.

نمونه کد زیر نحوه رسم خط در جاوا را نشان می دهد.

// BmpOptions را ایجاد کنید
com.aspose.imaging.imageoptions.BmpOptions bmpCreateOptions = new com.aspose.imaging.imageoptions.BmpOptions();
bmpCreateOptions.setBitsPerPixel(32);

// ویژگی منبع را برای نمونه BmpOptions تعریف کنید
bmpCreateOptions.setSource(new StreamSource());

// یک نمونه از متد Image و call create را با عبور دادن نشان می دهد
// شی bmpCreateOptions
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(bmpCreateOptions, 500, 500);

// یک نمونه از کلاس Graphics ایجاد و مقداردهی اولیه کنید
com.aspose.imaging.Graphics graphic = new com.aspose.imaging.Graphics(image);

// سطح تصویر را با رنگ سفید پاک کنید
graphic.clear(com.aspose.imaging.Color.getWhite());

// با مشخص کردن جسم Pen دارای رنگ آبی و خط نقطه چین رسم کنید
// نقاط هماهنگ
graphic.drawLine(new Pen(com.aspose.imaging.Color.getBlue(), 3), 18, 18, 200, 200);
graphic.drawLine(new Pen(com.aspose.imaging.Color.getBlue(), 3), 18, 200, 200, 18);

// با مشخص کردن جسم Pen دارای Solid یک خط پیوسته رسم کنید
// قلم مو با رنگ قرمز و ساختارهای دو نقطه ای
graphic.drawLine(new Pen(new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getRed()), 3),
		new com.aspose.imaging.Point(18, 18), new com.aspose.imaging.Point(18, 200));

// با مشخص کردن جسم Pen دارای Solid یک خط پیوسته رسم کنید
// قلم مو با رنگ سفید و ساختارهای دو نقطه ای
graphic.drawLine(new Pen(new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getOrange()), 3),
		new com.aspose.imaging.Point(200, 18), new com.aspose.imaging.Point(18, 18));

// همه تغییرات را ذخیره کنید
image.save("draw_lines.bmp");

در زیر خروجی نمونه کد بالا آمده است.

رسم خط در جاوا

با استفاده از جاوا یک بیضی بکشید

مراحل زیر برای رسم بیضی در جاوا آمده است.

  • ابتدا یک شی از کلاس BmpOptions ایجاد کنید و بیت‌ها را در هر پیکسل با استفاده از روش setBitsPerPixel() تنظیم کنید.
  • سپس، StreamSource را با استفاده از روش setSource() اختصاص دهید.
  • یک تصویر جدید ایجاد کنید و آن را با شی BmpOptions و ارتفاع و عرض تصویر مقداردهی کنید.
  • یک شی از کلاس Graphics ایجاد کنید و آن را با شی Image مقداردهی اولیه کنید.
  • با استفاده از روش Graphics.clear() سطح تصویر را با مقداری رنگ پاک کنید.
  • با استفاده از روش Graphics.drawEllipse(Pen, Rectangle) یک بیضی بکشید.
  • با استفاده از روش Image.save() تصویر تولید و ذخیره کنید.

نمونه کد زیر نحوه رسم بیضی روی یک تصویر در جاوا را نشان می دهد.

// BmpOptions را ایجاد کنید
com.aspose.imaging.imageoptions.BmpOptions bmpCreateOptions = new com.aspose.imaging.imageoptions.BmpOptions();
bmpCreateOptions.setBitsPerPixel(32);

// ویژگی منبع را برای نمونه BmpOptions تعریف کنید
bmpCreateOptions.setSource(new StreamSource());

// یک نمونه از متد Image و call create را با عبور دادن نشان می دهد
// شی bmpCreateOptions
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(bmpCreateOptions, 400, 400);

// یک نمونه از کلاس Graphics ایجاد و مقداردهی اولیه کنید
com.aspose.imaging.Graphics graphic = new com.aspose.imaging.Graphics(image);

// سطح تصویر را با رنگ سفید پاک کنید
graphic.clear(com.aspose.imaging.Color.getWhite());

// با مشخص کردن رنگ قرمز جسم Pen، یک شکل بیضی نقطه‌دار رسم کنید
// رنگ و یک مستطیل اطراف
graphic.drawEllipse(new Pen(com.aspose.imaging.Color.getRed(), 3),
		new com.aspose.imaging.Rectangle(60, 40, 70, 120));

// با مشخص کردن شی Pen دارای یک شکل بیضی ممتد رسم کنید
// solid brush with blue رنگ و یک مستطیل اطراف
graphic.drawEllipse(new Pen(new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getBlue()), 3),
		new com.aspose.imaging.Rectangle(40, 60, 120, 70));

// همه تغییرات را ذخیره کنید
image.save("draw_ellipse.bmp");

در زیر خروجی نمونه کد بالا آمده است.

ترسیم بیضی در جاوا

با استفاده از جاوا یک قوس بکشید

مراحل زیر برای رسم کمان در جاوا آمده است.

  • ابتدا یک شی از کلاس BmpOptions ایجاد کنید و بیت‌ها را در هر پیکسل با استفاده از روش setBitsPerPixel() تنظیم کنید.
  • سپس، StreamSource را با استفاده از روش setSource() اختصاص دهید.
  • یک تصویر جدید ایجاد کنید و آن را با شی BmpOptions و ارتفاع و عرض تصویر مقداردهی کنید.
  • یک شی از کلاس Graphics ایجاد کنید و آن را با شی Image مقداردهی اولیه کنید.
  • با استفاده از روش Graphics.clear() سطح تصویر را با مقداری رنگ پاک کنید.
  • با استفاده از روش [Graphics.drawArc(Pen، float x، float y، عرض شناور، ارتفاع شناور، float startAngle، float sweepAngle) 20 قوس بکشید.
  • با استفاده از روش Image.save() تصویر تولید و ذخیره کنید.

نمونه کد زیر نحوه رسم قوس روی یک تصویر در جاوا را نشان می دهد.

// BmpOptions را ایجاد کنید
com.aspose.imaging.imageoptions.BmpOptions bmpCreateOptions = new com.aspose.imaging.imageoptions.BmpOptions();
bmpCreateOptions.setBitsPerPixel(32);

// ویژگی منبع را برای نمونه BmpOptions تعریف کنید
bmpCreateOptions.setSource(new StreamSource());

// نمونه ای از Image ایجاد می کند و متد Create را با عبور دادن فراخوانی می کند
// شی BmpOptions
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(bmpCreateOptions, 400, 400);

// یک نمونه از کلاس Graphics ایجاد و مقداردهی اولیه کنید
com.aspose.imaging.Graphics graphic = new com.aspose.imaging.Graphics(image);

// سطح تصویر را با رنگ سفید پاک کنید
graphic.clear(com.aspose.imaging.Color.getWhite());

// با مشخص کردن جسم Pen دارای رنگ مشکی قرمز، یک شکل قوس نقطه‌دار رسم کنید
// رنگ و مختصات، ارتفاع، عرض، زوایای شروع و پایان
int width = 200;
int height = 300;
int startAngle = 45;
int sweepAngle = 270;

// قوس را به صفحه بکشید
graphic.drawArc(new Pen(com.aspose.imaging.Color.getBlack(), 3), 0, 0, width, height, startAngle, sweepAngle);

// همه تغییرات را ذخیره کنید
image.save("draw_arc.bmp");

در زیر خروجی نمونه کد بالا آمده است.

رسم قوس در جاوا

با استفاده از جاوا یک مستطیل بکشید

مراحل زیر برای رسم مستطیل در جاوا آمده است.

  • ابتدا یک شی از کلاس BmpOptions ایجاد کنید و بیت‌ها را در هر پیکسل با استفاده از روش setBitsPerPixel() تنظیم کنید.
  • سپس، StreamSource را با استفاده از روش setSource() اختصاص دهید.
  • یک تصویر جدید ایجاد کنید و آن را با شی BmpOptions و ارتفاع و عرض تصویر مقداردهی کنید.
  • یک شی از کلاس Graphics ایجاد کنید و آن را با شی Image مقداردهی اولیه کنید.
  • با استفاده از روش Graphics.clear() سطح تصویر را با مقداری رنگ پاک کنید.
  • با استفاده از روش Graphics.drawRectangle(Pen, Rectangle) مستطیل بکشید.
  • با استفاده از روش Image.save() تصویر تولید و ذخیره کنید.

نمونه کد زیر نحوه رسم مستطیل روی یک تصویر در جاوا را نشان می دهد.

// BmpOptions را ایجاد کنید
com.aspose.imaging.imageoptions.BmpOptions bmpCreateOptions = new com.aspose.imaging.imageoptions.BmpOptions();
bmpCreateOptions.setBitsPerPixel(32);

// ویژگی منبع را برای نمونه BmpOptions تعریف کنید
bmpCreateOptions.setSource(new StreamSource());

// نمونه ای از Image ایجاد می کند و متد Create را با عبور دادن فراخوانی می کند
// bmpCreateOptionsobject
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(bmpCreateOptions, 400, 400);

// یک نمونه از کلاس Graphics ایجاد و مقداردهی اولیه کنید
com.aspose.imaging.Graphics graphic = new com.aspose.imaging.Graphics(image);

// سطح تصویر را با رنگ سفید پاک کنید
graphic.clear(com.aspose.imaging.Color.getWhite());

// با مشخص کردن رنگ قرمز جسم Pen، یک شکل مستطیل نقطه‌دار رسم کنید
// رنگ و ساختار مستطیلی
graphic.drawRectangle(new Pen(com.aspose.imaging.Color.getRed(), 3),
		new com.aspose.imaging.Rectangle(60, 40, 70, 120));

// با مشخص کردن شیء Pen یک شکل مستطیل پیوسته بکشید
// solid brush with blue رنگ و ساختار مستطیلی
graphic.drawRectangle(new Pen(new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getBlue()), 3),
		new com.aspose.imaging.Rectangle(40, 60, 120, 70));

// همه تغییرات را ذخیره کنید
image.save("draw_rectangle.bmp");

در زیر خروجی نمونه کد بالا آمده است.

رسم مستطیل در جاوا

Java Image Drawing API - یک مجوز رایگان دریافت کنید

شما می توانید یک مجوز موقت رایگان دریافت کنید و اشکال را بدون محدودیت ارزیابی ترسیم کنید.

نتیجه

در این مقاله نحوه رسم اشکال در جاوا را یاد گرفتید. ما نحوه رسم خطوط، بیضی ها، کمان ها و مستطیل ها را به صورت برنامه ریزی شده روی تصاویر توضیح داده ایم. شما به راحتی می توانید نمونه کدهای ارائه شده را در برنامه های جاوا خود ادغام کنید.

ادامه مطلب

می‌توانید با استفاده از مستندات درباره API پردازش تصویر جاوا بیشتر کاوش کنید. همچنین، می توانید سوالات خود را از طریق [تالار گفتمان3 با ما در میان بگذارید.

همچنین ببینید