![](https://products-qa.fileformat.com/ja/image/go/mergi/header-image.png)
Mergi
高度な画像操作のための GO API
ソースの Go ライブラリを開き、プログラムで画像をマージ、トリミング、サイズ変更します。独自のアプリ内の画像に透かしやアニメーションを追加できます。
Mergi を使い始める
Mergi をインストールする最も簡単な方法は、GitHub 経由で使用することです。スムーズなインストールのために次のコマンドを使用してください
GitHub 経由で Mergi をインストールします。
$ 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 アプリケーション内で画像を切り取ることができます。開発者は、必要な画像と場所のカスタムの幅と高さを提供する必要があります。
ゴー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 プログラミング コマンドを使用して、必要に応じて複数の画像を 1 つの画像に結合することを容易にします。ライブラリは、指定されたテンプレートに従って複数の画像をマージすることをサポートしています。水平マージ機能と垂直マージ機能をサポートしています。 2 つの画像を結合するには、画像パスまたは正しい URL を指定する必要があります。その後、テンプレートを選択して画像を水平または垂直に結合できます。
囲碁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"))