aboutsummaryrefslogtreecommitdiff
path: root/juick-api
diff options
context:
space:
mode:
authorGravatar Vitaly Takmazov2017-03-20 10:32:04 +0300
committerGravatar Vitaly Takmazov2017-03-20 10:32:04 +0300
commit3c5ec95b59dac6820751a9e3d498cf7bf3538724 (patch)
treea04e34b01a629fa8fa3d5309b3a0b7898e546c95 /juick-api
parent5889ba6af9f5c3cb0391bec8fbbcad0165519738 (diff)
Thumbnailator -> imgscalr
Diffstat (limited to 'juick-api')
-rw-r--r--juick-api/build.gradle2
-rw-r--r--juick-api/src/main/java/com/juick/api/controllers/Post.java21
2 files changed, 15 insertions, 8 deletions
diff --git a/juick-api/build.gradle b/juick-api/build.gradle
index 1db46f58..bca3a8c2 100644
--- a/juick-api/build.gradle
+++ b/juick-api/build.gradle
@@ -16,7 +16,7 @@ dependencies {
compile "org.springframework:spring-websocket:${rootProject.springFrameworkVersion}"
compile 'com.github.pengrad:java-telegram-bot-api:2.3.1.1'
- compile 'net.coobird:thumbnailator:0.4.8'
+ compile 'org.imgscalr:imgscalr-lib:4.2'
providedRuntime 'mysql:mysql-connector-java:5.1.40'
testCompile project(path: ':juick-server', configuration: 'testArtifacts')
diff --git a/juick-api/src/main/java/com/juick/api/controllers/Post.java b/juick-api/src/main/java/com/juick/api/controllers/Post.java
index 0c93fb7b..322587fb 100644
--- a/juick-api/src/main/java/com/juick/api/controllers/Post.java
+++ b/juick-api/src/main/java/com/juick/api/controllers/Post.java
@@ -10,8 +10,9 @@ import com.juick.service.MessagesService;
import com.juick.service.SubscriptionService;
import com.juick.service.UserService;
import com.juick.util.UserUtils;
-import net.coobird.thumbnailator.Thumbnails;
+import org.apache.commons.io.FilenameUtils;
import org.apache.commons.lang3.StringUtils;
+import org.imgscalr.Scalr;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.core.env.Environment;
@@ -24,7 +25,9 @@ import rocks.xmpp.core.stanza.model.Message;
import rocks.xmpp.extensions.nick.model.Nickname;
import rocks.xmpp.extensions.oob.model.x.OobX;
+import javax.imageio.ImageIO;
import javax.inject.Inject;
+import java.awt.image.BufferedImage;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
@@ -174,12 +177,16 @@ public class Post {
Path origName = Paths.get(apiServer.imgDir, "p", fname);
Files.move(Paths.get(apiServer.tmpDir, attachmentFName), origName);
- Thumbnails.of(origName.toFile()).size(1024, 1024).outputQuality(0.9)
- .toFile(Paths.get(apiServer.imgDir, "photos-1024", fname).toFile());
- Thumbnails.of(origName.toFile()).size(512, 512).outputQuality(0.9)
- .toFile(Paths.get(apiServer.imgDir, "photos-512", fname).toFile());
- Thumbnails.of(origName.toFile()).size(160, 120).outputQuality(0.9)
- .toFile(Paths.get(apiServer.imgDir, "ps", fname).toFile());
+ BufferedImage originalImage = ImageIO.read(origName.toFile());
+ ImageIO.write(Scalr.resize(originalImage, 1024),
+ FilenameUtils.getExtension(origName.toString()),
+ Paths.get(apiServer.imgDir, "photos-1024", fname).toFile());
+ ImageIO.write(Scalr.resize(originalImage, 512),
+ FilenameUtils.getExtension(origName.toString()),
+ Paths.get(apiServer.imgDir, "photos-512", fname).toFile());
+ ImageIO.write(Scalr.resize(originalImage, 160),
+ FilenameUtils.getExtension(origName.toString()),
+ Paths.get(apiServer.imgDir, "ps", fname).toFile());
body = attachmentURL + "\n" + body;
try {