From 180132254a275ef339c89aa12b51fcf9e5fea8df Mon Sep 17 00:00:00 2001 From: root Date: Fri, 6 Jun 2025 01:14:52 +0800 Subject: [PATCH] Auto Commit --- app.js | 54 +++++++++++ countdown-generator/index.js | 167 +++++++++++++++++++++++++++++++++++ index.js | 1 - package.json | 35 ++++---- public/index.html | 83 +++++++++++++++++ tmp/ex1.gif | Bin 0 -> 2005 bytes tmp/ex2.gif | Bin 0 -> 2820 bytes tmp/ex3.gif | Bin 0 -> 1833 bytes tmp/serve1.gif | Bin 0 -> 59162 bytes tmp/serve2.gif | Bin 0 -> 53536 bytes tmp/serve3.gif | Bin 0 -> 53778 bytes 11 files changed, 323 insertions(+), 17 deletions(-) create mode 100644 app.js create mode 100644 countdown-generator/index.js delete mode 100644 index.js create mode 100644 public/index.html create mode 100644 tmp/ex1.gif create mode 100644 tmp/ex2.gif create mode 100644 tmp/ex3.gif create mode 100644 tmp/serve1.gif create mode 100644 tmp/serve2.gif create mode 100644 tmp/serve3.gif diff --git a/app.js b/app.js new file mode 100644 index 0000000..7db080e --- /dev/null +++ b/app.js @@ -0,0 +1,54 @@ +'use strict'; + +// server +const express = require('express'); +const app = express(); +const path = require('path'); + +const tmpDir = __dirname + '/tmp/'; +const publicDir = __dirname + '/public/'; + +// canvas generator +const CountdownGenerator = require('./countdown-generator'); + +app.use(express.static(publicDir)); +app.use(express.static(tmpDir)); + +// root +app.get('/', function(req, res) { + res.sendFile(publicDir + 'index.html'); +}); + +// generate and download the gif +app.get('/generate', function(req, res) { + let { time, width, height, color, bg, name, frames } = req.query; + + if (!time) { + throw Error('Time parameter is required.'); + } + + CountdownGenerator.init(time, width, height, color, bg, name, frames, () => { + let filePath = tmpDir + name + '.gif'; + res.download(filePath); + }); +}); + +// serve the gif to a browser +app.get('/serve', function(req, res) { + let { time, width, height, color, bg, name='default', frames } = req.query; + + if (!time) { + throw Error('Time parameter is required.'); + } + + CountdownGenerator.init(time, width, height, color, bg, name, frames, () => { + let filePath = tmpDir + name + '.gif'; + res.sendFile(filePath); + }); +}); + +app.listen(process.env.PORT || 2025, function() { + console.log("Express server listening on port %d in %s mode", this.address().port, app.settings.env); +}); + +module.exports = app; \ No newline at end of file diff --git a/countdown-generator/index.js b/countdown-generator/index.js new file mode 100644 index 0000000..f2ac263 --- /dev/null +++ b/countdown-generator/index.js @@ -0,0 +1,167 @@ +'use strict'; + +const fs = require('fs'); +const path = require('path'); +const GIFEncoder = require('gifencoder'); +const Canvas = require('canvas'); +const moment = require('moment'); + +module.exports = { + /** + * Initialise the GIF generation + * @param {string} time + * @param {number} width + * @param {number} height + * @param {string} color + * @param {string} bg + * @param {string} name + * @param {number} frames + * @param {requestCallback} cb - The callback that is run once complete. + */ + init: function(time, width = 200, height = 200, color = 'ffffff', bg = '000000', name = 'default', frames = 30, cb) { + // Set some sensible upper / lower bounds + this.width = this.clamp(width, 150, 500); + this.height = this.clamp(height, 150, 500); + this.frames = this.clamp(frames, 1, 90); + + this.bg = '#' + bg; + this.textColor = '#' + color; + this.name = name; + + // loop optimisations + this.halfWidth = Number(this.width / 2); + this.halfHeight = Number(this.height / 2); + + this.encoder = new GIFEncoder(this.width, this.height); + this.canvas = Canvas.createCanvas(this.width, this.height); + this.ctx = this.canvas.getContext('2d'); + + // calculate the time difference (if any) + let timeResult = this.time(time); + + // start the gif encoder + this.encode(timeResult, cb); + }, + /** + * Limit a value between a min / max + * @link http://stackoverflow.com/questions/11409895/whats-the-most-elegant-way-to-cap-a-number-to-a-segment + * @param number - input number + * @param min - minimum value number can have + * @param max - maximum value number can have + * @returns {number} + */ + clamp: function(number, min, max) { + return Math.max(min, Math.min(number, max)); + }, + /** + * Calculate the diffeence between timeString and current time + * @param {string} timeString + * @returns {string|Object} - return either the date passed string, or a valid moment duration object + */ + time: function(timeString) { + // grab the current and target time + let target = moment(timeString); + let current = moment(); + + // difference between the 2 (in ms) + let difference = target.diff(current); + + // either the date has passed, or we have a difference + if (difference <= 0) { + return 'Date has passed!'; + } else { + // duration of the difference + return moment.duration(difference); + } + }, + /** + * Encode the GIF with the information provided by the time function + * @param {string|Object} timeResult - either the date passed string, or a valid moment duration object + * @param {requestCallback} cb - the callback to be run once complete + */ + encode: function(timeResult, cb) { + let enc = this.encoder; + let ctx = this.ctx; + let tmpDir = process.cwd() + '/tmp/'; + + // create the tmp directory if it doesn't exist + if (!fs.existsSync(tmpDir)) { + fs.mkdirSync(tmpDir); + } + + let filePath = tmpDir + this.name + '.gif'; + + // pipe the image to the filesystem to be written + let imageStream = enc + .createReadStream() + .pipe(fs.createWriteStream(filePath)); + // once finised, generate or serve + imageStream.on('finish', () => { + // only execute callback if it is a function + typeof cb === 'function' && cb(); + }); + + // estimate the font size based on the provided width + let fontSize = Math.floor(this.width / 12) + 'px'; + let fontFamily = 'Courier New'; // monospace works slightly better + + // set the font style + ctx.font = [fontSize, fontFamily].join(' '); + ctx.textAlign = 'center'; + ctx.textBaseline = 'middle'; + + // start encoding gif with following settings + enc.start(); + enc.setRepeat(0); + enc.setDelay(1000); + enc.setQuality(10); + + // if we have a moment duration object + if (typeof timeResult === 'object') { + for (let i = 0; i < this.frames; i++) { + // extract the information we need from the duration + let days = Math.floor(timeResult.asDays()); + let hours = Math.floor(timeResult.asHours() - (days * 24)); + let minutes = Math.floor(timeResult.asMinutes()) - (days * 24 * 60) - (hours * 60); + let seconds = Math.floor(timeResult.asSeconds()) - (days * 24 * 60 * 60) - (hours * 60 * 60) - (minutes * 60); + + // make sure we have at least 2 characters in the string + days = (days.toString().length == 1) ? '0' + days : days; + hours = (hours.toString().length == 1) ? '0' + hours : hours; + minutes = (minutes.toString().length == 1) ? '0' + minutes : minutes; + seconds = (seconds.toString().length == 1) ? '0' + seconds : seconds; + + // build the date string + let string = [days, 'd ', hours, 'h ', minutes, 'm ', seconds, 's'].join(''); + + // paint BG + ctx.fillStyle = this.bg; + ctx.fillRect(0, 0, this.width, this.height); + + // paint text + ctx.fillStyle = this.textColor; + ctx.fillText(string, this.halfWidth, this.halfHeight); + + // add finalised frame to the gif + enc.addFrame(ctx); + + // remove a second for the next loop + timeResult.subtract(1, 'seconds'); + } + } else { + // Date has passed so only using a string + + // BG + ctx.fillStyle = this.bg; + ctx.fillRect(0, 0, this.width, this.height); + + // Text + ctx.fillStyle = this.textColor; + ctx.fillText(timeResult, this.halfWidth, this.halfHeight); + enc.addFrame(ctx); + } + + // finish the gif + enc.finish(); + } +}; \ No newline at end of file diff --git a/index.js b/index.js deleted file mode 100644 index 2d7e683..0000000 --- a/index.js +++ /dev/null @@ -1 +0,0 @@ -console.log("欢迎来到 InsCode"); \ No newline at end of file diff --git a/package.json b/package.json index 72caa17..f58f386 100644 --- a/package.json +++ b/package.json @@ -1,18 +1,21 @@ { - "name": "nodejs", - "version": "1.0.0", - "description": "", - "main": "index.js", - "scripts": { - "dev": "node index.js", - "test": "echo \"Error: no test specified\" && exit 1" - }, - "keywords": [], - "author": "", - "license": "ISC", - "dependencies": { - "@types/node": "^18.0.6", - "node-fetch": "^3.2.6" - } + "name": "date-gif", + "version": "1.0.0", + "description": "Use Node to generate an animated countdown gif.", + "main": "app.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1", + "dev": "node app.js" + }, + "author": "yma16", + "license": "ISC", + "dependencies": { + "canvas": "^3.0.0", + "express": "^5.0.0", + "gifencoder": "^2.0.0", + "moment": "^2.30.0" + }, + "engines": { + "node": ">=6.0.0" } - \ No newline at end of file +} diff --git a/public/index.html b/public/index.html new file mode 100644 index 0000000..842e4ca --- /dev/null +++ b/public/index.html @@ -0,0 +1,83 @@ + + + + + + + + Using Node.js to generate countdown gifs + + + + +
+ + +

