gkgimg

package module
v0.0.0-...-c638b61 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 4, 2017 License: BSD-3-Clause Imports: 11 Imported by: 0

README

gkgimg

画像をリサイズして保存する機能を持ったパッケージ

This package resize and store image file

How to use

1.install

go get github.com/sasasaiki/gkgimg

#If you use glide
#glide get github.com/sasasaiki/gkgimg

2.use

example

import "github.com/sasasaiki/gkgimg"

func main(){

	const originalFile = "originalFile.jpg"
	file, _ := os.Open("originalDir/"+originalFile)

	im := gkgimg.DirImgStorage{}
	e := im.SaveResizedImage(file, originalFile, "newFileName", "storeDir", 400, 0, 90)
	if e != nil {
		fmt.Println("error")
		return
	}
}

pngとjpgに対応しています。

サーバーで使う場合のサンプルプロジェクトがこちらにありますので参考にどうぞ。

It corresponds to png and jpg.

Here is a sample project for using on a server, so please refer to it.

https://github.com/sasasaiki/image-storage-server

SaveAsItIs

渡されたファイルをそのまま保存する SaveAsItIs(file multipart.File, originFileName, newFileName, directory string) error もあります。 こっちはリサイズ等の処理を行わないのでimage以外もいけます。

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DirImgStorage

type DirImgStorage struct {
}

DirImgStorage ディレクトリに保存する

func (*DirImgStorage) SaveAsItIs

func (im *DirImgStorage) SaveAsItIs(file multipart.File, originFileName, newFileName, directory string) error

SaveAsItIs 新しく保存するファイル名には拡張子を指定せず、渡したファイルの拡張子を使用して保存する そのまま何もせず保存しているだけなので多分何でも保存できる example: originFileName = "hoge.png" newFileName = "fuga"

func (*DirImgStorage) SavePngToJpeg

func (im *DirImgStorage) SavePngToJpeg(file multipart.File, originFileExtension, newFileName, directory string, quality int) (*os.File, error)

SavePngToJpeg jpegに変換して保存 TODO:透明部分が黒くなってしまうので一旦置いとく

func (*DirImgStorage) SaveResizedImage

func (im *DirImgStorage) SaveResizedImage(file multipart.File, originFileName, newFileName, directory string, w, h uint, jpgQ int) error

SaveResizedImage 新しく保存するファイル名には拡張子を指定せず、渡したファイルから拡張子を取得して保存する jpgQはjpegでのみ使用されるクオリティの値。100だとなぜかオリジナルファイルより大きくなるので90以下がオススメ example: originFileName = hoge.png newFileName = fuga jpgQ=90

type ImgStorageI

type ImgStorageI interface {
	SaveAsItIs(multipart.File, string, string, string) error
	SaveResizedImage(multipart.File, string, string, string, uint, uint, int) error
	SavePngToJpeg(multipart.File, string, string, string, int) (*os.File, error)
}

ImgStorageI イメージ保管に必要なメソッドを持つ

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL
⌂ 换网址