גזירת תמונה היא תהליך של בחירת חלק מתמונה והצגת אזור ספציפי זה בלבד. זה יכול להיות שימושי במגוון תרחישים, כמו יצירת תמונות ממוזערות מושכות עין, הפניית תשומת לב לקטעים ספציפיים של תמונה וכו’. במאמר זה נלמד כיצד ליישם גזירת תמונה ב-Java. אנו גם נחקור טכניקות שלב אחר שלב לחילוץ אובייקטים ולשפר את העיצובים שלך.
מאמר זה עוסק בנושאים הבאים:
Java Image Clipping API - הורדה חינם
עבור גזירת תמונות ב-Java, אנו נמנף את ה-API החזק Aspose.Drawing for Java, פתרון חדשני למניפולציה יעילה ומדויקת של תמונות. זוהי ספריית גרפיקה דו-ממדית רב-תכליתית לציור פרוגרמטי בג’אווה. זה מאפשר למפתחים לטעון, לשמור ולערוך מגוון רחב של פורמטים נתמכים של קבצים, מה שהופך אותו לבחירה אידיאלית לצרכי חיתוך תמונות.
אנא הורד את ה-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.4</version>
</dependency>
</dependencies>
גזירת תמונה ב-Java
אנו יכולים ליישם גזירת תמונה באופן תוכנתי ב-Java על ידי ביצוע השלבים הבאים:
- צור מופע של מחלקת Bitmap.
- אתחול אובייקט המחלקה Graphics באמצעות שיטת fromImage().
- הגדר את נתיב הקליפ באמצעות המחלקה GraphicsPath.
- לאחר מכן, הגדר את נתיב הקליפ באמצעות שיטת setClip().
- לבסוף, שמור את תמונת הפלט באמצעות שיטת save().
דוגמת הקוד הבאה מראה כיצד ליישם גזירת תמונה ב-Java.
// צור מפת סיביות חדשה
Bitmap bitmap = new Bitmap(1000, 800);
// אתחול הגרפיקה
Graphics graphics = Graphics.fromImage(bitmap);
graphics.setTextRenderingHint(TextRenderingHint.AntiAliasGridFit);
// הגדר קליפ
RectangleF rectangle = new RectangleF(200, 200, 600, 400);
GraphicsPath clipPath = new GraphicsPath();
clipPath.addEllipse(rectangle);
graphics.setClip(clipPath);
// ציין מחרוזת
StringFormat stringFormat = new StringFormat();
stringFormat.setAlignment(StringAlignment.Center);
stringFormat.setLineAlignment(StringAlignment.Center);
Brush brush = new SolidBrush(Color.getBlue());
Font arial = new Font("Arial", 20, FontStyle.Regular);
String text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas sapien tellus, mattis et condimentum eget, commodo ut ipsum. Maecenas elit sapien, tempus sit amet mauris sit amet, hendrerit laoreet nisi. Nulla facilisi. Sed commodo, mauris eget porta commodo, nunc tellus volutpat mi, eu auctor diam libero vel neque. Vestibulum nec mattis dui, nec molestie nisl. Etiam in magna felis. Praesent non nulla tortor. Integer nec convallis purus. Fusce vitae mollis mauris. Cras efficitur dui at mi viverra scelerisque. Morbi quis magna elit. Nulla facilisis id ante sit amet fringilla. Sed iaculis consectetur lectus a interdum. Etiam ut sollicitudin lectus, et congue lectus.";
// צייר חוט
graphics.drawString(text, arial, brush, rectangle, stringFormat);
// להציל
bitmap.save("Clipping.png");
חלץ אובייקט מתמונה ב-Java
אנו יכולים לחלץ חלק מסוים של תמונה על ידי ביצוע השלבים שהוזכרו קודם לכן. עם זאת, אנחנו רק צריכים לטעון תמונה קיימת ולצייר אותה בשיטת drawImage().
דגימת הקוד הבאה מראה כיצד לחלץ אובייקט מתמונה ב-Java.
// דוגמה זו מדגימה כיצד לחלץ אובייקט מתמונה
// צור מפת סיביות חדשה
Bitmap bitmap = new Bitmap(1000, 800);
// אתחול הגרפיקה
Graphics graphics = Graphics.fromImage(bitmap);
graphics.setTextRenderingHint(TextRenderingHint.AntiAliasGridFit);
// הגדר קליפ
RectangleF rectangle = new RectangleF(0, 0, 225, 225);
GraphicsPath clipPath = new GraphicsPath();
clipPath.addEllipse(rectangle);
graphics.setClip(clipPath);
// טען את התמונה
Bitmap image = new Bitmap("aspose-logo.png");
// צייר תמונה במיקום שצוין
graphics.drawImage(image,0,0);
// להציל
bitmap.save("extract-object.png");
קבל רישיון חינם
אתה יכול לקבל רישיון זמני בחינם כדי לנסות את Aspose.Drawing עבור Java ללא מגבלות הערכה.
Aspose.Drawing - משאבים חינם
מלבד גזירת תמונות ב-Java, אתה יכול ללמוד עוד על תכונות שונות של הספרייה באמצעות המשאבים שלהלן:
סיכום
במאמר זה, חקרנו את תהליך הטמעת גזירת תמונה ב-Java. על ידי ביצוע השלבים המתוארים במאמר זה, כעת תוכל לחלץ אובייקטים מתמונות בדיוק ובקלות. בכל מקרה של אי בהירות, אנא אל תהסס לפנות אלינו בפורום התמיכה החינמית שלנו.