تصاویر Bitmap بخش اصلی گرافیک مدرن هستند. اینها در وبسایتها، دستگاههای موبایل و برنامههای دسکتاپ استفاده میشوند. فرمتهایی مانند BMP، GIF، PNG و JPEG همگی مبتنی بر Bitmap هستند. در این مقاله، شما یاد میگیرید که چگونه Bitmapها را در Java ایجاد، بارگذاری، پر کنید و رسم کنید.
SDK ترسیم تصویر Java برای کار با بیتمپها
در این مقاله، ما از Aspose.Drawing for Java برای ایجاد و رسم بر روی بیت مپ ها در Java استفاده خواهیم کرد. این یک API گرافیک ۲ بعدی است که از رسم اشکال، متن و تصاویر در پلتفرم های مختلف پشتیبانی می کند. شما می توانید فرمت های مختلف را به راحتی بارگذاری و ذخیره کنید.
شما میتوانید کتابخانه را از releases دانلود کرده و JAR را به پروژه خود اضافه کنید یا از طریق Maven نصب کنید.
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-drawing</artifactId>
<version>25.6</version> <!-- Replace with latest version -->
</dependency>
1. یک بیتمپ جدید در Java ایجاد کنید
برای ایجاد یک بیتمپ از صفر، مراحل زیر را دنبال کنید:
- یک
bitmap
جدید با عرض و ارتفاع مشخص ایجاد کنید. - یک شیء از کلاس
Graphics
را از تصویر Bitmap ایجاد کنید. - یک شیء از کلاس
Pen
را با ضخامت و رنگ خاصی inicial کنید. - یک بیضی روی bitmap با استفاده از قلم رسم کنید.
- نقشه بیتی را به عنوان یک فایل تصویر PNG ذخیره کنید.
کد نمونه زیر نشان میدهد که چگونه میتوان یک بیتمپ جدید در Java ایجاد کرد.
// یک بیتمپ جدید با عرض و ارتفاع ۸۰۰ پیکسل ایجاد کنید
Bitmap bitmap = new Bitmap(800, 800);
// از بیتمپ یک شی گرافیکی ایجاد کنید تا امکان رسم فراهم شود.
Graphics graphics = Graphics.fromImage(bitmap);
// یک قلم قرمز با ضخامت ۵ پیکسل را راهاندازی کنید.
Pen pen = new Pen(Color.getRed(), 5);
// بیضی را با استفاده از قلم در نقطه (0, 0) رسم کنید که عرض و ارتفاع آن 700 پیکسل باشد.
graphics.drawEllipse(pen, 0, 0, 700, 700);
// فایل نهایی bitmap را به عنوان یک فایل تصویر PNG ذخیره کنید
bitmap.save("output.png");

