-
Notifications
You must be signed in to change notification settings - Fork 46
/
main.go
36 lines (29 loc) · 945 Bytes
/
main.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
// тестовое github.com/anthonynsimon/bild
package main
import (
"image"
"log"
"github.com/anthonynsimon/bild/imgio"
"github.com/anthonynsimon/bild/transform"
)
func main() {
// открытие файла
img, err := imgio.Open("zophie.png")
if err != nil {
log.Fatalln(err)
}
// обрезка
crop := transform.Crop(img, image.Rect(335, 345, 565, 560))
println(crop.Bounds().Size().X, crop.Bounds().Size().Y)
// сохранение (имя, что, в каком формате)
if err := imgio.Save("crop", crop, imgio.PNG); err != nil {
log.Fatalln(err)
}
// изменение размера (уменьшение в 4 раза)
resize := transform.Resize(img, img.Bounds().Size().X/4, img.Bounds().Size().Y/4, transform.Linear)
if err := imgio.Save("resize", resize, imgio.PNG); err != nil {
log.Fatalln(err)
}
println(resize.Bounds().Size().X, resize.Bounds().Size().Y)
// TODO: вставка
}