1. Produkty
  2.   Obraz
  3.   GO
  4.   imaginary
 
  

Przejdź API do przetwarzania obrazów opartego na protokole HTTP

Biblioteka Open Source Go, która obsługuje inteligentne przycinanie online, odwracanie lub obracanie obrazów, tworzenie miniatur obrazów, powiększanie obrazów, dodawanie znaku wodnego do plików PNG, WEBP, TIFF, PDF, GIF i SVG itp.

Wyimaginowany jest bardzo potężnym interfejsem API Go do przetwarzania obrazów opartym na protokole HTTP, który daje programistom możliwość wykonywania zaawansowanych operacji na obrazach za pośrednictwem prywatnych lub publicznych usług HTTP z mniejszą zależnością. Obsługuje zaawansowane operacje, takie jak autoryzacja tokenów API, ochrona podpisów URL, strategia ograniczania ruchu HTTP i obsługa CORS dla klientów internetowych. Biblioteka może odczytywać obrazy z ładunków HTTP POST, ścieżek lokalnych serwera lub zdalnych serwerów HTTP.

Wyimaginowany to potężna i stabilna biblioteka zbudowana na bazie libvips szybkiego i wydajnego przetwarzania obrazu. Biblioteka zawiera obsługę formatów obrazów, takich jak JPEG, PNG, HEIF, WEBP, TIFF, PDF, GIF i SVG, a także przezroczystą konwersję między nimi. Zapewnia pełne wsparcie dla Docker & Fly.io. Wspaniałą rzeczą w Fly jest to, że może zmniejszyć opóźnienia i zapewnić lepszą praktykę, obsługując ruch w pobliżu lokalizacji użytkownika.

Wyimaginowana biblioteka w pełni obsługuje kilka ważnych funkcji związanych z tworzeniem, konwersją i manipulacją obrazami, takimi jak zmiana rozmiaru obrazu, powiększanie obrazów, przycinanie obrazu, inteligentne przycinanie, obracanie obrazów, automatyczne obracanie z dalszymi transformacjami obrazu, automatyczne przerzucanie na podstawie metadanych EXIF, obraz flop, powiększanie obrazów, tworzenie miniatur obrazów, dopasowywanie obrazów, osadzanie lub rozszerzanie obrazu, dodawanie obrazu znaku wodnego, dodawanie efektów rozmycia do obrazu i wiele innych.

Previous Next

Pierwsze kroki z wyimaginowanym

Najłatwiejszym i zalecanym sposobem instalacji wyimaginowanych jest GitHub.

Zainstaluj wyimaginowany przez GitHub

go get -u github.com/h2non/imaginary

Konwertuj obrazy do innych formatów za pomocą Go

Wyimaginowana biblioteka API o otwartym kodzie źródłowym zawiera obsługę łatwego konwertowania obrazów na inne obsługiwane formaty plików. Możesz zapisywać obrazy w bardzo przydatnych formatach, takich jak JPEG, PNG i WEBP. Biblioteka zapewniła obsługę konwersji z dodatkowymi ustawieniami jakości i kompresji. Wystarczy podać poprawną nazwę obrazu, adres i format konwersji, a biblioteka z łatwością skonwertuje go za pomocą kilku poleceń Go.

Konwertuj obraz za pośrednictwem biblioteki wyobraźni

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

Przycinanie obrazu online przez Go

Wyimaginowana biblioteka typu open source umożliwia twórcom oprogramowania przycinanie obrazów online za pomocą zaledwie kilku wierszy kodu Go w ich własnych aplikacjach. Możesz przyciąć obraz, podając niestandardową szerokość lub wysokość. Biblioteka ułatwia pracę dzięki zachowaniu proporcji obrazu. Biblioteka obsługuje również przycinanie obrazu za pomocą wbudowanego w libvips algorytmu inteligentnego przycinania. Możesz także zdefiniować poziom kompresji obrazów PNG oraz z łatwością odwracać, przerzucać i obracać obrazy.

Obrabianie obrazów przez Bibliotekę Go

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

Zmień rozmiar obrazów, aby dopasować

Bezpłatna wyobrażona biblioteka zawiera obsługę zmiany rozmiaru obrazów w celu dopasowania za pomocą poleceń Go w ich aplikacjach. Możesz łatwo zmienić rozmiar obrazu, aby pasował do szerokości i wysokości, bez przycinania. Biblioteka ułatwia pracę dzięki zachowaniu proporcji obrazu. Szerokość i wysokość określają maksymalną ramkę ograniczającą obraz.

Resize Image via 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)
}

Obracaj i automatycznie obracaj swoje obrazy

Bezpłatna wyobrażona biblioteka zapewnia funkcjonalność umożliwiającą łatwe obracanie obrazów. Zawiera również bardzo przydatną funkcję automatycznego obracania obrazów w aplikacjach Go. Automatycznie obraca obraz bez dalszych przekształceń obrazu w oparciu o metadane orientacji EXIF. Metoda AutoRotate tworzy nowy obraz o takim samym rozmiarze i formacie jak obraz wejściowy.

Auto-Rotate Obraz przez 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{}
		}
	}
 Polski