图片转换
image.saveTo()
保存到文件中
@param img 图片对象
@param path 路径
@return bool true代表成功,false 代表失败
function main() { var imageX = image.captureFullScreen(); var r = image.saveTo(imageX,"/sdard/a.png"); toast("result "+r); } main();
image.toBase64Format()
转成base64的字符串, jpg格式较小,可以减少内存
@param img 图片对象
@param format 格式 jpg或者 png
@param q 质量 1-100,质量越大 越清晰
@return 字符串
function main() { var imageX = image.captureFullScreen(); var r = image.toBase64Format(imageX,"jpg",50); toast("result "+r); } main();
image.clip()
剪切图片
@param img 图片对象
@param x x起始坐标
@param y y起始坐标
@param ex 终点X坐标
@param ey 终点Y坐标
@return AutoImage 对象或者null
function main() { var imageX = image.captureFullScreen(); var r = image.clip(imageX,100,100,300,400); toast("result "+r); } main();
image.pixel()
取得图片的某个点的颜色值
@param img 图片对象
@param x x坐标点
@param y y坐标点
@return int 颜色值
function main() { var imageX = image.captureFullScreen(); var r = image.pixel(imageX,100,100); toast("result "+r); } main();
image.recycle()
回收图片
@param img 图片对象
function main() { var imageX = image.captureFullScreen(); image.recycle(imageX); } main();
image.isRecycled()
是否被回收了
@param img 图片对象
@return bool true代表已经被回收了
function main() { var imageX = image.captureFullScreen(); var r = image.isRecycled(imageX); toast("result "+r); } main();
image.clipBitmap()
剪裁Bitmap图片,请自行判断参数,正确性
@param bitmap 图片
@param x 开始X坐标
@param y 开始Y坐标
@param w 剪裁宽度
@param h 剪裁高度
@return {Bitmap} 安卓的Bitmap对象
function main() { var request = image.requestScreenCapture(10000,0); if (!request) { request = image.requestScreenCapture(10000,0); } logd("申请截图结果... "+request) for (var i = 0; i < 100; i++) { var d =image.captureScreenBitmap("jpg",0,0,0,0,100); logd(d) sleep(1000); if (d) { d= image.clipBitmap(d,100,100,200,200); var ds = image.bitmapBase64(d,"jpg",100); logd(ds) loge(image.base64Bitmap(ds,0)) } } } main();
image.base64Bitmap()
base64字符串转为Bitmap图片
@param data base64 数据
@param flag base64格式的标示,一般为0,
可选参数为 :0 默认, 1 无填充模式,2 无换行模式,4 换行模式
@return {Bitmap} 安卓的Bitmap对象
function main() { var request = image.requestScreenCapture(10000,0); if (!request) { request = image.requestScreenCapture(10000,0); } logd("申请截图结果... "+request) for (var i = 0; i < 100; i++) { var d =image.captureScreenBitmap("jpg",0,0,0,0,100); logd(d) sleep(1000); if (d) { d= image.clipBitmap(d,100,100,200,200); var ds = image.bitmapBase64(d,"jpg",100); logd(ds) loge(image.base64Bitmap(ds,0)) } } } main();
image.bitmapBase64()
bitmap转为base64
@param bitmap 图片
@param format 格式,jpg或者png
@param q 质量 1 - 100
@return {string} base64字符串
function main() { var request = image.requestScreenCapture(10000,0); if (!request) { request = image.requestScreenCapture(10000,0); } logd("申请截图结果... "+request) for (var i = 0; i < 100; i++) { var d =image.captureScreenBitmap("jpg",0,0,0,0,100); logd(d) sleep(1000); if (d) { d= image.clipBitmap(d,100,100,200,200); var ds = image.bitmapBase64(d,"jpg",100); logd(ds) loge(image.base64Bitmap(ds,0)) } } } main();
image.imageToBitmap()
将AutoImage转换为安卓原生的Bitmap对象
@param img {AutoImage}
@return {Bitmap} 对象
function main() { var request = image.requestScreenCapture(10000,0); if (!request) { request = image.requestScreenCapture(10000,0); } logd("申请截图结果... "+request) for (var i = 0; i < 100; i++) { var d =image.captureFullScreenEx("jpg",0,0,0,0,100); logd(d) sleep(1000); if (d) { var ds= image.imageToBitmap(d); logd(ds) ds.recycle(); image.recyle(d); } } } main();
例子
EC调用OPENCV 二值化
//这里的代码是java 翻译为JS的 function opencvtest(){ importPackage(android.graphics) importPackage(org.opencv.core) importPackage(org.opencv.android) importPackage(org.opencv.imgproc) importPackage(java.io) //读取SDcard的文件 var orgBitmap = BitmapFactory.decodeFile("/sdcard/aa.png"); var mGray = new Mat(); var mGray2 = new Mat(); Utils.bitmapToMat(orgBitmap, mGray2); Imgproc.cvtColor(mGray2, mGray, Imgproc.COLOR_BGR2GRAY); var ret = new Mat(); Imgproc.threshold(mGray, ret, 127, 255, Imgproc.THRESH_BINARY_INV); var bitmap = Bitmap.createBitmap(ret.width(), ret.height(), Bitmap.Config.ARGB_8888); Utils.matToBitmap(ret, bitmap); //保存到文件中 try { bitmap.compress(Bitmap.CompressFormat.PNG, 100, new FileOutputStream("/sdcard/bb3b.png")); } catch ( e) { logd(e) } } opencvtest();