Valitse HTTP-pohjainen kuvankäsittely API
Avoimen lähdekoodin Go Library, joka tukee älykästä verkkorajausta, kuvien kääntämistä tai kiertämistä, kuvien pikkukuvien luomista, kuvien zoomausta, vesileiman lisäämistä PNG-, WEBP-, TIFF-, PDF-, GIF- ja SVG-tiedostoihin jne.
Kuvitteellinen on erittäin tehokas avoimen lähdekoodin HTTP-pohjainen kuvankäsittely Go API, joka antaa ohjelmistokehittäjille vallan suorittaa edistyneitä kuvatoimintoja yksityisten tai julkisten HTTP-palvelujen kautta pienemmällä riippuvuudella. Se tukee edistyneitä toimintoja, kuten API-tunnuksen valtuutusta, URL-allekirjoituksen suojausta, HTTP-liikenteen kuristusstrategiaa ja CORS-tukea verkkoasiakkaille. Kirjasto voi lukea kuvia HTTP POST -hyötykuormista, palvelimen paikallisista poluista tai HTTP-etäpalvelimista.
Kuvitteellinen on tehokas ja vakaa kirjasto, joka on rakennettu libvipsin nopean ja tehokkaan kuvankäsittelyn päälle. Kirjastossa on tuki kuvaformaateille, kuten JPEG, PNG, HEIF, WEBP, TIFF, PDF, GIF ja SVG, sekä läpinäkyvä muunnos niiden välillä. Se on tarjonnut täydellisen tuen Docker & Fly.io:lle. Hienoa Flyssä on, että se voi vähentää viivettä ja tarjota parempia käytäntöjä palvelemalla liikennettä lähellä käyttäjän sijaintia.
Kuvitteellinen kirjasto tukee täysin useita tärkeitä kuvien luomiseen, muuntamiseen ja käsittelyyn liittyviä ominaisuuksia, kuten kuvan koon muuttaminen, kuvien suurentaminen, kuvien rajaus, älykäs rajaus, kuvien pyörittäminen, automaattinen kierto lisäkuvamuunnoksilla, automaattinen kääntäminen EXIF-metatietojen perusteella, kuva floppaa, zoomaa kuvia, luo kuvien pikkukuvia, sovita kuvia, upota tai laajenna kuvaa, lisää vesileimakuva, lisää sumennustehosteita kuvaan ja paljon muuta.
Aloitus kuvitteellisella
Helpoin ja suositeltava tapa asentaa imaginary on GitHubin kautta.
Asenna kuvitteellinen GitHubin kautta
go get -u github.com/h2non/imaginary
Muunna kuvat muihin muotoihin Go-sovelluksen avulla
Avoimen lähdekoodin API kuvitteellinen kirjasto sisältää tuen kuvien muuntamiseen muihin tuettuihin tiedostomuotoihin helposti. Voit tallentaa kuvia erittäin hyödyllisissä muodoissa, kuten JPEG-, PNG- ja WEBP-muodoissa. Kirjasto on tarjonnut muunnostukea lisälaatu- ja pakkausasetuksilla. Sinun tarvitsee vain antaa oikea kuvan nimi, osoite ja muunnosmuoto, ja kirjasto muuntaa sen helposti vain parilla Go-komennolla.
Muunna kuva Imaginary Libraryn kautta
func Convert(buf []byte, o ImageOptions) (Image, error) {
if o.Type == "" {
return Image{}, NewError("Missing required param: type", http.StatusBadRequest)
}
if ImageType(o.Type) == bimg.UNKNOWN {
return Image{}, NewError("Invalid image type: "+o.Type, http.StatusBadRequest)
}
opts := BimgOptions(o)
return Process(buf, opts)
}
Online-kuvien rajaus Go-palvelun kautta
Avoimen lähdekoodin kuvitteellisen kirjaston avulla ohjelmistokehittäjät voivat rajata kuviaan verkossa vain muutamalla rivillä Go-koodia omissa sovelluksissaan. Voit rajata kuvaa määrittämällä mukautetun leveyden tai korkeuden. Kirjasto tekee työstäsi helppoa säilyttämällä kuvasuhteen. Kirjasto tukee myös kuvan rajaamista libvipsin sisäänrakennetun älykkään rajausalgoritmin avulla. Voit myös määrittää kuvan pakkaustason PNG-kuville ja kääntää, floppata ja kiertää kuvia helposti.
Kuvan rajaus Go Libraryn kautta
{
"operation": "crop",
"params": {
"width": 500,
"height": 300
}
Muuta kuvien kokoa sopivaksi
Ilmaisessa kuvitteellisessa kirjastossa on tuki kuvien koon muuttamiseen sopimaan sovellusten sisällä olevien Go-komentojen avulla. Voit helposti muuttaa kuvan kokoa sopimaan leveyteen ja korkeuteen ilman rajausta. Kirjasto tekee työstäsi helppoa säilyttämällä kuvan kuvasuhteen. Leveys ja korkeus määrittävät kuvan enimmäisrajauksen.
Muuta kuvan kokoa Free Go -kirjaston kautta
func Resize(buf []byte, o ImageOptions) (Image, error) {
if o.Width == 0 && o.Height == 0 {
return Image{}, NewError("Missing required param: height or width", http.StatusBadRequest)
}
opts := BimgOptions(o)
opts.Embed = true
if o.IsDefinedField.NoCrop {
opts.Crop = !o.NoCrop
}
return Process(buf, opts)
}
Kierrä ja kierrä kuviasi automaattisesti
Ilmainen kuvitteellinen kirjasto on tarjonnut toimintoja kuvien kääntämiseen helposti. Se on myös sisältänyt erittäin hyödyllisen toiminnon kuvien automaattiseen kääntämiseen Go-sovelluksissa. Se kääntää kuvan automaattisesti ilman muita kuvan muunnoksia EXIF-suunnan metatietoihin perustuen. AutoRotate-menetelmä tuottaa uuden kuvan, jonka koko ja muoto on sama kuin syöttökuva.
Kierrä kuvaa automaattisesti Free Go -kirjaston kautta
func AutoRotate(buf []byte, o ImageOptions) (out Image, err error) {
defer func() {
if r := recover(); r != nil {
switch value := r.(type) {
case error:
err = value
case string:
err = errors.New(value)
default:
err = errors.New("libvips internal error")
}
out = Image{}
}
}