之前做手写识别的比赛,对于画板canvas写出的数字,要生成图片保存到本地,然后调用python进行识别。对图片保存经历了三个版本变更。
一、直接对屏幕进行截屏保存图片
仅停留在可以实现生成图片,图片的画质还有截取的位置都有很大的问题
Robot robot;
try {
robot = new Robot();
//进行屏幕截取,根据不同电脑的分辨率设置参数
BufferedImage bi = robot.createScreenCapture(new Rectangle(740,294,440,386));
FileOutputStream out1 = new FileOutputStream("F:\\webproject\\image\\image1.png");
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out1);
encoder.encode(bi);
out1.close();
} catch (IOException e) {
e.printStackTrace();
} catch (AWTException e) {
e.printStackTrace();
}
二、利用canvas2image.js脚本
前端用js封装,调用canvas2image.js脚本(github可以下到的)中的方法,缺点是只能保存到电脑c盘中的downloads文件夹中,如果要布置到服务器上,依然是下在自己的电脑上。如果不布置到服务器上,这个方法就很简单了。
<script type="text/javascript

本文介绍了三种在canvas上生成图片并保存到本地的方法:直接屏幕截屏(画质和位置有限制)、使用canvas2image.js脚本(仅保存到C盘下载目录)和通过前后台交互base64编码进行保存(高清且适用于服务器)。针对不同需求,开发者可以选择合适的方式。
最低0.47元/天 解锁文章
2340

被折叠的 条评论
为什么被折叠?



