2013-02-28 56 views
0

有没有办法将AWT图像转换为GWT图像? 在服务器端,我改变一个字节数组转换为图像:我可以将awt图像转换为gwt图像吗?

public Image getImageData(byte[] imageByteArray) 
{ 
    String base64 = Base64Utils.toBase64(imageByteArray); 
    base64 = "data:image/png;base64," + base64; 
    byte[] byteArray = base64.getBytes(); 
    //byte[] byteArray = BASE64Decoder.decode(imageByteArray); 
    Image image = Toolkit.getDefaultToolkit().createImage(byteArray); 
    image = createNewImage(image); 
    return image; 
} 

private Image createNewImage(Image image) 
{ 
    try 
    { 
     Label l = new Label(); 
     MediaTracker tracker = new MediaTracker(l); 
     tracker.addImage(image, 0); 
     tracker.waitForAll(); 
     return image; 
    } 
    catch (InterruptedException e) 
    { 
     e.printStackTrace(); 
    } 
    return null; 
} 

现在即时通讯通过RPC把它发送到客户端,我想广告到我的UiBinder的类。但它想要一个GWT图像和

Toolkit.getDefaultToolkit().createImage(byteArray) 

需要AWT图像。

+0

为什么你不想要的base64字符串发送到客户端? – maks 2013-02-28 11:47:23

+0

dostst工作。不知道为什么 – Laura 2013-02-28 14:46:37

回答

0

GWT不支持java.awt.anything。你必须使用GWT Image class

GWT != Java 

https://groups.google.com/forum/?fromgroups=#!topic/google-web-toolkit/wBryd0GbBT8

+0

sooo可以以某种方式做到这一点Image image = Toolkit.getDefaultToolkit()。createImage(byteArray);并获得gwt图像? – Laura 2013-02-28 11:42:01

+0

http://gurselkoca.blogspot.in/2010/12/construction-of-gwt-image-from-byte.html – 2013-02-28 11:47:38

+0

你已经试过这个。为我工作 – Laura 2013-02-28 11:50:37