קוד פתוח Swift API לעיבוד תמונות בצד השרת
ספריית Swift לתמיכה כלולה בטעינה, שמירה וטיפול בתמונות. זה מאפשר יצירת תמונה עם רוחב וגובה מותאמים אישית, שינוי גודל תמונה וחיתוך חלק מסוים של התמונה
SwiftGD היא ספרייה נפלאה בגודל קטן שכללה תמיכה במניפולציה של תמונות Swift בצד השרת. זוהי עטיפה פנטסטית של Swift עבור libgd, המאפשרת יצירת תמונות וצורות ציור במקומות שבהם פונקציונליות Core Graphics אינה זמינה. הספרייה פשוטה מאוד לשימוש ויכולה להתמודד בקלות עם טעינת תמונות, שמירה ותפעול באמצעות קוד Swift. תכונה נהדרת אחת של הספרייה היא שהיא מנהלת משאבי GD עבור משתמשים, כך שהזיכרון הבסיסי משתחרר כאשר התמונות מושמדות.
הספרייה כללה תמיכה במספר תכונות חשובות הקשורות לטיפול בתמונה כגון טעינת PNG ו-JPEG מהדיסק, תמונות PNG ו-JPEG נשמרות לדיסק, יצירת תמונה עם רוחב וגובה מותאמים אישית, תמיכה בשינוי גודל תמונה, חיתוך חלק מסוים של התמונה, ציור צורות וקווים, תיוק צבע מקואורדינטות, היפוך תמונה אופקית או אנכית, תמיכה בליטוף תמונה, ציור או מילוי טקסט ועוד רבים. הספרייה כללה גם כמה אפקטים חשובים כמו pixelate, טשטוש, colorize, de-saturate, וכן הלאה. . הספרייה היא קוד פתוח וזמינה תחת רישיון MIT.
תחילת העבודה עם SwiftGD
שכפל את המקורות העדכניים ביותר באמצעות הפקודה הבאה.
התקן את SwiftGD דרך Github
Install SwiftGD via Github
$ git clone https://github.com/twostraws/SwiftGD.git
יצירת תמונות חדשות באמצעות Swift
ספריית הקוד הפתוח Swift SwiftGD מאפשרת למפתחי תוכנה ליצור תמונות חדשות רק עם כמה שורות של קוד Swift. מפתחים יכולים ליצור תמונה מאפס בקלות על ידי מתן רוחב וגובה התמונה. זה גם תומך ביצירת תמונות ממופעי נתונים. זה גם יוצר תמונות בזמן שמשתמשים מבצעים פעולת שינוי גודל או חיתוך, מה שאומר שהתמונה המקורית לא תיפגע. אתה יכול גם להחיל כמה אפקטים בסיסיים על תמונות בקלות.
יצירת תמונות חדשות באמצעות ספריית סוויפט
import Foundation
import SwiftGD
// figure out where to save our file
let currentDirectory = URL(fileURLWithPath: FileManager().currentDirectoryPath)
let destination = currentDirectory.appendingPathComponent("output-1.png")
// attempt to create a new 500x500 image
if let image = Image(width: 500, height: 500) {
// flood from from X:250 Y:250 using red
image.fill(from: Point(x: 250, y: 250), color: Color.red)
// draw a filled blue ellipse in the center
image.fillEllipse(center: Point(x: 250, y: 250), size: Size(width: 150, height: 150), color: Color.blue)
// draw a filled green rectangle also in the center
image.fillRectangle(topLeft: Point(x: 200, y: 200), bottomRight: Point(x: 300, y: 300), color: Color.green)
// remove all the colors from the image
image.desaturate()
// now apply a dark red tint
image.colorize(using: Color(red: 0.3, green: 0, blue: 0, alpha: 1))
// save the final image to disk
image.write(to: destination)
}
ציור צורות באמצעות Swift
ספריית SwiftGD מקלה על מפתחי תוכנה לצייר ולתפעל צורות בתוך יישומי Swift שלהם. הספרייה סיפקה מספר שיטות שניתן להשתמש בהן כדי לצייר לתוך התמונות שלך, כגון החלת מילוי מבול מנקודה אחת לאחרת, ציור קו מנקודה אחת לאחרת, הגדרת פיקסל של נקודה ספציפית, מילוי אליפסה במרכז , ציור אליפסה ריקה במרכז, ציור מלבן ריק מצד אחד לצד השני וכן הלאה.
רישומים באמצעות סוויפט API
import Foundation
import SwiftGD
let currentDirectory = URL(fileURLWithPath: FileManager().currentDirectoryPath)
let destination = currentDirectory.appendingPathComponent("output-2.png")
if let image = Image(width: 500, height: 500) {
var counter = 0
for i in stride(from: 0, to: 250, by: 10) {
let drawColor: Color
if counter % 2 == 0 {
drawColor = .blue
} else {
drawColor = .white
}
image.fillRectangle(topLeft: Point(x: i, y: i), bottomRight: Point(x: 500 - i, y: 500 - i), color: drawColor)
counter += 1
}
image.blur(radius: 10)
image.write(to: destination)
}
עיבוד תמונה בתוך אפליקציות Swift
ספריית הקוד הפתוח Swift SwiftGD מאפשרת למתכנתי מחשבים לתפעל תמונות בקלות בתוך אפליקציות Swift. הספרייה סיפקה מספר שיטות שניתן להשתמש בהן כדי להחיל אפקטים על תמונות כמו החלת אפקט טשטוש גאוסי, החלת גוון תמונה, עיבוד גווני אפור של התמונה, היפוך התמונה שלך אופקית כמו גם אנכית, פישוט התמונה שלך פיקסלים גדולים מדי, ועוד הרבה יותר.
יצירה באמצעות סוויפט API
import Foundation
import SwiftGD
let currentDirectory = URL(fileURLWithPath: FileManager().currentDirectoryPath)
let destination = currentDirectory.appendingPathComponent("output-3.png")
let size = 500
if let image = Image(width: size, height: size) {
for x in 0 ... size {
for y in 0 ... size {
image.set(pixel: Point(x: x, y: y), to: Color(red: Double(x) / Double(size), green: Double(y) / Double(size), blue: 0, alpha: 1))
}
}
image.write(to: destination)
}
תמונות טעינה וקריאה
ספריית Swift החינמית SwiftGD מעניקה לאפליקציות תוכנה את היכולת לטעון ולקרוא תמונות בתוך אפליקציות Swift משלהן. עליך לספק את מיקום התמונה בדיסק לטעינה מוצלחת. סיומת הקובץ משמשת את הספרייה לטעינת פורמט הקובץ הנכון, לכן חשוב שתקרא לקבצים שלך שם "jpg", "jpeg" או "png".
תמונות דרך Swift API
let location = URL(fileURLWithPath: "/path/to/image.png")
let image = Image(url: location)