画像を文字列に保存し、開くと常に300x150になります
画像が切り捨てられるのはなぜですか?
300x150はどこから来たのですか?
コードはあなたが見るものです。たった2つのボタン。
1つ目は画像を「png」で保存し、もう1つは「png」から画像を読み取ります
Button save = new Button("copy");
save.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
ImageElement imageElement = ImageElement.as(image.getElement());
Canvas canvasTmp = Canvas.createIfSupported();
Context2d context = canvasTmp.getContext2d();
context.drawImage(imageElement, 0.0, 0.0, imageElement.getWidth(), imageElement.getHeight());
png = canvasTmp.toDataUrl("image/png");
}
});
Button open = new Button("open");
open.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
final Image image = new Image(png);
vp.add(image);
image.addLoadHandler(new LoadHandler() {
@Override
public void onLoad(LoadEvent event)
{
Window.alert("ok");
}
});
image.addErrorHandler(new ErrorHandler() {
@Override
public void onError(ErrorEvent event) {
Window.alert("error");
}
} );
}
});