/*
软件作者:https://xuhss.com/oxox/pro
*/
"ui";
var SeekBarLayout = (function() {
util.extend(SeekBarLayout, ui.Widget);
function SeekBarLayout() {
ui.Widget.call(this);
this.defineAttr("text", (view, attr, value, defineSetter) => {
view._text.setText(String(value));
});
this.defineAttr("sum", (view, attr, value, defineSetter) => {
view._CurrentDuration.setText(String(value));
view._Duration_seekbar.setProgress(parseInt(value));
});
this.defineAttr("max", function(view, attr, value, defineSetter) {
view._Duration.setText(String(value));
view._Duration_seekbar.setMax(parseInt(value));
});
this.defineAttr("onClick", function(view, attr, value, defineSetter) {
view._Duration_seekbar.setOnSeekBarChangeListener({
onProgressChanged: function(seekBar, progress, fromUser) {
view._CurrentDuration.setText(String(progress));
if (fromUser) {
eval(value + "()");
}
},
onStartTrackingTouch: function(seekBar) {},
onStopTrackingTouch: function(seekBar) {
eval(value + "()");
}
});
});
};
SeekBarLayout.prototype.render = function() {
return (
<vertical margin="5" >
<text id="_text" text="A"/>
<horizontal>
<text id="_CurrentDuration" w="25" text="0" gravity="center" layout_gravity="left"/>
<seekbar id="_Duration_seekbar" layout_weight="1"/>
<text id="_Duration" w="25" text="0" gravity="center" layout_gravity="right"/>
</horizontal>
</vertical>
);
};
SeekBarLayout.prototype.getSum = function() {
return this.view._Duration_seekbar.getProgress();
};
ui.registerWidget("seekbar-layout", SeekBarLayout);
return SeekBarLayout;
})();
function 图片查看(canvasView, img) {
this.setImg = (IMG) => {
img = IMG.clone();
//this.data = this.autoCenter();
};
this.getImg = function() {
return img.clone();
};
this.getCenter = function() {
return this.点色;
};
this.点色;
this.loadPaint = new Paint;
this.loadPaint.setTextAlign(Paint.Align.CENTER);
this.loadPaint.setStrokeWidth(5);
this.loadPaint.setARGB(255, 0, 0, 0);
//this.loadPaint.setStyle(Paint.Style.STROKE);
this.loadPaint.setStyle(Paint.Style.FILL);
this.loadTextSize = 100;
this.loadPaint.setTextSize(this.loadTextSize);
this.paint = new Paint;
this.paint.setTextAlign(Paint.Align.CENTER);
this.paint.setStrokeWidth(5);
this.paint.setStyle(Paint.Style.STROKE);
this.autoCenter = ()=> {
var vw = canvasView.getWidth(),
vh = canvasView.getHeight(),
iw = img.getWidth(),
ih = img.getHeight();
var scale = vw / vh < iw / ih ? vw / iw : vh / ih;
var x = vw / vh < iw / ih ? 0 : vw / 2 - iw / 2 * scale;
var y = vw / vh < iw / ih ? vh / 2 - ih / 2 * scale : 0;
this.data={
translate: {
x: x,
y: y
},
scale: scale,
rotate: 0
};
};
threads.start(new java.lang.Runnable(() => {
sleep(100);
this.autoCenter();
}));
this.data = {
translate: {
x: 0,
y: 0
},
scale: 1,
rotate: 0
};
this.RY = {
Y: 0
};
this.Loading = function(canvas, paint, RY) {
var w = canvas.getWidth();
var h = canvas.getHeight();
RY.Y += 5;
if (RY.Y >= 360) {
RY.Y = 0;
};
canvas.rotate(RY.Y, w * 0.5, h * 0.52);
//paint.setStrokeWidth(5);
paint.setStyle(Paint.Style.STROKE);
canvas.drawCircle(w / 2, h * 0.48, w / 3, paint);
canvas.setMatrix(new android.graphics.Matrix());
canvas.rotate(-RY.Y, w * 0.5, h * 0.52);
//paint.setStrokeWidth(1);
paint.setStyle(Paint.Style.FILL);
canvas.drawText("侧拉菜单中打开一个图片", w / 2, h * 0.48 + 0.365 * paint.getTextSize(), paint);
};
canvasView.on("draw", (canvas) => {
canvas.drawARGB(255, 127, 127, 127);
if (!img) {
this.Loading(canvas, this.loadPaint, this.RY);
return;
};
var w = canvas.getWidth();
var h = canvas.getHeight();
this.paint.setStrokeWidth(5);
this.paint.setStyle(Paint.Style.STROKE);
var matrix = new android.graphics.Matrix();
matrix.postRotate(this.data.rotate);
matrix.postScale(this.data.scale, this.data.scale);
matrix.postTranslate(this.data.translate.x, this.data.translate.y);
this.paint.setARGB(255, 0, 0, 0);
canvas.drawImage(img, matrix, this.paint);
this.paint.setStrokeWidth(2);
this.paint.setStyle(Paint.Style.FILL);
var size = 50;
this.paint.setTextSize(size);
this.paint.setARGB(255, 255, 0, 0);
canvas.drawText(String(Math.floor(device.width / this.data.scale)), w / 2, h * 0.1 + 0.365 * size, this.paint);
canvas.drawText(String(Math.floor((device.width / this.data.scale)/device.width*1000)/1000), w / 2, h * 0.2 + 0.365 * size, this.paint);
var matrix = new android.graphics.Matrix();
matrix.postRotate(this.data.rotate, w / 2, h / 2);
canvas.setMatrix(matrix);
this.paint.setStrokeWidth(5);
this.paint.setARGB(255, 255, 255, 0);
canvas.drawLine(w / 2 - 50, h / 2, w / 2 - 500, h / 2, this.paint);
this.paint.setARGB(255, 255, 0, 255);
canvas.drawLine(w / 2, h / 2 - 50, w / 2, h / 2 - 500, this.paint);
this.paint.setARGB(255, 255, 0, 0);
canvas.drawLine(w / 2 + 50, h / 2, w / 2 + 500, h / 2, this.paint);
this.paint.setARGB(255, 0, 0, 255);
canvas.drawLine(w / 2, h / 2 + 50, w / 2, h / 2 + 500, this.paint);
canvas.setMatrix(new android.graphics.Matrix());
var S = this.算坐标(w / 2, h / 2, this.data, img);
this.点色 = S;
this.paint.setStyle(Paint.Style.STROKE);
this.paint.setColor(S.color);
this.paint.setStrokeWidth(15);
canvas.drawCircle(w / 2, h / 2, 41, this.paint);
this.paint.setColor(this.反色(S.color));
this.paint.setStrokeWidth(5);
canvas.drawCircle(w / 2, h / 2, 50, this.paint);
var S1 = this.算坐标(w / 2, h / 2 - 100, this.data, img);
var S2 = this.算坐标(w / 2, h / 2 + 100 - 12.5, this.data, img);
var S3 = this.算坐标(w / 2, h / 2 + 100 + 12.5, this.data, img);
this.paint.setStrokeWidth(1);
this.paint.setStyle(Paint.Style.FILL);
var size = 40;
this.paint.setTextSize(size);
this.paint.setColor(this.反色(S1.color));
canvas.drawText(S.x + "," + S.y, w / 2, h / 2 - 100 + 0.365 * size, this.paint);
this.paint.setColor(this.反色(S2.color));
canvas.drawText(S.color, w / 2, h / 2 + 100 - 12.5 + 0.365 * size, this.paint);
this.paint.setColor(this.反色(S3.color));
canvas.drawText(S.colorString, w / 2, h / 2 + 100 + 20 + 0.365 * size, this.paint);
});
this.算坐标 = (X, Y, data, img) => {
try {
var X = X - data.translate.x,
Y = Y - data.translate.y;
var WE = this.weiyi([X, Y]);
var YY = this.ydfx([X, Y]);
var KY = YY - data.rotate;
var KK =
没有合适的资源?快使用搜索试试~ 我知道了~
AutoJs源码-图片处理查看
共1个文件
js:1个
需积分: 9 0 下载量 143 浏览量
2022-11-15
12:48:30
上传
评论
收藏 6KB 7Z 举报
温馨提示
AutoJs源码-图片处理查看。本资源购买前提醒:本源码都是实际autojs项目模板,安装好autojs直接运行即可打开。1、支持低版本autojs。2、资源仅供学习与参考,请勿用于商业用途,否则产生的一切后果将由您自己承担!。3、安装过程详见具体资源,不会使用autojs谨慎下载
资源推荐
资源详情
资源评论
收起资源包目录
AutoJs源码-图片处理查看.7z (1个子文件)
AutoJs源码-图片处理查看.js 28KB
共 1 条
- 1
资源评论
[虚幻私塾】
- 粉丝: 335
- 资源: 1559
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功