การเขียนโปรแกรมกราฟิกใน Java

วันนี้เราจะมาเรียนรู้พื้นฐานของการเขียนโปรแกรมกราฟิกใน Java เราจะเจาะลึกพื้นฐานของการวาดรูปทรงพื้นฐาน การปรับแต่งสี และการทำงานกับปากกา ไม่ว่าคุณจะสร้างกราฟิกโดยเป็นส่วนหนึ่งของโปรเจ็กต์ปัจจุบันหรือเป็นพื้นฐานของเกมหรือแอปของคุณเอง เรามาสำรวจวิธีสร้างภาพที่สวยงามอย่างง่ายดายด้วยการเขียนโปรแกรมกันดีกว่า

บทความนี้ครอบคลุมหัวข้อต่อไปนี้:

  1. ไลบรารีกราฟิก Java
  2. การเขียนโปรแกรมกราฟิกใน Java
  3. วาดเส้นโค้ง
  4. รูปหลายเหลี่ยมและสี่เหลี่ยมผืนผ้า
  5. วิธีการวาดเส้น
  6. วาดเส้นทาง
  7. วาดขอบเขตการเติม

ไลบรารีกราฟิก Java - ดาวน์โหลดฟรี

Aspose. Drawing เป็นหนึ่งในไลบรารีกราฟิกแบบเวกเตอร์ที่ใช้กันอย่างแพร่หลายสำหรับการเขียนโปรแกรม 2D เราจะใช้ Aspose. Drawing for Java API สำหรับการเขียนโปรแกรมกราฟิกใน Java โปรแกรมเมอร์สามารถใช้ประโยชน์จากไลบรารีข้ามแพลตฟอร์มนี้เพื่อวาดข้อความ รูปร่าง และรูปภาพในแอปพลิเคชัน 2D ของตน อนุญาตให้โหลด บันทึก และจัดการ รูปแบบไฟล์ที่รองรับ

โปรด ดาวน์โหลด 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 มีวิธีการต่างๆ ในการวาดรูปร่างเหล่านี้ เราสามารถสร้างกราฟิกเวกเตอร์ที่หลากหลายโดยทางโปรแกรมโดยทำตามขั้นตอนด้านล่าง:

  1. สร้างวัตถุของคลาสบิตแมป
  2. เตรียมใช้งานวัตถุของคลาสกราฟิกจากบิตแมป
  3. กำหนดวัตถุคลาส Pen หรือ SolidBrush ด้วยพารามิเตอร์ที่ต้องการ
  4. ใช้วิธีการเฉพาะรูปร่างของคลาสกราฟิกเพื่อวาดรูปร่างที่ต้องการ
  5. ในตอนท้ายให้บันทึกภาพ

ตอนนี้เรามาดูวิธีการดำเนินการตามขั้นตอนเหล่านี้ใน Java

วาดเส้นโค้งใน Java

เราสามารถวาดส่วนโค้ง วงกลม วงรี หรือเส้นโค้งปิดได้โดยใช้วิธีการต่อไปนี้

  • DrawArc() วิธีการวาดส่วนโค้ง
  • DrawEllipse() วิธีการวาดวงรี
  • DrawClosedCurve() วิธีการวาดเส้นโค้งปิด
  • DrawCurve() วิธีการวาดเส้นโค้ง

โปรดทำตามขั้นตอนด้านล่างเพื่อวาดรูปทรงโค้ง:

  1. สร้างอินสแตนซ์ของคลาสบิตแมป
  2. สร้างวัตถุคลาสกราฟิกโดยใช้เมธอด fromImage() จากวัตถุบิตแมปที่สร้างขึ้นใหม่
  3. กำหนดวัตถุคลาสปากกาด้วยสีและขนาดที่ระบุ
  4. หลังจากนั้น ให้เรียกเมธอด DrawClosedCurve() เพื่อวาดเส้นโค้งปิด
  5. หรือคุณสามารถทำซ้ำขั้นตอนข้างต้นเพื่อเพิ่มส่วนโค้งและวงรี
  6. สุดท้าย ให้บันทึกภาพที่ส่งออกโดยใช้เมธอด save()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการวาดรูปร่างโค้งใน Java

