mirror of
https://github.com/gnosygnu/xowa.git
synced 2026-03-02 03:49:30 +00:00
v2.10.3.1
This commit is contained in:
@@ -34,11 +34,11 @@ public class IconAdp {
|
||||
rv.url = url;
|
||||
return rv;
|
||||
}
|
||||
public static void regy_loadDir_(Io_url imgDir) {GfoRegy._.RegDir(imgDir, "*.png", true, "_", ".");}
|
||||
public static void regy_loadDir_shallow(Io_url imgDir) {GfoRegy._.RegDir(imgDir, "*.png", false, "_", ".");}
|
||||
public static void regy_loadDir_(Io_url imgDir) {GfoRegy.Instance.RegDir(imgDir, "*.png", true, "_", ".");}
|
||||
public static void regy_loadDir_shallow(Io_url imgDir) {GfoRegy.Instance.RegDir(imgDir, "*.png", false, "_", ".");}
|
||||
public static IconAdp regy_(String key) {
|
||||
GfoRegyItm itm = GfoRegy._.FetchOrNull(key);
|
||||
if (itm == null) {UsrDlg_._.Warn("missing icon; key={0}", key); return null;}
|
||||
GfoRegyItm itm = GfoRegy.Instance.FetchOrNull(key);
|
||||
if (itm == null) {UsrDlg_.Instance.Warn("missing icon; key={0}", key); return null;}
|
||||
if (itm.ValType() != GfoRegyItm.ValType_Url) throw Err_.new_wo_type("regyItm should be of type url", "key", key);
|
||||
return IconAdp.file_(itm.Url());
|
||||
}
|
||||
|
||||
@@ -32,7 +32,7 @@ public interface ImageAdp extends RlsAble {
|
||||
ImageAdp Extract_image(int src_x, int src_y, int src_w, int src_h, int trg_w, int trg_h);
|
||||
}
|
||||
class ImageAdp_txt implements ImageAdp {
|
||||
public Gfui_kit Kit() {return Swing_kit._;}
|
||||
public Gfui_kit Kit() {return Swing_kit.Instance;}
|
||||
public SizeAdp Size() {return size;} SizeAdp size;
|
||||
public int Width() {return size.Width();}
|
||||
public int Height() {return size.Height();}
|
||||
@@ -42,7 +42,7 @@ class ImageAdp_txt implements ImageAdp {
|
||||
public void Rls() {disposed = true;}
|
||||
public void SaveAsBmp(Io_url url) {SaveAs(url, ".bmp");}
|
||||
public void SaveAsPng(Io_url url) {SaveAs(url, ".png");}
|
||||
void SaveAs(Io_url url, String ext) {Io_mgr.I.SaveFilStr(url.GenNewExt(ext), size.To_str());}
|
||||
void SaveAs(Io_url url, String ext) {Io_mgr.Instance.SaveFilStr(url.GenNewExt(ext), size.To_str());}
|
||||
public ImageAdp Extract_image(RectAdp src_rect, SizeAdp trg_size) {return Extract_image(src_rect.X(), src_rect.Y(), src_rect.Width(), src_rect.Height(), trg_size.Width(), trg_size.Height());}
|
||||
public ImageAdp Extract_image(int src_x, int src_y, int src_w, int src_h, int trg_w, int trg_h) {return ImageAdp_.txt_mem_(Io_url_.Empty, SizeAdp_.new_(trg_w, trg_h));}
|
||||
public ImageAdp Resize(int width, int height) {return ImageAdp_.txt_mem_(Io_url_.Empty, SizeAdp_.new_(width, height));}
|
||||
|
||||
@@ -40,7 +40,7 @@ public class ImageAdp_ {
|
||||
}
|
||||
public static ImageAdp txt_mem_(Io_url url, SizeAdp size) {return new ImageAdp_txt(url, size);}
|
||||
public static ImageAdp txt_fil_(Io_url url) {
|
||||
String raw = Io_mgr.I.LoadFilStr(url);
|
||||
String raw = Io_mgr.Instance.LoadFilStr(url);
|
||||
SizeAdp size = null;
|
||||
if (String_.Eq(raw, "")) size = SizeAdp_.Zero;
|
||||
else if (String_.Eq(url.Ext(), ".svg")) size = SizeOf_svg(url);
|
||||
@@ -51,7 +51,7 @@ public class ImageAdp_ {
|
||||
public static ImageAdp file_(Io_url url) {
|
||||
if (url.EqNull()) throw Err_.new_wo_type("cannot load image from null url");
|
||||
if (String_.Eq(url.Info().Key(), IoUrlInfo_.Mem.Key())) return txt_fil_(url);
|
||||
if (!Io_mgr.I.ExistsFil(url)) return Null;
|
||||
if (!Io_mgr.Instance.ExistsFil(url)) return Null;
|
||||
|
||||
BufferedImage img = null;
|
||||
try {
|
||||
@@ -97,14 +97,14 @@ public class ImageAdp_ {
|
||||
else if (imageType == BufferedImage.TYPE_USHORT_555_RGB) return 16; //?
|
||||
else if (imageType == BufferedImage.TYPE_USHORT_565_RGB) return 16; //?
|
||||
else if (imageType == BufferedImage.TYPE_USHORT_GRAY) return 16; //?
|
||||
else {UsrDlg_._.Warn("unknown bits per pixel", "imageType", imageType, "url", url.Xto_api()); return 8;}
|
||||
else {UsrDlg_.Instance.Warn("unknown bits per pixel", "imageType", imageType, "url", url.Xto_api()); return 8;}
|
||||
}
|
||||
}
|
||||
class Gfui_svg_util {
|
||||
public static SizeAdp QuerySize(Io_url url) {
|
||||
try {
|
||||
// NOTE: not using XmlDoc b/c invalid doctypes can cause xml to hang; <?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"><!-- Created with Inkscape (http://www.inkscape.org/) --> <svg xmlns="http://www.w3.org/2000/svg"
|
||||
String xml = Io_mgr.I.LoadFilStr(url);
|
||||
String xml = Io_mgr.Instance.LoadFilStr(url);
|
||||
int pos = String_.FindFwd(xml, "<svg", 0); if (pos == -1) return null;
|
||||
Int_obj_ref pos_ref = Int_obj_ref.new_(pos);
|
||||
double w = ParseAtr(xml, pos_ref, "width");
|
||||
|
||||
@@ -44,7 +44,7 @@ public class ImageAdp_base implements ImageAdp, RlsAble {
|
||||
public void SaveAsBmp(Io_url url) {SaveAs(url, "bmp");}
|
||||
public void SaveAsPng(Io_url url) {SaveAs(url, "png");}
|
||||
void SaveAs(Io_url url, String fmtStr) {
|
||||
Io_mgr.I.CreateDirIfAbsent(url.OwnerDir());
|
||||
Io_mgr.Instance.CreateDirIfAbsent(url.OwnerDir());
|
||||
File fil = new File(url.Xto_api());
|
||||
// String[] formatNames = ImageIO.getWriterFormatNames();
|
||||
// for (String s : formatNames)
|
||||
|
||||
@@ -30,5 +30,5 @@ public class ImageAdp_null implements ImageAdp {
|
||||
public ImageAdp Extract_image(RectAdp src_rect, SizeAdp trg_size) {return Extract_image(src_rect.X(), src_rect.Y(), src_rect.Width(), src_rect.Height(), trg_size.Width(), trg_size.Height());}
|
||||
public ImageAdp Extract_image(int src_x, int src_y, int src_w, int src_h, int trg_w, int trg_h) {return this;}
|
||||
public ImageAdp Resize(int width, int height) {return this;}
|
||||
public static final ImageAdp_null _ = new ImageAdp_null(); ImageAdp_null() {}
|
||||
public static final ImageAdp_null Instance = new ImageAdp_null(); ImageAdp_null() {}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user