یک bitmap جدید در Java ایجاد کنید
2. ایجاد بیتمپ از جریان حافظه
برای ایجاد یک بیتماپ از جریان حافظه، مراحل زیر را دنبال کنید:
- یک جریان ورودی فایل برای فایل تصویر موجود باز کنید.
- از ورودی جریان یک بیتمپ ایجاد کنید.
- Bitmap را به یک فایل تصویر جدید ذخیره کنید.
نمونه کد زیر نشان میدهد که چگونه میتوان یک بیتمپ را با استفاده از استریم ورودی در Java ایجاد کرد.
// یک جریان ورودی فایل را برای خواندن تصویر موجود باز کنید.
InputStream stream = new FileInputStream("input.png");
// یک بیت مپ از جریان ورودی ایجاد کنید
Bitmap bitmap = new Bitmap(stream);
// برنامهریزی کنید که بیتمپ را به عنوان یک فایل PNG جدید ذخیره کنید.
bitmap.save("output.png", ImageFormat.getPng().d());
3. ذخیره تصویر Bitmap به فایل
شما میتوانید یک تصویر bitmap را به یک فایل در فرمتهای متعدد پشتیبانی شده ذخیره کنید. فقط مسیر فایل و فرمت تصویر مورد نظر را هنگام فراخوانی متد save()
مشخص کنید. این امکان را به شما میدهد که bitmap را به عنوان PNG، JPEG، BMP، GIF و بیشتر صادر کنید.
شما میتوانید بیتمپها را با تغییر فرمت تصویر به فرمتهای مختلف ذخیره کنید:
- یک تصویر Bitmap را به عنوان فایل BMP ذخیره کنید
bitmap.save("output.bmp", ImageFormat.getBmp().d());
- ذخیره یک بیت مپ به عنوان فایل PNG
bitmap.save("output.png", ImageFormat.getPng().d());
- یک Bitmap را به عنوان فایل JPG ذخیره کنید
bitmap.save("output.jpg", ImageFormat.getJpeg().d());
- یک تصویر Bitmap را به عنوان فایل GIF ذخیره کنید
bitmap.save("output.gif", ImageFormat.getGif().d());
4. اشکال را روی بیتمپ رسم کنید
شما میتوانید اشکال متنوعی را روی یک بیتمپ با استفاده از کلاس Graphics
ارائه شده توسط Aspose.Drawing for Java ترسیم کنید. این کلاس به شما این امکان را میدهد که گرافیکهای سفارشی ایجاد کنید و کنترل کاملی بر روی خطوط، منحنیها، مستطیلها، بیضیها و موارد دیگر داشته باشید.
نمونه کد زیر نشان میدهد که چگونه میتوان شکلها را روی یک تصویر در زبان Java رسم کرد.
// یک بیتمپ جدید با عرض و ارتفاع ۵۰۰ پیکسل ایجاد کنید.
Bitmap bitmap = new Bitmap(500, 500);
// یک شیء گرافیکی ایجاد کنید تا بر روی بیتمپ ترسیم کند
Graphics graphics = Graphics.fromImage(bitmap);
// قلم آبی را با ضخامت ۲ پیکسل تنظیم کنید
Pen pen = new Pen(Color.getBlue(), 2);
// یک مستطیل را از نقطه (10, 10) با عرض 100 و ارتفاع 50 بکشید.
graphics.drawRectangle(pen, 10, 10, 100, 50);
// یک بیضی بکشید که از نقطه (10، 130) شروع میشود و عرض 280 و ارتفاع 280 دارد.
graphics.drawEllipse(pen, 10, 130, 280, 280);
// تصویر نهایی بیتمپ را به عنوان یک فایل PNG ذخیره کنید
bitmap.save("draw_shapes.png");

