Mergi  

 
 

GO API для расширенного управления изображениями

Библиотека Go с открытым исходным кодом для программного объединения, обрезки и изменения размера изображений. Вы можете добавлять водяные знаки и анимацию к изображениям внутри ваших собственных приложений.

Mergi — это мощная библиотека go, которая предоставляет возможность программной обработки изображений с использованием языка GO. Библиотека хорошо организована и может быть легко интегрирована для выполнения многочисленных операций с помощью всего пары строк кода Go. Библиотека находится в свободном доступе по лицензии MIT и может быть легко использована в ваших проектах.

Библиотека Mergi с открытым исходным кодом включает полную поддержку нескольких важных функций обработки изображений, таких как объединение изображений, поддержка обрезки изображений, изменение размера изображений, добавление водяных знаков к вашим изображениям, средства анимации изображений, смягчение изображений, добавление перехода к изображениям и многое другое.

Previous Next

Начало работы с Мерги

Самый простой способ установить Mergi — использовать GitHub. Пожалуйста, используйте следующую команду для плавной установки

Установите Mergi через GitHub.

$ go get github.com/noelyahan/mergi 

Анимация изображений через Go API

Библиотека Mergi с открытым исходным кодом дает разработчикам программного обеспечения возможность анимировать любой заданный результат массива изображений в своих собственных приложениях GO. Вам необходимо указать правильный путь к изображению или URL-адрес пути к файлу. Затем вам нужно передать изображения в массив и применить задержку в соответствии с вашими потребностями. В конце концов, вы можете экспортировать окончательный результат через средство экспорта анимации, чтобы получить результирующий файл GIF.

Как анимировать изображения через Go API

func Animate(imgs []image.Image, delay int) (gif.GIF, error) {
	for i, v := range imgs {
		if v == nil {
			msg := fmt.Sprintf("Mergi found a error image=[%v] on %d", v, i)
			return gif.GIF{}, errors.New(msg)
		}
	}
	delays := make([]int, 0)
	for i := 0; i < len(imgs); i++ {
		delays = append(delays, delay)
	}
	images := encodeImgPaletted(&imgs)
	return gif.GIF{
		Image: images,
		Delay: delays,
	}, nil
}

Обрезка изображений через Go API

Идеальная картинка может сказать тысячу слов. Обрезка изображения — это удаление нежелательной области изображения для создания фокуса или усиления изображения. Библиотека Mergi позволяет программистам обрезать изображения внутри своих собственных приложений Go. Разработчик должен предоставить пользовательскую ширину и высоту требуемого изображения и местоположения.

Crop Image через Go API

var errCrop = errors.New("Mergi found a error image on Crop")
var errCropBound = errors.New("Mergi expects more than 0 value for bounds")
func Animate(imgs []image.Image, delay int) (gif.GIF, error) {
	for i, v := range imgs {
		if v == nil {
			msg := fmt.Sprintf("Mergi found a error image=[%v] on %d", v, i)
			return gif.GIF{}, errors.New(msg)
		}
	}
	delays := make([]int, 0)
	for i := 0; i < len(imgs); i++ {
		delays = append(delays, delay)
	}
	images := encodeImgPaletted(&imgs)
	return gif.GIF{
		Image: images,
		Delay: delays,
	}, nil
}

Добавление водяных знаков к изображениям

Бесплатная библиотека Mergi дает программистам возможность с легкостью программно вставлять водяные знаки в изображения внутри своих приложений Go. Используя функцию водяных знаков, мы можем легко защитить наши изображения от создания и распространения несанкционированных копий. Библиотека поддерживает размещение логотипа, а также текстовых водяных знаков с помощью пары строк кода Go. Водяные знаки могут быть размещены в любой выбранной позиции по вашему выбору, а также с непрозрачностью по вашему выбору.

Добавить водяной знак к изображению через Go API

originalImage, _ := mergi.Import(impexp.NewFileImporter("./testdata/mergi_bg_1.png"))
watermarkImage, _ := mergi.Import(impexp.NewFileImporter("./testdata/glass-mergi_logo_watermark_90x40.jpg"))
res, _ := mergi.Watermark(watermarkImage, originalImage, image.Pt(250, 10))
mergi.Export(impexp.NewFileExporter(res, "watermark.png"))

Поддержка слияния изображений

Библиотека Mergi помогает разработчикам объединять несколько изображений в одно изображение в соответствии со своими потребностями с помощью команд программирования Go. Библиотека поддерживает объединение нескольких изображений по заданным шаблонам. Он поддерживает средства горизонтального слияния и вертикального слияния. Чтобы объединить два изображения, вам необходимо указать путь к изображению или правильный URL-адрес, после чего вы можете выбрать шаблон для объединения изображений по горизонтали или по вертикали.

Слияние изображений через Go API

image1, _ := mergi.Import(impexp.NewFileImporter("./testdata/mergi_bg_1.png"))
image2, _ := mergi.Import(impexp.NewFileImporter("./testdata/mergi_bg_2.png"))
horizontalImage, _ := mergi.Merge("TT", []image.Image{image1, image2})
mergi.Export(impexp.NewFileExporter(horizontalImage, "horizontal.png"))
verticalImage, _ := mergi.Merge("TB", []image.Image{image1, image2})
mergi.Export(impexp.NewFileExporter(verticalImage, "vertical.png"))
 Русский