// ตัวอย่างโค้ดนี้สาธิตวิธีการวาดเส้นโค้ง ส่วนโค้ง และวงกลมแบบปิด
// สร้างบิตแมป
Bitmap bitmap = new Bitmap(1000, 800);

// เริ่มต้นกราฟิกจากบิตแมป
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

เส้นโค้งในการเขียนโปรแกรมกราฟิกโดยใช้ Java

วาดรูปหลายเหลี่ยมและสี่เหลี่ยมใน Java

เราสามารถวาดรูปหลายเหลี่ยมและสี่เหลี่ยมได้โดยทำตามขั้นตอนที่กล่าวไว้ข้างต้น อย่างไรก็ตาม เราจำเป็นต้องใช้วิธีการต่อไปนี้ในขั้นตอนที่ 4:

  • DrawPolygon() วิธีการวาดรูปหลายเหลี่ยม
  • DrawRectangle() วิธีการวาดรูปสี่เหลี่ยม

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการวาดรูปหลายเหลี่ยมและสี่เหลี่ยมใน Java

// ตัวอย่างโค้ดนี้สาธิตวิธีการวาดรูปหลายเหลี่ยมและสี่เหลี่ยมผืนผ้า
// สร้างบิตแมป
Bitmap bitmap = new Bitmap(1000, 800);

// เริ่มต้นกราฟิกจากบิตแมป
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

โหลดรูปภาพในบิตแมปโดยใช้ Java

วาดเส้นใน Java

ในทำนองเดียวกันเราสามารถวาดเส้นโดยทำตามขั้นตอนที่กล่าวไว้ข้างต้น อย่างไรก็ตาม เราจำเป็นต้องใช้เมธอด DrawLine() ในขั้นตอนที่ # 4 เพื่อวาดเส้น

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการวาดเส้นใน Java

// ตัวอย่างโค้ดนี้สาธิตวิธีการวาดเส้น
// สร้างบิตแมป
Bitmap bitmap = new Bitmap(1000, 800);

// เริ่มต้นกราฟิกจากบิตแมป
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

เส้นในการเขียนโปรแกรมกราฟิกโดยใช้ Java

วาดเส้นทางใน Java

เส้นทางในกราฟิกแบบเวกเตอร์แสดงถึงชุดของเส้นตรงเรียบๆ ที่กำหนดโดยจุดเริ่มต้นและจุดสิ้นสุด พร้อมด้วยจุดอื่นๆ เราสามารถวาดเส้นทางได้โดยทำตามขั้นตอนด้านล่าง:

  1. สร้างอินสแตนซ์ของคลาสบิตแมป
  2. เตรียมใช้งานออบเจ็กต์คลาสกราฟิกจากออบเจ็กต์บิตแมปที่สร้างขึ้นใหม่โดยใช้เมธอด fromImage()
  3. กำหนดวัตถุคลาสปากกาด้วยสีและขนาดที่ระบุ
  4. สร้างอินสแตนซ์ของคลาส GraphicsPath
  5. เพิ่มบรรทัดโดยใช้เมธอด addLine()
  6. หลังจากนั้นให้เรียกเมธอด DrawPath() ด้วยวัตถุ Pen และ GraphicsPath
  7. สุดท้าย ให้บันทึกภาพที่ส่งออกโดยใช้เมธอด save()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการวาดเส้นทางใน Java

// ตัวอย่างโค้ดนี้สาธิตวิธีการวาดเส้นทาง
// สร้างบิตแมป
Bitmap bitmap = new Bitmap(1000, 800);

// เริ่มต้นกราฟิกจากบิตแมป
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));