روی بیت مپ در Java شکلها را رسم کنید
شما میتوانید اشکال مختلفی را بر روی یک بیتمپ با استفاده از روشهای ترسیم داخلی ارائه شده توسط کلاس Graphics
در Aspose.Drawing for Java رسم کنید. در زیر انواع اشکال پشتیبانی شده و روشهای مربوطه آورده شده است:
- Arc: از متد
drawArc()
برای رسم یک کمان استفاده کنید. - منحنی بزیه: از روش
drawBezier()
برای کشیدن یک منحنی بزیه واحد استفاده کنید. - چندین منحنی بزیه: از روش
drawBeziers()
برای ترسیم یک دنباله از منحنیهای بزیه استفاده کنید. - منحنی: از روش
drawCurve()
برای ایجاد یک شکل منحنی و صاف استفاده کنید. - منحنی بسته: از روش
drawClosedCurve()
برای رسم یک spline بسته استفاده کنید. - بیضی: از روش
drawEllipse()
برای رسم یک شکل بیضی استفاده کنید. - خط: از متد
drawLine()
برای کشیدن یک خط مستقیم استفاده کنید. - چندین خط: از متد
drawLines()
برای رسم یک سری خطوط متصل استفاده کنید. - مسیر: از متد
drawPath()
برای ترسیم اشکال پیچیده با استفاده ازGraphicsPath
استفاده کنید. - پای: از متد
drawPie()
برای کشیدن شکل برش پای استفاده کنید. - چندضلعی: از روش
drawPolygon()
برای ایجاد یک چندضلعی با متصل کردن نقاط استفاده کنید. - مستطیل: از روش
drawRectangle()
برای کشیدن یک مستطیل استفاده کنید. - چندین مستطیل: از روش
drawRectangles()
برای رسم چندین مستطیل به صورت همزمان استفاده کنید.
علاوه بر اشکال، شما همچنین میتوانید تصاویر را روی بیتمپ رسم کنید:
- آیکون: از روش
drawIcon()
برای رسم یک آیکون درون یک مستطیل مشخص استفاده کنید. - تصویر: از متد
drawImage()
برای رسم یک تصویر دیگر بر روی بیتمپ استفاده کنید.
این روشهای طراحی ایجاد گرافیکهای سفارشی، نمودارها یا تصاویر حاشیهنویسیشده بهصورت برنامهنویسی را آسان میکنند.
5. روی بیتمپ متن بکشید
برای کشیدن متن روی یک تصویر بیتمپ با دنبال کردن مراحل زیر:
- یک بیتمپ جدید با عرض و ارتفاع مشخص ایجاد کنید.
- از تصویر بیت مپ یک شی گرافیکی ایجاد کنید.
- bitmap را با رنگ پسزمینه خاکستری روشن پاک کنید.
- یک فونت با نام و اندازه مورد نظر تعریف کنید.
- یک براش جامد با رنگ سیاه ایجاد کنید.
- روی bitmap یک رشته متنی را با استفاده از قلم و برس مشخص شده بکشید.
- بیتمپ را به عنوان یک فایل تصویر PNG ذخیره کنید.
نمونه کد زیر نشان میدهد که چگونه میتوان متن را بر روی یک بیتمپ در Java ترسیم کرد.
// چگونه میتوان متن را بر روی یک بیتمپ در Java با استفاده از Aspose.Drawing رسم کرد
// یک Bitmap جدید با ابعاد ۵۰۰x۲۰۰ پیکسل بسازید
Bitmap bitmap = new Bitmap(500, 200);
// یک شی گرافیکی ایجاد کنید تا روی بیتمپ رسم کند.
Graphics graphics = Graphics.fromImage(bitmap);
// تمام تصویر را با یک پسزمینه خاکستری روشن پر کنید
graphics.clear(Color.getLightGray());
// یک فونت با نام \"Arial\" و اندازه ۲۴ تعریف کنید.
Font font = new Font("Arial", 24);
// برای طراحی متن، یک براش سیاه جامد ایجاد کنید.
Brush brush = new SolidBrush(Color.getBlack());
// رشته را بر روی bitmap در موقعیت (20، 80) بکشید
graphics.drawString("Welcome to Bitmap!", font, brush, 20, 80);
// نهایی تصویر را با متن به عنوان یک فایل PNG ذخیره کنید
bitmap.save("output.png");

جاوا نوشتن متن روی بیتمپ
6. پر کردن Bitmap با رنگ جامد
شما میتوانید بخشی از تصویر را با یک رنگ صاف پر کنید با دنبال کردن مراحل زیر:
- یک Bitmap جدید با عرض و ارتفاع دلخواه ایجاد کنید.
- از تصویر بیت مپ یک شی گرافیکی ایجاد کنید.
- یک قلممو خاکستری جامد برای پر کردن ایجاد کنید.
- کل ناحیهٔ بیتمپ را با رنگ خاکستری با استفاده از یک مستطیل پر شده پر کنید.
- نقشه بیتی را به عنوان یک فایل تصویر PNG ذخیره کنید.
کد نمونه زیر نشان میدهد که چگونه میتوان یک تصویر bitmap را با یک رنگ جامد با استفاده از یک مستطیل در Java پر کرد.
// یک بیت مپ جدید با ابعاد ۵۰۰ در ۵۰۰ پیکسل ایجاد کنید
Bitmap bitmap = new Bitmap(500, 500);
// یک شی گرافیکی ایجاد کنید تا بر روی تصویر بیت مپ بکشید.
Graphics graphics = Graphics.fromImage(bitmap);
// یک قلم موی خاکستری صاف ایجاد کنید تا برای پر کردن استفاده کنید.
SolidBrush brush = new SolidBrush(Color.getGray());
// تمام ناحیه بیتمپ را با رنگ خاکستری پر کنید
graphics.fillRectangle(brush, 0, 0, bitmap.getWidth(), bitmap.getHeight());
// فایل بیتمپ پر شده را به عنوان یک فایل تصویر PNG ذخیره کنید.
bitmap.save("output.png");

