برش تصاویر در جاوا

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

Java API برای برش تصاویر - دانلود رایگان

Aspose.Imaging for Java یک API ویرایش تصویر شگفت انگیز است که طیف گسترده ای از ویژگی ها را برای دستکاری تصاویر فراهم می کند. علاوه بر این، از انواع فرمت های تصویری شطرنجی و برداری پشتیبانی می کند. ما از این 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>

برش تصاویر در جاوا

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

بیایید نگاهی به هر یک از روش های ذکر شده در بالا برای برش تصاویر در جاوا بیندازیم.

برش تصاویر با مقادیر Shift در جاوا

مراحل زیر برای برش تصویر با استفاده از مقادیر shift در جاوا آمده است.

  • ابتدا با استفاده از روش Image.load() تصویر را در یک شی RasterImage بارگذاری کنید.
  • اگر اینطور نیست، تصویر را کش کنید.
  • مقادیر شیفت چپ، راست، بالا و پایین را تعریف کنید.
  • برش تصویر با استفاده از روش RasterImage.crop().
  • تصویر برش خورده را با استفاده از روش RasterImage.save() ذخیره کنید.

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

// یک تصویر بارگیری کنید.
try (RasterImage rasterImage = (RasterImage) Image.load("image.jpg")) {
	// قبل از برش، تصویر باید برای عملکرد بهتر در کش ذخیره شود.
	if (!rasterImage.isCached()) {
		rasterImage.cacheData();
	}

	// مقادیر شیفت را برای هر چهار طرف تعریف کنید.
	int leftShift = 10;
	int rightShift = 10;
	int topShift = 10;
	int bottomShift = 10;

	// بر اساس مقادیر shift، برش را روی تصویر اعمال کنید. روش برش تغییر خواهد کرد
	// تصویر به مرکز تصویر محدود می شود و نتایج را در دیسک ذخیره می کند.
	rasterImage.crop(leftShift, rightShift, topShift, bottomShift);

	// ذخیره تصویر برش خورده
	rasterImage.save("cropped.jpg");
}

در زیر تصویر ورودی است که برای برش استفاده کردیم.

برش تصویر در جاوا

در زیر تصویر برش داده شده به دست آمده است.

برش تصویر در جاوا

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

همچنین می توانید یک مستطیل برای برش ناحیه مورد نظر یک تصویر تعریف کنید. مراحل زیر برش تصویر را با استفاده از یک مستطیل در جاوا نشان می دهد.

  • ابتدا با استفاده از روش Image.load() تصویر را در یک شی RasterImage بارگذاری کنید.
  • اگر اینطور نیست، تصویر را کش کنید.
  • یک شی مستطیل ایجاد کنید و آن را با اندازه دلخواه مقداردهی کنید.
  • برش تصویر با استفاده از روش RasterImage.crop().
  • تصویر برش خورده را با استفاده از روش RasterImage.save() ذخیره کنید.

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

// یک تصویر بارگیری کنید.
try (RasterImage rasterImage = (RasterImage) Image.load("image.jpg")) {
	// قبل از برش، تصویر باید برای عملکرد بهتر در کش ذخیره شود.
	if (!rasterImage.isCached()) {
		rasterImage.cacheData();
	}

	// یک نمونه از کلاس Rectangle با اندازه دلخواه ایجاد کنید.
	Rectangle rectangle = new Rectangle(20, 20, 20, 20);
	
	// برش تصویر
	rasterImage.crop(rectangle);

	// ذخیره تصویر برش خورده
	rasterImage.save("cropped.jpg");
}

Imaging Cropping API برای جاوا - مجوز رایگان دریافت کنید

می‌توانید یک مجوز موقت رایگان دریافت کنید و تصاویر را بدون محدودیت ارزیابی برش دهید.

نتیجه

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

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