1. Məhsullar
  2.   Şəkil
  3.   GO
  4.   Picfit
 
  

Daha Sürətli Emal təmin edən Açıq Mənbəli Şəklin Ölçmə Ölçüsü Serveri

Picfit, Pure Go-da hazırlanmış təsvir ölçüsünü dəyişdirən serverdir və istifadə olunan saxlama mühərrikindən asılı olmayaraq təsvirin işlənməsinin saxlama hissəsinə diqqət yetirir.

Şəkliniz müxtəlif mühərriklərdə saxlanılırsa, təsvirin işlənməsi, xüsusən də ölçüsünün dəyişdirilməsi uzun proses ola bilər, çünki tətbiqin avatarların kodlarını silmək və yaradılan təsviri əldə etmək üçün sinxron zənglərdən qaçmaq üçün vaxt tələb oluna bilər.

Picfit saxlama mühərrikiniz və HTTP keş sisteminiz arasında proxy rolunu oynayaraq bu problemləri həll edir. Yükləmək pulsuz, açıq mənbə və daha sürətli emal təmin etsə də, eyni təsviri iki dəfə yaratmaqdan və çox yer tutmaqdan çəkinir.

Siz şəkilləri Amazon S3, DigitalOcean S3, fayl sisteminizdə və sairdə saxlaya bilərsiniz.

Previous Next

Picfit ilə işə başlamaq

Picfit quraşdırmağın ən asan və tövsiyə olunan yolu GitHub vasitəsilədir. Asan və hamar quraşdırma üçün aşağıdakı əmrdən istifadə edin.

GitHub vasitəsilə Picfit quraşdırın

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

Pulsuz GO Kitabxanası vasitəsilə şəkillərin ölçüsünü dəyişdirin

Açıq mənbəli picfit kitabxanası proqram tərtibatçılarına Go əmrlərindən istifadə edərək öz proqramlarında şəkillərin ölçüsünü proqramlı şəkildə dəyişməyə imkan verir. Picfit-in əsas funksiyalarından biri şəkillərin ölçüsünü seçdiyiniz hündürlük və enə görə dəyişmək imkanıdır. Sadəcə olaraq w (istənilən şəklin eni) və h (istənilən şəklin hündürlüyü) dəyərlərini təqdim edin.  

Pulsuz GO Kitabxanası vasitəsilə şəklin ölçüsünü dəyişdirin

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

Miniatürləri yaratmaq üçün Pulsuz Go Library

Siz bu funksiyadan yuxarı və ya aşağı miqyaslı yenidən nümunələnmiş filtrlə yeni şəkil yaratmaq və onu müəyyən edilmiş hündürlük və enə kəsmək üçün istifadə edə bilərsiniz. Yenə bu funksiyada siz w və h qiymətlərini təqdim etməlisiniz.

GO Tətbiqlərində GIF kiçik şəkillərini necə yaratmaq olar?

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

Go API vasitəsilə Şəkil məlumatını bərpa edin

Ölçü dəyişdirmə funksiyaları ilə yanaşı, Picfit də Alın, həmçinin saxlama və ya yükləmə əmrləri kimi fayl məlumatlarını əldə etmək üçün bəzi vacib funksiyalara malikdir. Get funksiyası ilə nəticədə aşağıdakı parametrləri əldə edəcəksiniz:

  • Fayl adı: yaradılan faylın adı
  • Yol: bu, yaddaş mühərrikinizdə yaradılan faylın yolu olacaq
  • URL: əgər base_url mövcuddursa, siz yaradılan faylın tam URL-sini alacaqsınız
 Azəri