git.hedgecode.org
/
chesshog.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[LIB-9] Add functional for transcoding vector images
[chesshog.git]
/
chesshog-graphics
/
src
/
main
/
java
/
org
/
hedgecode
/
chess
/
img
/
AbstractImageLoader.java
diff --git
a/chesshog-graphics/src/main/java/org/hedgecode/chess/img/AbstractImageLoader.java
b/chesshog-graphics/src/main/java/org/hedgecode/chess/img/AbstractImageLoader.java
index
c9c4f04
..
0d3681f
100644
(file)
--- a/
chesshog-graphics/src/main/java/org/hedgecode/chess/img/AbstractImageLoader.java
+++ b/
chesshog-graphics/src/main/java/org/hedgecode/chess/img/AbstractImageLoader.java
@@
-25,8
+25,6
@@
import java.nio.file.Path;
import java.util.HashMap;
import java.util.Map;
import java.util.HashMap;
import java.util.Map;
-import javax.imageio.ImageIO;
-
import org.hedgecode.chess.img.fs.FileSystemDetector;
import org.hedgecode.chess.img.fs.FileSystemContractor;
import org.hedgecode.chess.img.fs.FileSystemDetector;
import org.hedgecode.chess.img.fs.FileSystemContractor;
@@
-40,6
+38,8
@@
public abstract class AbstractImageLoader implements ImageLoader {
private static final String IMAGES_DIR =
ImageConstants.RESOURCE_ROOT_DIR.concat(ImageConstants.RESOURCE_IMAGES_DIR);
private static final String IMAGES_DIR =
ImageConstants.RESOURCE_ROOT_DIR.concat(ImageConstants.RESOURCE_IMAGES_DIR);
+ private static final int DEF_IMAGE_SIZE = 100;
+
private Type loadType;
private URI imageResourceUri;
private Type loadType;
private URI imageResourceUri;
@@
-82,6
+82,12
@@
public abstract class AbstractImageLoader implements ImageLoader {
protected Map<String, BufferedImage> loadImages(String imagesPath, ImageFilter filter)
throws ImageException
{
protected Map<String, BufferedImage> loadImages(String imagesPath, ImageFilter filter)
throws ImageException
{
+ return loadImages(imagesPath, filter, DEF_IMAGE_SIZE);
+ }
+
+ protected Map<String, BufferedImage> loadImages(String imagesPath, ImageFilter filter, int size)
+ throws ImageException
+ {
Map<String, BufferedImage> images = new HashMap<>();
try (FileSystemContractor fsc = FileSystemDetector.detect(getImageResourceUri())) {
try (DirectoryStream<Path> ds =
Map<String, BufferedImage> images = new HashMap<>();
try (FileSystemContractor fsc = FileSystemDetector.detect(getImageResourceUri())) {
try (DirectoryStream<Path> ds =
@@
-89,13
+95,17
@@
public abstract class AbstractImageLoader implements ImageLoader {
fsc.getPath(imagesPath), filter
)
) {
fsc.getPath(imagesPath), filter
)
) {
+ ImageFormatShaper formatShaper = ImageFormatShaper.getInstance();
for (Path file : ds) {
for (Path file : ds) {
+ String fileName = file.getFileName().toString();
+ String baseName = FilenameUtils.getBaseName(fileName).toLowerCase();
+ String imageFormat = FilenameUtils.getExtension(fileName).toLowerCase();
images.put(
images.put(
- FilenameUtils.getBaseName(
- file.getFileName().toString()
-
).toLowerCase()
,
- ImageIO.read(
- fsc.getResourceAsStream(file)
+ baseName,
+ formatShaper.shape(
+
imageFormat
,
+ fsc.getResourceAsStream(file),
+ size
)
);
}
)
);
}