6053 |
13 Nov 20 |
nicklas |
1 |
package net.sf.basedb.thumbnails; |
6053 |
13 Nov 20 |
nicklas |
2 |
|
6053 |
13 Nov 20 |
nicklas |
3 |
import java.awt.image.BufferedImage; |
6053 |
13 Nov 20 |
nicklas |
4 |
|
6053 |
13 Nov 20 |
nicklas |
5 |
import org.imgscalr.Scalr; |
6053 |
13 Nov 20 |
nicklas |
6 |
|
6053 |
13 Nov 20 |
nicklas |
7 |
/** |
6053 |
13 Nov 20 |
nicklas |
Predefined specification for cropping images. |
6053 |
13 Nov 20 |
nicklas |
Note that cropping is not supported by all image loader |
6053 |
13 Nov 20 |
nicklas |
implementations. Cropping is applied before scaling or |
6053 |
13 Nov 20 |
nicklas |
rotating the image. |
6053 |
13 Nov 20 |
nicklas |
12 |
|
6053 |
13 Nov 20 |
nicklas |
@author nicklas |
6053 |
13 Nov 20 |
nicklas |
@since 1.2 |
6053 |
13 Nov 20 |
nicklas |
15 |
*/ |
6053 |
13 Nov 20 |
nicklas |
16 |
public enum Crop |
6053 |
13 Nov 20 |
nicklas |
17 |
{ |
6053 |
13 Nov 20 |
nicklas |
18 |
|
6053 |
13 Nov 20 |
nicklas |
19 |
/** |
6053 |
13 Nov 20 |
nicklas |
Crops the label on NDPI images. This is typically a square on the |
6053 |
13 Nov 20 |
nicklas |
left side of the image. To make it simple we take the square from 0,0 to x,x |
6053 |
13 Nov 20 |
nicklas |
where x is the smallest if width and height of the image. |
6053 |
13 Nov 20 |
nicklas |
23 |
*/ |
6053 |
13 Nov 20 |
nicklas |
24 |
LABEL { |
6053 |
13 Nov 20 |
nicklas |
25 |
@Override |
6053 |
13 Nov 20 |
nicklas |
26 |
public BufferedImage crop(BufferedImage image) |
6053 |
13 Nov 20 |
nicklas |
27 |
{ |
6053 |
13 Nov 20 |
nicklas |
28 |
int size = Math.min(image.getHeight(), image.getHeight()); |
6053 |
13 Nov 20 |
nicklas |
29 |
return Scalr.crop(image, 0, 0, size, size); |
6053 |
13 Nov 20 |
nicklas |
30 |
} |
6053 |
13 Nov 20 |
nicklas |
31 |
}; |
6053 |
13 Nov 20 |
nicklas |
32 |
|
6053 |
13 Nov 20 |
nicklas |
33 |
/** |
6053 |
13 Nov 20 |
nicklas |
Crop the image. |
6053 |
13 Nov 20 |
nicklas |
35 |
*/ |
6053 |
13 Nov 20 |
nicklas |
36 |
public abstract BufferedImage crop(BufferedImage image); |
6053 |
13 Nov 20 |
nicklas |
37 |
} |