1. Produkter
  2.   Bilde
  3.   GO
  4.   Picfit
 
  

Open Source Image Resizing Server som gir raskere behandling

Picfit er en server for endring av bilder utviklet i Pure Go som tar seg av lagringsdelen av bildebehandlingen uansett hvilken lagringsmotor som brukes.

Bildebehandling, spesielt endring av størrelse kan være en lang prosess hvis bildet ditt er lagret på forskjellige motorer, da det kan ta tid før applikasjonen fjerner koder for avatarer og unngår synkrone anrop for å hente det genererte bildet.

Picfit løser disse problemene ved å fungere som en proxy mellom lagringsmotoren og HTTP-buffersystemet. Selv om det er gratis å laste ned, åpen kildekode og gir raskere behandling, unngår det også å generere det samme bildet to ganger og ta for mye plass.

Du kan lagre bilder på Amazon S3, DigitalOcean S3, filsystemet ditt og mer.

Previous Next

Komme i gang med Picfit

Den enkleste og anbefalte måten å installere Picfit på er via GitHub. Bruk følgende kommando for en enkel og smidig installasjon.

Installer Picfit via GitHub

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

Endre størrelse på bilder via gratis GO-bibliotek

Picfit-biblioteket med åpen kildekode gjør det mulig for programvareutviklere å endre størrelsen på bilder i sin egen applikasjon ved hjelp av Go-kommandoer. En av hovedfunksjonene til Picfit er muligheten til å endre størrelse på bilder i henhold til høyden og bredden du ønsker. Bare oppgi w (ønsket bildes bredde) og h (ønsket bildes høyde) verdier.  

Endre størrelse på bilde via gratis GO-bibliotek

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

Gratis Gå til biblioteket for å generere miniatyrbilder

Du kan bruke denne funksjonen til å generere et nytt bilde med et resamplet filter enten skalert opp eller ned, og beskjære det til en spesifisert høyde og bredde. Igjen i denne funksjonen må du oppgi w- og h-verdiene.

Hvordan generere GIF-miniatyrbilder i GO-apper?

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

Hent bildeinformasjon via Go API

Bortsett fra å endre størrelsesfunksjoner, har Picfit også noen viktige funksjoner for å hente filinformasjon som Get, samt lagring eller opplasting av kommandoer. Med Get-funksjonen får du følgende parametere som et resultat:

  • Filnavn: navnet på den genererte filen
  • Bane: dette vil være banen til den genererte filen på lagringsmotoren
  • URL: hvis base_url er til stede, vil du motta en fullstendig URL for den genererte filen
 Norsk