ครอบตัดปรับขนาด PSD java

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

หมุนหรือครอบตัดไฟล์ PSD – การติดตั้ง Java API

Aspose.PSD for Java API รองรับการทำงานกับ PSD และไฟล์ Photoshop รูปแบบอื่นๆ คุณสามารถกำหนดค่า API ได้โดยดาวน์โหลดไฟล์ JAR จาก New Releases หรือใช้การกำหนดค่า Maven ต่อไปนี้ในโครงการของคุณ:

พื้นที่เก็บข้อมูล:

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

การพึ่งพา:

<dependency>
     <groupId>com.aspose</groupId>
     <artifactId>aspose-psd</artifactId>
     <version>21.7</version>
     <classifier>jdk16</classifier>
</dependency>

ครอบตัดรูปภาพ PSD ด้วย Shift Approach ใน Java

คุณสามารถครอบตัดรูปภาพ PSD ได้โดยเลื่อนเนื้อหาตามความต้องการของคุณ โปรดทำตามขั้นตอนด้านล่างเพื่อครอบตัดรูปภาพโดยเลื่อนเนื้อหา:

  1. โหลดไฟล์ PSD อินพุตลงในวัตถุคลาส RasterImage
  2. แคชรูปภาพโดยใช้เมธอด cacheData
  3. กำหนดค่าการเปลี่ยนแปลงและส่งต่อไปยังเมธอด crop
  4. บันทึกภาพที่ครอบตัดออก

รหัสต่อไปนี้แสดงวิธีการครอบตัดรูปภาพ PSD โดยเปลี่ยนเนื้อหาโดยทางโปรแกรมใน Java:

// โหลดรูปภาพที่มีอยู่ลงในอินสแตนซ์ของคลาส RasterImage
RasterImage rasterImage = (RasterImage)Image.load("Test.psd");
     
// ก่อนครอบตัด ควรแคชรูปภาพเพื่อประสิทธิภาพที่ดีขึ้น
if (!rasterImage.isCached())
{
    rasterImage.cacheData();
}

// กำหนดค่าการเลื่อนสำหรับทั้งสี่ด้าน
int leftShift = 10;
int rightShift = 10;
int topShift = 10;
int bottomShift = 10;

// ใช้การครอบตัดบนรูปภาพตามค่า shift
// วิธีการครอบตัดจะเลื่อนขอบภาพไปทางกึ่งกลางภาพและบันทึกผลลัพธ์ลงในดิสก์
rasterImage.crop(leftShift, rightShift, topShift, bottomShift);

// บันทึกเอาต์พุตเป็น JPEG, PSD หรือรูปแบบอื่น ๆ
rasterImage.save("output.jpg", new JpegOptions());
rasterImage.save("output.psd", new PsdOptions());

ครอบตัดรูปภาพ PSD ด้วยพิกัดสี่เหลี่ยมใน Java

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

  1. โหลดรูปภาพที่มีอยู่ลงในอินสแตนซ์ของคลาส RasterImage
  2. แคชรูปภาพเพื่อประสิทธิภาพที่ดีขึ้น
  3. สร้างอินสแตนซ์ของคลาส Rectangle ด้วยขนาดที่ต้องการ
  4. ครอบตัดรูปภาพโดยใช้วิธี crop และบันทึกไฟล์เอาต์พุต

ข้อมูลโค้ดด้านล่างแสดงวิธีการครอบตัดไฟล์ PSD ที่มีพิกัดสี่เหลี่ยมใน Java:

String sourceFile = "sample.psd";
String destName = "Cropping-PSD_out.jpg";

// โหลดรูปภาพที่มีอยู่ลงในอินสแตนซ์ของคลาส RasterImage
RasterImage rasterImage = (RasterImage)Image.load(sourceFile);
    
// แคชรูปภาพเพื่อประสิทธิภาพที่ดีขึ้น
if (!rasterImage.isCached())
{
   rasterImage.cacheData();
}

// สร้างตัวอย่างคลาสสี่เหลี่ยมผืนผ้าที่มีขนาดที่ต้องการ 
Rectangle rectangle = new Rectangle(20, 20, 20, 20);

// ดำเนินการครอบตัดบนวัตถุของคลาสสี่เหลี่ยมผืนผ้า
rasterImage.crop(rectangle);

// บันทึกผลลัพธ์ลงในดิสก์
rasterImage.save(destName, new JpegOptions());

หมุนภาพ PSD ที่มุมใดก็ได้ใน Java

ในบางสถานการณ์ คุณอาจต้องหมุนภาพ PSD ในมุมที่กำหนด โปรดทำตามขั้นตอนด้านล่างเพื่อหมุนภาพ PSD:

  1. โหลดไฟล์รูปภาพ PSD ต้นฉบับด้วยคลาส RasterImage
  2. ก่อนการหมุน ควรแคชรูปภาพเพื่อประสิทธิภาพที่ดีขึ้น
  3. ระบุมุมสำหรับการหมุนในเมธอด rotate
  4. บันทึกไฟล์ผลลัพธ์

ตัวอย่างโค้ดด้านล่างอธิบายวิธีการหมุนรูปภาพ PSD ใน Java:

String sourceFile = "sample.psd";
String destName = "Rotate-PSD_out.jpg";
       
// โหลดไฟล์ภาพ PSD อินพุต
RasterImage image = (RasterImage)Image.load(sourceFile);

// ก่อนการหมุน ควรแคชรูปภาพเพื่อประสิทธิภาพที่ดีขึ้น
if (!image.isCached())
{
    image.cacheData();
}

// หมุนภาพ PSD ในมุม 20 องศาโดยรักษาขนาดภาพตามสัดส่วนด้วยสีพื้นหลังสีแดง
image.rotate(20f, true, Color.getRed());

// บันทึกผลลัพธ์เป็นไฟล์ใหม่
image.save(destName, new JpegOptions());

รับใบอนุญาตการประเมินฟรี

คุณสามารถขอ ใบอนุญาตชั่วคราวฟรี เพื่อประเมิน API ได้โดยไม่มีข้อจำกัดใดๆ

บทสรุป

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

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