-
Notifications
You must be signed in to change notification settings - Fork 0
/
generate.jsx
54 lines (28 loc) · 836 Bytes
/
generate.jsx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include json2.js
//saveJpeg('test');
(function main() {
var jsonFile = loadJson('db.json');
var textFolder = app.activeDocument.layerSets.getByName('textLayer');
var textLayer = textFolder.layers[0];
for (var i = 0; i<jsonFile.length; i++) {
var textJson = jsonFile[i];
textLayer.textItem.contents = textJson.text;
saveImg(i);
}
})();
function saveImg(name) {
var doc = app.activeDocument;
var file = new File(doc.path + '/' + name + '.jpg');
var opts = new JPEGSaveOptions();
opts.quality = 7;
doc.saveAs(file, opts, true);
}
function loadJson(relPath){
var script = new File($.fileName);
var doc = app.activeDocument;
var jsonFile = new File(doc.path + '/' + relPath);
jsonFile.open('r');
var str = jsonFile.read();
jsonFile.close();
return JSON.parse(str);
}