Nyílt forráskódú Swift API szerveroldali képfeldolgozáshoz
Swift Library, amely támogatja a képek betöltését, mentését és kezelését. Lehetővé teszi az egyéni szélességű és magasságú képek létrehozását, a kép átméretezését és a kép adott részének levágását
A SwiftGD egy kis méretű csodálatos könyvtár, amely támogatja a szerveroldali Swift képkezelést. Ez egy fantasztikus Swift-burkoló a libgd-hez, amely lehetővé teszi képek létrehozását és alakzatok rajzolását olyan helyeken, ahol a Core Graphics funkció nem érhető el. A könyvtár nagyon egyszerűen használható, és könnyen kezelheti a képbetöltést, mentést és a Swift kóddal történő manipulálást. A könyvtár egyik nagyszerű tulajdonsága, hogy kezeli a felhasználók GD erőforrásait, így a mögöttes memória felszabadul, amikor a képek megsemmisülnek.
A könyvtár számos, a képkezeléssel kapcsolatos fontos funkció támogatását tartalmazza, mint például a PNG-k és JPEG-k lemezről történő betöltése, a PNG-k és JPEG-fájlok lemezre mentése, a képkészítés egyedi szélességgel és magassággal, a képméretezés támogatása, a kép egy adott részének kivágása, alakzatok és vonalak rajzolása, színes iktatás koordinátákból, vízszintes vagy függőleges képfordítás, képsimítás támogatása, rajzolás vagy szövegkitöltés és még sok más. A könyvtár számos fontos effektust is tartalmaz, például pixelezést, elmosódást, színezést, telítéstelenítést stb. . A könyvtár nyílt forráskódú, és az MIT licenc alatt érhető el.
A SwiftGD használatának megkezdése
Klónozza a legújabb forrásokat a következő paranccsal.
Telepítse a SwiftGD-t a Githubon keresztül
Install SwiftGD via Github
$ git clone https://github.com/twostraws/SwiftGD.git
Új képek létrehozása a Swift segítségével
A nyílt forráskódú Swift-könyvtár, a SwiftGD lehetővé teszi a szoftverfejlesztők számára, hogy néhány sornyi Swift-kóddal új képeket hozzanak létre. A fejlesztők könnyedén létrehozhatnak egy képet a semmiből a kép szélességének és magasságának megadásával. Támogatja a képek adatpéldányokból történő létrehozását is. Képeket is generál, miközben a felhasználók átméreteznek vagy kivágnak, ami azt jelenti, hogy az eredeti kép érintetlen marad. Néhány alapvető effektust is könnyedén alkalmazhat a képeken.
Új képek létrehozása Swift könyvtáron keresztül
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)
}
Alakzatok rajzolása Swift segítségével
A SwiftGD könyvtár megkönnyíti a szoftverfejlesztők számára az alakzatok rajzolását és manipulálását Swift alkalmazásaikban. A könyvtár számos módszert kínál a képekbe való rajzoláshoz, például elárasztásos kitöltés alkalmazása egyik pontból a másikba, vonal rajzolása egyik pontból a másikba, pixel beállítása egy adott ponthoz, ellipszis kitöltése a közepén , üres ellipszis rajzolása a közepére, üres téglalap rajzolása egyik oldalról a másikra és így tovább.
Rajzok Rectangles keresztül 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)
}
Képmanipuláció a Swift alkalmazásokon belül
A nyílt forráskódú Swift könyvtár SwiftGD lehetővé teszi a számítógépes programozók számára, hogy a Swift alkalmazásokon belül könnyedén kezeljék a képeket. A könyvtár számos módszert kínál a képekre hatások alkalmazására, például Gauss elmosódási effektus alkalmazása, képárnyalat alkalmazása, a kép szürkeárnyalatos megjelenítése, a kép vízszintes és függőleges elfordítása, a kép egyszerűsítése, túl nagy pixelek, stb. több.
Gradient létrehozása Swift API-en keresztül
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)
}
Képek betöltése és olvasása
Az ingyenes Swift-könyvtár, a SwiftGD lehetővé teszi a szoftveralkalmazások számára, hogy képeket töltsenek be és olvassanak be saját Swift-alkalmazásaikban. A sikeres betöltéshez meg kell adnia a kép helyét a lemezen. A fájlkiterjesztést a könyvtár használja a megfelelő fájlformátum betöltésére, ezért fontos, hogy a fájlokat „jpg”, „jpeg” vagy „png” névvel nevezze el.
Képek olvasása Swift API
let location = URL(fileURLWithPath: "/path/to/image.png")
let image = Image(url: location)