1. produkty
  2.   obraz
  3.   GO
  4.   Picfit
 
  

Open Source Image Resizing Server, který poskytuje rychlejší zpracování

Picfit je server pro změnu velikosti obrazu vyvinutý v Pure Go, který se stará o úložnou část zpracování obrazu bez ohledu na použitý úložný engine.

Zpracování obrazu, zejména změna velikosti, může být dlouhý proces, pokud je váš obraz uložen na různých strojích, protože aplikaci může chvíli trvat, než odstraní kódy avatarů a zabrání synchronním voláním k načtení vygenerovaného obrazu.

Picfit řeší tyto problémy tím, že funguje jako proxy mezi vaším úložištěm a systémem mezipaměti HTTP. I když je zdarma ke stažení, open source a poskytuje rychlejší zpracování, také se vyhýbá generování stejného obrázku dvakrát a zabírá příliš mnoho místa.

Obrázky můžete ukládat na Amazon S3, DigitalOcean S3, váš souborový systém a další.

Previous Next

Začínáme s Picfit

Nejjednodušší a doporučený způsob instalace Picfit je přes GitHub. Pro snadnou a hladkou instalaci použijte prosím následující příkaz.

Nainstalujte Picfit přes GitHub

 git clone https://github.com/thoas/picfit.git

Změňte velikost obrázků prostřednictvím knihovny Free GO

Knihovna picfit s otevřeným zdrojovým kódem umožňuje vývojářům softwaru programově měnit velikost obrázků uvnitř jejich vlastní aplikace pomocí příkazů Go. Jednou z hlavních funkcí Picfitu je schopnost měnit velikost obrázků podle výšky a šířky dle vašeho výběru. Jednoduše zadejte hodnoty w (požadovaná šířka obrázku) a h (požadovaná výška obrázku).  

Změňte velikost obrázku přes Free GO Library

 func (e *GoImageEngine) Resize(img *imagefile.ImageFile, width int, height int, options *Options) ([]byte, error) {
	if options.Format == imaging.GIF {
		content, err := e.TransformGIF(img, width, height, options, imaging.Resize)
		if err != nil {
			return nil, err
		}
		return content, nil
	}
	image, err := e.Source(img)
	if err != nil {
		return nil, err
	}
	return e.resize(image, width, height, options)
}

Zdarma Go Library to Genrate Thumbnails

Tuto funkci můžete použít ke generování nového obrázku s převzorkovaným filtrem buď zvětšeným nebo zmenšeným, a oříznout jej na zadanou výšku a šířku. Opět v této funkci musíte zadat hodnoty w a h.

Jak generovat miniatury GIF v aplikacích GO?

func (e *GoImageEngine) Thumbnail(img *imagefile.ImageFile, width int, height int, options *Options) ([]byte, error) {
	if options.Format == imaging.GIF {
		content, err := e.TransformGIF(img, width, height, options, imaging.Thumbnail)
		if err != nil {
			return nil, err
		}
		return content, nil
	}
	image, err := e.Source(img)
	if err != nil {
		return nil, err
	}
	return e.thumbnail(image, width, height, options)
}

Získejte informace o obrázku prostřednictvím rozhraní Go API

Kromě funkcí pro změnu velikosti má Picfit také některé důležité funkce pro načtení informací o souboru, jako je Get, a také příkazy pro ukládání nebo nahrávání. S funkcí Get získáte jako výsledek následující parametry:

  • Název souboru: název generovaného souboru
  • Cesta: toto bude cesta k vašemu vygenerovanému souboru na vašem úložišti
  • URL: pokud je přítomen base_url, obdržíte úplnou adresu URL vašeho vygenerovaného souboru
 Čeština