我不知道这是否是合适的地方,但我希望是。
我正在使用Jdeveloper 12c使用ADF构建Fusion Web应用程序。在这个应用程序中,我从外部机器动态获取图像对象进行数字签名。用户将使用此机器进行签名,然后我调用一些将签名作为Image对象返回的方法。我的任务是在浏览器中向用户显示此图像。问题是:
我实现此任务的方法是使用方法drawImage
但浏览器中没有任何内容。我确信图像不是空的。这是代码的一部分:
Image bi=this.sigObj.sigImage(); //this.sigObj.sigImage() will return an object of type BufferedImage
Graphics g= bi.getGraphics();
g.drawImage(bi, 300, 300, null);
注意:当我致电getWidth(null)
并获取getHeight(null)
时,他们都返回1.我不知道这是否有帮助。
谢谢
答案 0 :(得分:0)
这真的没有任何意义。有一个图像在你的网络服务器上的内存缓冲区,你得到它的图形,并重绘它上面的图像(这已经没有意义了),你希望这将神奇地渲染一些图像浏览器在别的地方?
要在网页中显示动态生成的图像,此网页必须具有
<img src="/somUrl" />
标记,映射到/someUrl
的servlet或操作必须返回一个HTTP响应,告诉图像的格式(在其内容类型标头中,例如image/png
),并包含字节以这种格式编码的图像(例如,通过使用ImageIO将BufferedImage写入servlet响应输出流)。