The very simple app I have created allows you to generate a countdown timer animated gif depending on the URL parameters you provide. View the code.

+ +

URL Parameters

+ +

* required.

+ +

Generate Examples Triggers a download

+ + +

Serve Examples Display in an image tag

+
+
+
+ basic example +
+

Basic example

+

Simple example setting only the date + time.

+
+
+
+
+
+ custom colours +
+

Custom colours

+

Example setting a custom set of colours.

+
+
+
+
+
+ custom colours +
+

Custom dimensions

+

Example setting a custom set of dimensions.

+
+
+
+
+ +

Under the hood the app uses:

+ +
+ + + \ No newline at end of file diff --git a/tmp/ex1.gif b/tmp/ex1.gif new file mode 100644 index 0000000000000000000000000000000000000000..0d57806ab547534073bcb6518ce413101a522c61 GIT binary patch literal 2005 zcma*m`8%5l0>JTHB1r3M$CVOCNfpi16{(sxqlz>%t6H=edTJeO%A$zI9TgErho>0P z#8K1{)H$uQ6356=*Qyaz>lo{9X)QbRK9A>_KKsjle);|dUt9b01PgBgL;(2&`F}wV zzz)Fw0)arF(P&v&Sp@}!qeqXbsHmu^sbMe}b#-+t7OShPi^Jhgf(#4{3_(UlMyF1l z!sGGZf=+{sK_(_9rlzK5W@hH*<^%%4!oq?`BwAWpo;`ck%E}4=01}C0{k3!d!^XzO z*4CCxCQ~Ssix)3CIXO8yJ72zh*~P`h)z#I_&Fw1a+5z{kc^vQr{Q&av^78ifz7Dzp zx(T{<>(=etw|#tk?%uuY>+9?1=jZS59{~D0C@?VaN6`KI_k)6hf`fxYLPA1AL&L(t z9)QBb!y_UhA|oSdG+I2!K*Y;1gdd_qD3gTY8jN_qrJPEKYrnJFnLEEX#@ zHI>a~r>Cc9W@bKq{5UHsD?2+oCnqN_FOS3F@OZqUqN0+LlG4)Bva+)B1J4gse66yw zvIvi^VfDGqba^b8~a= z-@l)qpI=;DTv}RMUS3{VSy^3OU0YjQKd=GX1Z{0?ef;?G6KH#Tdk6Fx^aZ53FXL$A ze94+bwK;8sheQ7uLURWJx%o#8{+#2_O(3W}$RQNQu8PwZi&E5g7gQB=B+6-%bM301 zb|ott-+L>l=60uItsi0R`8;6;?oz3{kYCuFg}>30YhP2;pF;>*d@HOe9>@n`rH_$o zOa95V%h31eseLw7Oy!dE$aST|Wv(^%CVT42Mk~EK9v!>zqI|r@XQ#x`oP(q zybJXelg(ipi<7PMyqc0{_N2FVtJw=Xz929=K7VX)(NAu*$+|)X#rH+p|nJ= zY&>P|flN_=J0t$;ub0vF=NA+nAfE5JC0BF-NMBKvZ?RzV%y#r3FHLECHeV916e4Kk z-tbbVu53?tE5qXh6V*pgbRLt5BuvwRo#oLfKxgbnTLmSZ;Ajn1{B-wWxQ#%AbksAu z062c#RU9oP&5P5pjIi?9n)nI5F!I4zN377jP?kHBngb^%ONUk;atdIv~)@4+1;kmvaQ zg^9X7&x$#!Ri)6qeCapy+%!+G!^e?6cve30jZ-q`oj_9#Ng0DaGKU)y+3+s}O{&^B zZtNM9up6XR{aVYnRd*=2M2>Z*eKi%?@l8ZI@HRX-pdRtzSe4?}(lof*M^lPC1~u+rjKFpd?cxkU(Va z0Fa2X!T*OUe@`ApljB3F9cr5rms|`@hp#BnYWwr9M9e6*1n`qmh`SpkiJd;IoHpqi zscH|{YU!05avbunhlZ&+3r!1NYRbvV%S45W;Ku?8GssO3Dr%oj*Q<1#V`>-=p*9^A z%vp-H3fmoh>raS#@V`5T?$fsC)3wQl zUwHER26K@avI?-IxKFKj_zq*T4?jv?SIJK|+|QV1}^-#G00}btglXxyJONa8*YI zug#j)QUaM=%m=$};=k5dVSQZnPl9f%&ugi4G!H9jFZf<{oz0-|w3LK`^ThQuHj}5L zXD=jQT~E*MB)L#38hfqMc8wtY5j2(v(VsR#sL~QBhS@ zRZ~+_hiPbNfFP);sj024t)ru}efxG@U0r>cfq}sen4zJek&)5PojWNoW0(od)YR0> z%*@=}+yZ84X=!C;Weu~jv9Yza-MxFaot+&7K{OhTPNzFLIk~vFxVyW1czAevdU|C-hp`l@6Vd3H7moHzwa^=d^t5+i;^X75UAx9+ zvy+mNl9Q8DQc_Y=Q`6GY($mv#-n^NanVFT9m7SfPlarH|mzSTPUr-&9pqRew|S9WIy4#8a4`IQpTo#V_c>AP(i^6_;Sw{+kR6epqX!Yg}T$jC78@8;bbDrFYB zctr-5D^)y-CweJ2X_ry@Se^1?m@%rF5-MOyyl@m>uRzFVk)c-#9 zI2t9X;nq+!^OPNg!6E!RA^#+tW1*`_~D_BL|o2kz3YYq&q;eHbe9syN*D zuy$d%DxfFNy{T?-ydh*^vahNB I;$!(LQIC;|qbc|JusVn(ih#^rk0B|NdoO&!6 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 literal 0 HcmV?d00001 diff --git a/tmp/serve1.gif b/tmp/serve1.gif new file mode 100644 index 0000000000000000000000000000000000000000..37bd1a59031bc87a9234aa7bd330d4a1a32ea4df GIT binary patch literal 59162 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 DX2ND~ literal 0 HcmV?d00001 diff --git a/tmp/serve3.gif b/tmp/serve3.gif new file mode 100644 index 0000000000000000000000000000000000000000..482cb3fb0e160bba1e48a1c2c3a1e22dd7d45815 GIT binary patch literal 53778 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 VeTFIOb!(aYqg1vH+FFp6{{?6>iM{{; literal 0 HcmV?d00001 -- GitLab