mirror of https://github.com/espruino/BangleApps
imgclock: Fix hour alignment for single digits Fix hour alignment for single digits
Scaling for background images <240px widepull/408/head
parent
31a58a15a4
commit
59fab34035
|
@ -168,7 +168,7 @@
|
|||
"name": "Image background clock",
|
||||
"shortName":"Image Clock",
|
||||
"icon": "app.png",
|
||||
"version":"0.03",
|
||||
"version":"0.04",
|
||||
"description": "A clock with an image as a background",
|
||||
"tags": "clock",
|
||||
"type" : "clock",
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
0.01: New App!
|
||||
0.02: Add configurable color - and 'this is fine.'
|
||||
0.03: Add {msb:true} so that on new builds, color is correct for 16 bit
|
||||
0.04: Fix hour alignment for single digits
|
||||
Scaling for background images <240px wide
|
||||
|
|
|
@ -7,6 +7,11 @@ var inf = require("Storage").readJSON("imgclock.face.json");
|
|||
var img = require("Storage").read("imgclock.face.img");
|
||||
var IX = inf.x, IY = inf.y, IBPP = inf.bpp;
|
||||
var IW = 110, IH = 45, OY = 24;
|
||||
var bgwidth = img.charCodeAt(0);
|
||||
var bgoptions;
|
||||
if (bgwidth<240)
|
||||
bgoptions = { scale : 240/bgwidth };
|
||||
|
||||
require("Font7x11Numeric7Seg").add(Graphics);
|
||||
var cg = Graphics.createArrayBuffer(IW,IH,IBPP,{msb:true});
|
||||
var cgimg = {width:IW,height:IH,bpp:IBPP,buffer:cg.buffer};
|
||||
|
@ -16,7 +21,7 @@ var locale = require("locale");
|
|||
var bgimg = require("Storage").read("imgclock.face.bg");
|
||||
// if it doesn't exist, make it
|
||||
function createBgImg() {
|
||||
cg.drawImage(img,-IX,-IY);
|
||||
cg.drawImage(img,-IX,-IY,bgoptions);
|
||||
require("Storage").write("imgclock.face.bg", cg.buffer);
|
||||
bgimg = require("Storage").read("imgclock.face.bg");
|
||||
}
|
||||
|
@ -28,13 +33,14 @@ function draw() {
|
|||
new Uint8Array(cg.buffer).set(bgimg);
|
||||
// draw time
|
||||
cg.setColor(inf.col);
|
||||
cg.setFontAlign(-1,-1);
|
||||
var x = 0;
|
||||
var x = 40;
|
||||
cg.setFont("7x11Numeric7Seg",3);
|
||||
cg.drawString((" "+t.getHours()).substr(-2), x, 0);
|
||||
x+=42;
|
||||
cg.setFontAlign(1,-1);
|
||||
cg.drawString(t.getHours(), x, 0);
|
||||
x+=2;
|
||||
cg.fillRect(x, 10, x+2, 10+2).fillRect(x, 20, x+2, 20+2);
|
||||
x+=6;
|
||||
cg.setFontAlign(-1,-1);
|
||||
cg.drawString(("0"+t.getMinutes()).substr(-2), x, 0);
|
||||
x+=44;
|
||||
cg.setFont("7x11Numeric7Seg",1);
|
||||
|
@ -47,7 +53,7 @@ function draw() {
|
|||
}
|
||||
|
||||
// draw background
|
||||
g.drawImage(img, 0,OY);
|
||||
g.drawImage(img, 0,OY,bgoptions);
|
||||
// draw clock itself and do it every second
|
||||
draw();
|
||||
var secondInterval = setInterval(draw,1000);
|
||||
|
|
Loading…
Reference in New Issue