// เพิ่มวงรี
path.addEllipse(10, 250, 450, 300);

// วาดเส้นทาง
graphics.drawPath(pen, path);

// บันทึกบิตแมปเป็น PNG
bitmap.save("D:\\Files\\Shapes.png");
เส้นทางในการเขียนโปรแกรมกราฟิกโดยใช้ Java

เส้นทางในการเขียนโปรแกรมกราฟิกโดยใช้ Java

วาดขอบเขตการเติมใน Java

เราสามารถวาดขอบเขตการเติมได้โดยทำตามขั้นตอนด้านล่าง:

  1. สร้างอินสแตนซ์ของคลาสบิตแมป
  2. เตรียมใช้งานออบเจ็กต์คลาสกราฟิกจากออบเจ็กต์บิตแมปที่สร้างขึ้นใหม่โดยใช้เมธอด fromImage()
  3. สร้างอินสแตนซ์ของคลาส GraphicsPath
  4. เพิ่มรูปหลายเหลี่ยมโดยใช้วิธี addPolygon()
  5. สร้างอินสแตนซ์ของคลาสภูมิภาค
  6. เพิ่มวัตถุ GraphicsPath อื่น และเพิ่มสี่เหลี่ยมโดยใช้ addRectangle() วิธีการ
  7. เรียกวิธีการยกเว้น() เพื่อแยกเส้นทางภายในจากภูมิภาค
  8. จากนั้นกำหนดวัตถุคลาส SolidBrush ด้วยสีที่ระบุ
  9. หลังจากนั้น ให้เรียกเมธอด fillRegion() ด้วยอ็อบเจ็กต์ SolidBrush และ GraphicsPath
  10. สุดท้าย ให้บันทึกภาพที่ส่งออกโดยใช้เมธอด save()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการวาดขอบเขตที่เต็มไปด้วยใน Java

// ตัวอย่างโค้ดนี้สาธิตวิธีการวาดขอบเขต
// สร้างบิตแมป
Bitmap bitmap = new Bitmap(1000, 800);

// เริ่มต้นกราฟิกจากบิตแมป
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");
กรอกขอบเขตในการเขียนโปรแกรมกราฟิกโดยใช้ Java

กรอกขอบเขตในการเขียนโปรแกรมกราฟิกโดยใช้ Java

รับใบอนุญาตฟรี

คุณสามารถ รับใบอนุญาตชั่วคราวฟรี เพื่อลองใช้ Aspose. Drawing สำหรับ Java โดยไม่มีข้อจำกัดในการประเมิน

การเขียนโปรแกรมกราฟิกใน Java – ทรัพยากรฟรี

นอกจากการวาดเส้น เส้นทาง และสี่เหลี่ยมแล้ว คุณยังสามารถสำรวจคุณสมบัติอื่นๆ ของไลบรารีได้โดยใช้แหล่งข้อมูลด้านล่าง:

บทสรุป

ในบทความนี้ เราได้เรียนรู้พื้นฐานของการเขียนโปรแกรมกราฟิกใน Java โดยใช้ Aspose. Drawing สำหรับ Java เราได้เห็นวิธีการวาดรูปสี่เหลี่ยม วงรี เส้น และเส้นทางโดยทางโปรแกรมใน Java นอกจากนี้เรายังได้เรียนรู้วิธีสร้างและบันทึกรูปภาพบิตแมปเป็นรูปภาพ PNG ด้วยการทำตามขั้นตอนที่อธิบายไว้ในบทความนี้และตัวอย่างโค้ดที่ให้มา คุณสามารถสร้างกราฟิกแบบเวกเตอร์ที่น่าทึ่งในแอปพลิเคชัน Java ของคุณได้ ในกรณีที่มีความคลุมเครือ โปรดติดต่อเราที่ ฟอรัมการสนับสนุนฟรี

ดูสิ่งนี้ด้วย