1. Produkty
  2.   Obraz
  3.   Swift
  4.   SwiftGD
 
  

Open Source Swift API do przetwarzania obrazu po stronie serwera

Swift Library z dołączoną obsługą ładowania, zapisywania i manipulowania obrazami. Umożliwia tworzenie obrazu o niestandardowej szerokości i wysokości, zmianę rozmiaru obrazu i przycinanie określonej części obrazu

SwiftGD to niewielka, wspaniała biblioteka, która zawiera obsługę manipulacji obrazami Swift po stronie serwera. Jest to fantastyczny wrapper Swift dla libgd, umożliwiający tworzenie obrazów i rysowanie kształtów w miejscach, w których funkcjonalność Core Graphics nie jest dostępna. Biblioteka jest bardzo prosta w użyciu i może z łatwością obsługiwać ładowanie obrazu, zapisywanie i manipulowanie za pomocą kodu Swift. Jedną wielką cechą biblioteki jest to, że zarządza ona zasobami GD dla użytkowników, więc podstawowa pamięć jest zwalniana, gdy obrazy są niszczone.

Biblioteka zawiera obsługę kilku ważnych funkcji związanych z obsługą obrazów, takich jak ładowanie plików PNG i JPEG z dysku, zapisywanie obrazów PNG i JPEG na dysku, tworzenie obrazu z niestandardową szerokością i wysokością, obsługa zmiany rozmiaru obrazu, przycinanie określonej części obrazu, rysowanie kształtów i linii, wypełnianie kolorami ze współrzędnych, odwracanie obrazu w poziomie lub w pionie, obsługa głaskania obrazu, wypełnianie rysunku lub tekstu i wiele innych. Biblioteka zawiera również kilka ważnych efektów, takich jak pikselowanie, rozmycie, kolorowanie, usuwanie nasycenia i tak dalej. . Biblioteka jest open source i jest dostępna na licencji MIT.

Previous Next

Pierwsze kroki z SwiftGD

Sklonuj najnowsze źródła za pomocą następującego polecenia.

Zainstaluj SwiftGD przez Github 

Install SwiftGD via Github 

 $ git clone https://github.com/twostraws/SwiftGD.git

Tworzenie nowych obrazów za pomocą Swift

Biblioteka Swift o otwartym kodzie źródłowym SwiftGD umożliwia programistom tworzenie nowych obrazów za pomocą zaledwie kilku wierszy kodu Swift. Deweloperzy mogą łatwo stworzyć obraz od podstaw, podając szerokość i wysokość obrazu. Obsługuje również tworzenie obrazów z instancji danych. Generuje również obrazy, podczas gdy użytkownicy wykonują operację zmiany rozmiaru lub przycinania, co oznacza, że oryginalny obraz pozostanie nietknięty. Możesz także z łatwością zastosować podstawowe efekty do obrazów.

Tworzenie nowych obrazów poprzez bibliotekę 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)
}

Rysowanie kształtów za pomocą Swift

Biblioteka SwiftGD ułatwia programistom rysowanie i manipulowanie kształtami w ich aplikacjach Swift. Biblioteka udostępnia kilka metod, których można użyć do rysowania na obrazach, takich jak stosowanie wypełnienia rozpływowego z jednego punktu do drugiego, rysowanie linii z jednego punktu do drugiego, ustawianie piksela w określonym punkcie, wypełnianie elipsy w środku , rysując pustą elipsę w środku, pusty prostokąt rysujący z jednej strony na drugą i tak dalej.

Rysuje prostokąty przez 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)
}

Manipulacja obrazem w Swift Apps

Biblioteka Swift o otwartym kodzie źródłowym SwiftGD pozwala programistom komputerowym z łatwością manipulować obrazami w aplikacjach Swift. Biblioteka udostępnia kilka metod, których można użyć do zastosowania efektów do obrazów, takich jak zastosowanie efektu rozmycia Gaussa, zastosowanie odcienia obrazu, renderowanie obrazu w skali szarości, przerzucanie obrazu w poziomie i w pionie, uproszczenie obrazu zbyt duże piksele i wiele jeszcze.

Tworzenie Gradient przez 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)
}

Ładowanie i czytanie obrazów

Bezpłatna biblioteka Swift SwiftGD umożliwia aplikacjom ładowanie i odczytywanie obrazów we własnych aplikacjach Swift. Aby pomyślnie wczytać, musisz podać lokalizację obrazu na dysku. Rozszerzenie pliku jest używane przez bibliotekę do ładowania prawidłowego formatu pliku, dlatego ważne jest, aby nazwać pliki „jpg”, „jpeg” lub „png”.

Czytanie obrazów poprzez Swift API

 let location = URL(fileURLWithPath: "/path/to/image.png")
let image = Image(url: location)
 Polski