feat(docs): add API and examples

master
Tomas Aparicio 11 years ago
parent 3904953399
commit 0d13e86634

@ -58,7 +58,7 @@ bimg performance tests coming soon!
## API
### Example
### Examples
```go
import (
@ -66,18 +66,85 @@ import (
"os"
"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{
Width: 800,
Height: 600,
Crop: true,
Quality: 95,
Width: 800,
Height: 600,
Crop: true,
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 {
fmt.Fprintln(os.Stderr, err)
}
bimg.Write("new.jpg", newImage)
```
#### func DetermineImageTypeName
@ -86,6 +153,12 @@ if err != nil {
func DetermineImageTypeName(buf []byte) string
```
#### func Initialize
```go
func Initialize()
```
#### func IsTypeNameSupported
```go
@ -110,6 +183,12 @@ func Read(path string) ([]byte, error)
func Resize(buf []byte, o Options) ([]byte, error)
```
#### func Shutdown
```go
func Shutdown()
```
#### type Angle
```go
@ -291,7 +370,7 @@ const (
)
```
#### func DetermineImageType
#### func DetermineImageType
```go
func DetermineImageType(buf []byte) ImageType
@ -340,14 +419,6 @@ type Options struct {
}
```
#### type Vips
```go
type Vips struct {
}
```
## License
MIT - Tomas Aparicio

@ -53,6 +53,19 @@ func TestImageConvert(t *testing.T) {
Write("fixtures/test_image_convert_out.png", buf)
}
func TestImageMetadata(t *testing.T) {
data, err := initImage("test.png").Metadata(PNG)
if err != nil {
t.Errorf("Cannot process the image: %#v", err)
}
if data.Alpha != true {
t.Fatal("Invalid alpha channel")
}
if data.Size.Width != 400 {
t.Fatal("Invalid width size")
}
}
func initImage(file string) *Image {
buf, _ := Read(path.Join("fixtures", file))
return NewImage(buf)

Loading…
Cancel
Save