Skip to content

Commit 6650cb5

Browse files
authored
Merge pull request #10 from davidbyttow/d/relative
Relative values supported
2 parents 5908d42 + c469789 commit 6650cb5

File tree

7 files changed

+233
-128
lines changed

7 files changed

+233
-128
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
.DS_Store
22
build/
3+
*.failed.*

examples/resize/resize.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ func main() {
2929
func resize(inputFile, outputFile string) error {
3030
_, err := vips.NewTransform().
3131
LoadFile(inputFile).
32-
Reduce(0.2).
32+
Scale(0.2).
3333
OutputFile(outputFile).
3434
Apply()
3535
return err
8.18 KB
Loading
60.4 KB
Loading

regression_test.go

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,12 @@ func TestResizeShapes(t *testing.T) {
2323
})
2424
}
2525

26+
func TestRelativeResizeShapes(t *testing.T) {
27+
goldenTest(t, "fixtures/shapes.png", func(tx *vips.Transform) {
28+
tx.ScaleHeight(0.5)
29+
})
30+
}
31+
2632
func TestCenterCrop(t *testing.T) {
2733
goldenTest(t, "fixtures/shapes.png", func(tx *vips.Transform) {
2834
tx.Resize(341, 256).
@@ -41,7 +47,15 @@ func TestBottomRightCrop(t *testing.T) {
4147
func TestOffsetCrop(t *testing.T) {
4248
goldenTest(t, "fixtures/tomatoes.png", func(tx *vips.Transform) {
4349
tx.Resize(500, 720).
44-
CropOffset(120, 0).Kernel(vips.KernelNearest).
50+
CropOffset(120, 0).
51+
ResizeStrategy(vips.ResizeStrategyCrop)
52+
})
53+
}
54+
55+
func TestRelativeOffsetCrop(t *testing.T) {
56+
goldenTest(t, "fixtures/tomatoes.png", func(tx *vips.Transform) {
57+
tx.Resize(500, 720).
58+
CropOffsetPercent(0.1066, 0).
4559
ResizeStrategy(vips.ResizeStrategyCrop)
4660
})
4761
}
@@ -65,7 +79,10 @@ func assertGoldenMatch(t *testing.T, file string, buf []byte) {
6579
goldenFile := file[:i] + "." + t.Name() + ".golden" + file[i:]
6680
golden, _ := ioutil.ReadFile(goldenFile)
6781
if golden != nil {
68-
assert.Equal(t, golden, buf)
82+
if !assert.Equal(t, golden, buf) {
83+
failed := file[:i] + "." + t.Name() + ".failed" + file[i:]
84+
ioutil.WriteFile(failed, buf, 0644)
85+
}
6986
return
7087
}
7188
t.Log("Writing golden file: " + goldenFile)

0 commit comments

Comments
 (0)