Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Image 在GWT中调整图像大小并在画布上绘制_Image_Gwt - Fatal编程技术网

Image 在GWT中调整图像大小并在画布上绘制

Image 在GWT中调整图像大小并在画布上绘制,image,gwt,Image,Gwt,我调查了一下,但是这些方法都不推荐,对我来说甚至都不起作用。我试图做类似的事情,但失败了。我的示例代码: public interface Resources extends ClientBundle{ @Source("images/castle.png") ImageResource castleIcon(); 以及绘制图像的类: private void drawImage() { Resources res = GWT.create(Resources

我调查了一下,但是这些方法都不推荐,对我来说甚至都不起作用。我试图做类似的事情,但失败了。我的示例代码:

public interface Resources extends ClientBundle{
    @Source("images/castle.png")
    ImageResource castleIcon();
以及绘制图像的类:

private void drawImage() {

        Resources res = GWT.create(Resources.class);
        final Image icon = new Image(res.castleIcon().getSafeUri());
        icon.addLoadHandler(new LoadHandler() {

            @Override
            public void onLoad(LoadEvent event) {
                icon.setPixelSize(100, 80);                 
            }
        });

        context.drawImage(createImageElement(icon), x - 65, y - 20);
    }


private ImageElement createImageElement(Image image) {
    return ImageElement.as(image.getElement());
}

我已经尝试过了,但它无法渲染透明背景

在画布上使用PNG时,透明度应该可以正常工作。你确定你的图像真的是透明的吗?也许您的PNG在某种程度上与canvas实现不兼容。尝试使用alpha透明的24位PNG…

当我使用不同的方法时,它是透明的。我感觉getDataImage不知何故失去了透明度