very basic SVG import, no line/fill styles, only paths with constant color.

This commit is contained in:
honfika@gmail.com
2015-12-14 19:31:20 +01:00
parent 4052b6902f
commit 4ad494501f
5 changed files with 174 additions and 7 deletions

View File

@@ -2617,12 +2617,24 @@ public final class MainPanel extends JPanel implements TreeSelectionListener, Se
}
if (item instanceof ShapeTag) {
ShapeTag st = (ShapeTag) item;
File selectedFile = showImportFileChooser("filter.images|*.jpg;*.jpeg;*.gif;*.png;*.bmp");
String filter = "filter.images|*.jpg;*.jpeg;*.gif;*.png;*.bmp";
if (Configuration.experimentalSvgImportEnabled.get()) {
filter += ";*.svg";
}
File selectedFile = showImportFileChooser(filter);
if (selectedFile != null) {
File selfile = Helper.fixDialogFile(selectedFile);
byte[] data = Helper.readFile(selfile.getAbsolutePath());
byte[] data = null;
String svgText = null;
if (".svg".equals(Path.getExtension(selfile))) {
svgText = Helper.readTextFile(selfile.getAbsolutePath());
} else {
data = Helper.readFile(selfile.getAbsolutePath());
}
try {
Tag newTag = new ShapeImporter().importImage(st, data);
ShapeImporter shapeImporter = new ShapeImporter();
Tag newTag = svgText != null ? shapeImporter.importSvg(st, svgText) : shapeImporter.importImage(st, data);
SWF swf = st.getSwf();
if (newTag != null) {
refreshTree(swf);