1. Prodotti
  2.   Immagine
  3.   GO
  4.   imaginary
 
  

Go API per l'elaborazione delle immagini basata su HTTP

Open Source Go Library che supporta Ritaglio intelligente online, capovolgi o ruota le immagini, crea miniature di immagini, zoom delle immagini, aggiunta di filigrane a PNG, WEBP, TIFF, PDF, GIF e SVG, ecc.

L'immaginario è un'API Go di elaborazione di immagini basata su HTTP open source molto potente che offre agli sviluppatori di software il potere di eseguire operazioni di immagine avanzate tramite servizi HTTP privati o pubblici con una dipendenza minore. Supporta operazioni avanzate come l'autorizzazione del token API, la protezione della firma URL, la strategia di limitazione del traffico HTTP e il supporto CORS per i client Web. La libreria può leggere immagini da payload HTTP POST, percorsi locali del server o server HTTP remoti.

L'immaginario è una libreria potente e stabile costruita su libvips per un'elaborazione delle immagini veloce ed efficiente. La libreria include il supporto per formati immagine come JPEG, PNG, HEIF, WEBP, TIFF, PDF, GIF e SVG, nonché la conversione trasparente tra di essi. Ha fornito un supporto completo per Docker & Fly.io. Il bello di Fly è che può ridurre la latenza e fornire una migliore pratica servendo il traffico vicino alla posizione dell'utente.

La libreria immaginaria supporta completamente diverse importanti funzionalità relative alla creazione, conversione e manipolazione delle immagini come il ridimensionamento delle immagini, l'ingrandimento delle immagini, il ritaglio delle immagini, il ritaglio intelligente, la rotazione delle immagini, la rotazione automatica con ulteriori trasformazioni dell'immagine, il capovolgimento automatico basato sui metadati EXIF, l'immagine flop, ingrandisci le immagini, crea miniature di immagini, adatta le immagini, incorpora o estendi un'immagine, aggiungi un'immagine filigrana, aggiungi effetti di sfocatura a un'immagine e molti altri.

Previous Next

Iniziare con l'immaginario

Il modo più semplice e consigliato per installare immaginario è tramite GitHub.

Installa immaginario tramite GitHub

go get -u github.com/h2non/imaginary

Converti le immagini in altri formati tramite Go

La libreria immaginaria dell'API open source ha incluso il supporto per convertire facilmente le tue immagini in altri formati di file supportati. Puoi salvare le immagini in alcuni formati molto utili come i formati JPEG, PNG e WEBP. La libreria ha fornito supporto per la conversione con impostazioni di compressione e qualità aggiuntive. Devi solo fornire il nome dell'immagine, l'indirizzo e il formato di conversione corretti e la libreria lo convertirà facilmente per te con solo un paio di comandi Go.

Convertire Immagine via Biblioteca Immaginaria

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)
}

Ritaglio di immagini online tramite Go

La libreria immaginaria open source consente agli sviluppatori di software di ritagliare le proprie immagini online con solo un paio di righe di codice Go all'interno delle proprie applicazioni. Puoi ritagliare la tua immagine fornendo larghezza o altezza personalizzate. La libreria semplifica il tuo lavoro mantenendo il rapporto immagine. La libreria supporta anche il ritaglio dell'immagine utilizzando l'algoritmo di ritaglio intelligente integrato in libvips. Puoi anche definire il livello di compressione dell'immagine per le immagini PNG e capovolgere, ribaltare e ruotare le immagini con facilità.

Immagine che scorre via Go Library

{
    "operation": "crop",
    "params": {
      "width": 500,
      "height": 300
    }

Ridimensiona le immagini per adattarle

La libreria immaginaria gratuita ha incluso il supporto per ridimensionare le immagini per adattarle utilizzando i comandi Go all'interno delle loro app. Puoi facilmente ridimensionare un'immagine per adattarla alla larghezza e all'altezza, senza ritagliarla. La libreria semplifica il tuo lavoro mantenendo le proporzioni dell'immagine. La larghezza e l'altezza specificano un riquadro di delimitazione massimo per l'immagine.

Ridimensionare l'immagine tramite Free Go Library

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)
}

Ruota e ruota automaticamente le tue immagini

La libreria immaginaria gratuita ha fornito funzionalità per ruotare facilmente le tue immagini. Ha anche incluso una funzione molto utile per la rotazione automatica delle immagini all'interno delle applicazioni Go. Ruota automaticamente l'immagine senza ulteriori trasformazioni dell'immagine in base ai metadati di orientamento EXIF. Il metodo AutoRotate produce una nuova immagine con le stesse dimensioni e formato dell'immagine di input.

Auto-Rotate Immagine via Free Go Library

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{}
		}
	}
 Italiano