-
Notifications
You must be signed in to change notification settings - Fork 19
/
rotate.clj
41 lines (31 loc) · 989 Bytes
/
rotate.clj
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
37
38
39
40
41
(ns image-resizer.rotate
(:require
[image-resizer.util :refer :all])
(:import
[org.imgscalr Scalr]
[org.imgscalr Scalr$Rotation]))
(def counter-clockwise-90
Scalr$Rotation/CW_270)
(def counter-clockwise-180
Scalr$Rotation/CW_180)
(def counter-clockwise-270
Scalr$Rotation/CW_90)
(def flip-horizontal
Scalr$Rotation/FLIP_HORZ)
(def flip-vertical
Scalr$Rotation/FLIP_VERT)
(defn flip-vertically-fn []
(fn [image]
(Scalr/rotate (buffered-image image) flip-vertical nil)))
(defn flip-horizontally-fn []
(fn [image]
(Scalr/rotate (buffered-image image) flip-horizontal nil)))
(defn rotate-90-counter-clockwise-fn []
(fn [image]
(Scalr/rotate (buffered-image image) counter-clockwise-90 nil)))
(defn rotate-180-counter-clockwise-fn []
(fn [image]
(Scalr/rotate (buffered-image image) counter-clockwise-180 nil)))
(defn rotate-270-counter-clockwise-fn []
(fn [image]
(Scalr/rotate (buffered-image image) counter-clockwise-270 nil)))