1 | <!DOCTYPE html>
|
2 | <html>
|
3 | <head>
|
4 | <title>Jimp browser example 4</title>
|
5 | </head>
|
6 | <body>
|
7 |
|
8 | <h1> Demonstrates how to write a text over an image </h1>
|
9 | <script src="../lib/jimp.js"></script>
|
10 | <img id="pic" style="float: left; margin: 0px 20px 5px 0px;">
|
11 | <script>
|
12 | function writePic() {
|
13 | Jimp.read("lenna.png")
|
14 | .then(function (lenna) {
|
15 | var fntName = "FONT_SANS_"+fntSize.value+"_"+txtColor.value;
|
16 | var x = parseInt(txtX.value);
|
17 | var y = parseInt(txtY.value);
|
18 | var w = parseInt(txtW.value);
|
19 | console.log()
|
20 | Jimp.loadFont(Jimp[fntName]).then(function (font) {
|
21 | lenna.print(font, x, y, txtField.value, w)
|
22 | .getBase64(Jimp.AUTO, function (err, src) {
|
23 | if (err) {
|
24 | alert(err.message);
|
25 | throw err;
|
26 | }
|
27 | pic.setAttribute("src", src);
|
28 | });
|
29 | }).catch(function (err) { throw err });
|
30 | })
|
31 | .catch(function (err) {
|
32 | alert("Image load fail.\n"+err.message)
|
33 | throw err;
|
34 | });
|
35 | return false;
|
36 | }
|
37 | writePic();
|
38 | </script>
|
39 | <textarea rows="4" cols="80" id="txtField">Hi! I'm Lenna.</textarea>
|
40 | <br> <label>Size: <select id="fntSize">
|
41 | <option>8</option>
|
42 | <option>16</option>
|
43 | <option>32</option>
|
44 | <option>64</option>
|
45 | <option>128</option>
|
46 | </select></label>
|
47 | <br> <label>Color: <select id="txtColor">
|
48 | <option>BLACK</option>
|
49 | <option>WHITE</option>
|
50 | </select></label>
|
51 | <br> <label>pos X: <input id="txtX" value="0" size="3">px</label>
|
52 | <br> <label>pos Y: <input id="txtY" value="0" size="3">px</label>
|
53 | <br> <label>max Width: <input id="txtW" value="400" size="3">px</label>
|
54 | <br> <input type="button" id="btWrite" onclick="writePic(); return false" value="Write">
|
55 |
|
56 | </body>
|
57 | </html>
|