|
|
|
@ -58,7 +58,7 @@ bimg performance tests coming soon!
|
|
|
|
|
|
|
|
|
|
|
|
## API
|
|
|
|
## API
|
|
|
|
|
|
|
|
|
|
|
|
### Example
|
|
|
|
### Examples
|
|
|
|
|
|
|
|
|
|
|
|
```go
|
|
|
|
```go
|
|
|
|
import (
|
|
|
|
import (
|
|
|
|
@ -66,18 +66,85 @@ import (
|
|
|
|
"os"
|
|
|
|
"os"
|
|
|
|
"gopkg.in/h2non/bimg.v0"
|
|
|
|
"gopkg.in/h2non/bimg.v0"
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#### Resize
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```go
|
|
|
|
|
|
|
|
buffer, err := bimg.Read("image.jpg")
|
|
|
|
|
|
|
|
if err != nil {
|
|
|
|
|
|
|
|
fmt.Fprintln(os.Stderr, err)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
newImage, err := bimg.NewImage(buffer).Resize(800, 600)
|
|
|
|
|
|
|
|
if err != nil {
|
|
|
|
|
|
|
|
fmt.Fprintln(os.Stderr, err)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
size, err := bimg.NewImage(newImage).Size()
|
|
|
|
|
|
|
|
if size.Width == 400 && size.Height == 300 {
|
|
|
|
|
|
|
|
fmt.Println("The image size is valid")
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bimg.Write("new.jpg", newImage)
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#### Rotate
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```go
|
|
|
|
|
|
|
|
buffer, err := bimg.Read("image.jpg")
|
|
|
|
|
|
|
|
if err != nil {
|
|
|
|
|
|
|
|
fmt.Fprintln(os.Stderr, err)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
newImage, err := bimg.NewImage(buffer).Rotate(90)
|
|
|
|
|
|
|
|
if err != nil {
|
|
|
|
|
|
|
|
fmt.Fprintln(os.Stderr, err)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bimg.Write("new.jpg", newImage)
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#### Convert
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```go
|
|
|
|
|
|
|
|
buffer, err := bimg.Read("image.jpg")
|
|
|
|
|
|
|
|
if err != nil {
|
|
|
|
|
|
|
|
fmt.Fprintln(os.Stderr, err)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
newImage, err := bimg.NewImage(buffer).Convert(bimg.PNG)
|
|
|
|
|
|
|
|
if err != nil {
|
|
|
|
|
|
|
|
fmt.Fprintln(os.Stderr, err)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if bimg.NewImage(newImage).Type() == "png" {
|
|
|
|
|
|
|
|
fmt.Fprintln(os.Stderr, "The image was converted into png")
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#### Process
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```go
|
|
|
|
options := bimg.Options{
|
|
|
|
options := bimg.Options{
|
|
|
|
Width: 800,
|
|
|
|
Width: 800,
|
|
|
|
Height: 600,
|
|
|
|
Height: 600,
|
|
|
|
Crop: true,
|
|
|
|
Crop: true,
|
|
|
|
Quality: 95,
|
|
|
|
Quality: 95,
|
|
|
|
|
|
|
|
Rotate: 180,
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
buffer, err := bimg.Read("image.jpg")
|
|
|
|
|
|
|
|
if err != nil {
|
|
|
|
|
|
|
|
fmt.Fprintln(os.Stderr, err)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
newImage, err := bimg.Resize(image, options)
|
|
|
|
newImage, err := bimg.NewImage(buffer).Process(options)
|
|
|
|
if err != nil {
|
|
|
|
if err != nil {
|
|
|
|
fmt.Fprintln(os.Stderr, err)
|
|
|
|
fmt.Fprintln(os.Stderr, err)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bimg.Write("new.jpg", newImage)
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
#### func DetermineImageTypeName
|
|
|
|
#### func DetermineImageTypeName
|
|
|
|
@ -86,6 +153,12 @@ if err != nil {
|
|
|
|
func DetermineImageTypeName(buf []byte) string
|
|
|
|
func DetermineImageTypeName(buf []byte) string
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#### func Initialize
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```go
|
|
|
|
|
|
|
|
func Initialize()
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
#### func IsTypeNameSupported
|
|
|
|
#### func IsTypeNameSupported
|
|
|
|
|
|
|
|
|
|
|
|
```go
|
|
|
|
```go
|
|
|
|
@ -110,6 +183,12 @@ func Read(path string) ([]byte, error)
|
|
|
|
func Resize(buf []byte, o Options) ([]byte, error)
|
|
|
|
func Resize(buf []byte, o Options) ([]byte, error)
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#### func Shutdown
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```go
|
|
|
|
|
|
|
|
func Shutdown()
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
#### type Angle
|
|
|
|
#### type Angle
|
|
|
|
|
|
|
|
|
|
|
|
```go
|
|
|
|
```go
|
|
|
|
@ -340,14 +419,6 @@ type Options struct {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#### type Vips
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```go
|
|
|
|
|
|
|
|
type Vips struct {
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## License
|
|
|
|
## License
|
|
|
|
|
|
|
|
|
|
|
|
MIT - Tomas Aparicio
|
|
|
|
MIT - Tomas Aparicio
|
|
|
|
|