جاوا رسم مستطیل روی بیت مپ و پر کردن آن با رنگ
7. یک تصویر را به Bitmap بارگذاری کنید
شما همچنین میتوانید یک فایل تصویر را به یک شیء Bitmap
به صورت زیر بارگذاری کنید:
- یک بیت مپ خالی جدید با اندازه مورد نظر ایجاد کنید.
- یک تصویر موجود را به شیء بیتمپ بارگذاری کنید.
- یک شیء گرافیکی از نقشهبرداری خالی ایجاد کنید.
- تصویر بارگذاری شده را در گوشه بالا-سمت چپ روی بیتمپ خالی بکشید.
- یک بیتمپ نهایی را به عنوان یک فایل تصویر PNG ذخیره کنید.
کد نمونهی زیر نشان میدهد که چگونه میتوان یک تصویر را در یک bitmap با استفاده از Java بارگذاری کرد.
// یک بیتمپ جدید خالی با ابعاد ۵۰۰ در ۵۰۰ پیکسل ایجاد کنید.
Bitmap bitmap = new Bitmap(500, 500);
// یک تصویر موجود را از فایل به یک شیء بیتمپ بارگذاری کنید.
Bitmap loaded = new Bitmap("C:\\Files\\Drawings\\sample.jpg");
// یک شی گرافیکی ایجاد کنید تا روی تصویر بیتی خالی بکشید.
Graphics graphics = Graphics.fromImage(bitmap);
// تصویر بارگذاری شده را در موقعیت (0, 0) بر روی بیتمپ خالی ترسیم کنید.
graphics.drawImage(loaded, 0, 0);
// نقشه نهایی را به عنوان یک فایل PNG جدید ذخیره کنید
bitmap.save("output.png");

یک تصویر را در Bitmap با استفاده از Java بارگذاری کنید
8. تغییر اندازه یک تصویر موجود
برای تغییر اندازه یک تصویر bitmap:
- تصویر اصلی را به یک شیء بیتمپ بارگذاری کنید.
- یک تصویر bitmap جدید ایجاد کنید که عرض و ارتفاع آن نصف عرض و ارتفاع تصویر اصلی باشد.
- تصویر بیتی تغییر اندازه شده را به صورت یک فایل تصویر PNG ذخیره کنید.
نمونه کد زیر نشان میدهد که چگونه یک تصویر موجود را تغییر اندازه داده و آن را به عنوان یک بیتمپ جدید در Java ذخیره کنید.
// تصویر اصلی را از فایل به یک شیء بیتمپ بارگذاری کنید
Bitmap original = new Bitmap("C:\\Files\\Drawings\\sample.jpg");
// یک تصویر بیتمپ جدید با ۵۰٪ عرض و ارتفاع اصلی ایجاد کنید.
Bitmap resized = new Bitmap(original, new Size((int)(original.getWidth() * 0.5), (int)(original.getHeight() * 0.5)));
// تصویر بیتمپ تغییر اندازه داده شده را به عنوان یک فایل تصویر PNG جدید ذخیره کنید.
resized.save("output.png");

تصویر موجود را با استفاده از Java تغییر اندازه دهید
برای استفاده رایگان از Aspose.Drawing تلاش کنید
شما میتوانید یک لایسنس موقت رایگان برای کاوش در Aspose.Drawing بدون محدودیتها دریافت کنید.
ایجاد بیتمپ در جاوا: منابع رایگان
اگر میخواهید بیشتر در مورد کار با بیتمپها در Java کاوش کنید، پس منابع رایگان زیر را مرور کنید تا درک خود را عمیقتر کرده و بهرهوریتان را افزایش دهید:
نتیجهگیری
در این آموزش، شما یاد گرفتید که چگونه با استفاده از Aspose.Drawing for Java بیت مپها را ایجاد و با آنها کار کنید. ما نحوه تولید یک بیت مپ از ابتدا، بارگذاری و تغییر اندازه تصاویر موجود، رسم اشکال و متن، پر کردن نواحی با رنگهای جامد و ذخیره تصاویر در فرمتهای مختلف مانند PNG، JPG، BMP و GIF را پوشش دادیم. با این تواناییها، شما میتوانید به راحتی گرافیکهای سفارشی و پردازش تصویر را به برنامههای Java خود اضافه کنید.
Aspose.Drawing for Java کار با گرافیک ۲ بعدی به صورت برنامهنویسی را آسان میکند. به مستندات رسمی مراجعه کنید تا بیشتر کاوش کنید.