透過網頁讀取Photoshop PSD檔案內容
在專案中有需要透過網頁來讀取Photoshop PSD檔案的內部資訊,我們透過PSD.js(備用載點)來實現這樣的功能,在官方提供的功能展示頁中,我們可以看到在頁面中只需引入psd.min.js後,加入透過少量的Javascript就可以針對PSD進行解析。
<!DOCTYPE html> <html> <head> <title>psd.js image example</title> <style type="text/css"> body, html { padding: 0; margin: 0; } #dropzone { width: 500px; height: 100px; border: 1px #ababab dashed; margin: 50px auto; } #dropzone p { text-align: center; line-height: 100px; margin: 0; padding: 0; } #image { text-align: center; } </style> <script type="text/javascript" src="psd.min.js"></script> </head> <body> <div id="dropzone"> <p>Drop here</p> </div> <div id="image"></div> <pre id="data"></pre> <script type="text/javascript"> (function () { var PSD = require('psd'); document.getElementById('dropzone').addEventListener('dragover', onDragOver, true); document.getElementById('dropzone').addEventListener('drop', onDrop, true); function onDragOver(e) { e.stopPropagation(); e.preventDefault(); e.dataTransfer.dropEffect = 'copy'; } function onDrop(e) { e.stopPropagation(); e.preventDefault(); PSD.fromEvent(e).then(function (psd) { var data = JSON.stringify(psd.tree().export(), undefined, 2); document.getElementById('data').innerHTML = data; document.getElementById('image').appendChild(psd.image.toPng()); }); } }()); </script> </body> </html>
我們透過下圖這樣的一個PSD檔案對頁面進行測試,檔案中共有三個圖層,包含一個文字圖層。
![](https://cloudlab.tw/wp/wp-content/uploads/2020/04/2020-01-14_091102.png)
頁面將PSD分析出結果後,以json格式顯示在頁面上,可以看到文字圖層的部分,不僅能讀到圖層名稱也包含文字內容和字型名稱。
{ "children": [ { "type": "layer", "visible": true, "opacity": 1, "blendingMode": "normal", "name": "Photoshop Text", "left": 302, "right": 723, "top": 90, "bottom": 128, "height": 38, "width": 421, "mask": {}, "text": { "value": "THIS IS TEXT LAYER", "font": { "name": "MyriadPro-Regular\u0000", "sizes": [ 53 ], "colors": [ [ 0, 0, 0, 255 ] ], "alignment": [ "center" ] }, "left": 0, "top": 0, "right": 0, "bottom": 0, "transform": { "xx": 1, "xy": 0, "yx": 0, "yy": 1, "tx": 513, "ty": 127 } }, "image": {} }, { "type": "layer", "visible": true, "opacity": 1, "blendingMode": "normal", "name": "PSD Icon", "left": 287, "right": 738, "top": 209, "bottom": 669, "height": 460, "width": 451, "mask": {}, "image": {} }, { "type": "layer", "visible": true, "opacity": 1, "blendingMode": "normal", "name": "Background", "left": 0, "right": 1024, "top": 0, "bottom": 800, "height": 800, "width": 1024, "mask": {}, "image": {} } ], "document": { "width": 1024, "height": 800, "resources": { "layerComps": [], "guides": [], "slices": [] } } }
наркологическая срочная помощь наркологическая срочная помощь .
частная скорая наркологическая помощь частная скорая наркологическая помощь .
срочная наркологическая помощь срочная наркологическая помощь .
https://fastpillsformen.com/# Sildenafil 100mg price
срочное изготовление загранпаспорта срочное изготовление загранпаспорта .
как вызвать наркологическую скорую помощь в москве как вызвать наркологическую скорую помощь в москве .
неотложная наркологическая помощь в москве http://www.klin.0pk.me/viewtopic.php?id=4428/ .
купить срочно дипломы о высшем образовании вуза [url=https://2orik-diploms.ru/]2orik-diploms.ru[/url] .
order viagra: FastPillsForMen – Viagra tablet online
диплом купить в красноярске
Можно ли быстро купить диплом старого образца и в чем подвох?
The 1win promo code: MAX500WIN. This 1Win bonus code 2025 rewards new players with a 500% bonus up to $1025. Valid codes for receiving bonuses without a deposit for new and old users. Hurry to get them today! Activate the promo code 1win and get a generous welcome bonus of up to 500% on your first four deposits.
https://social.instinxtreme.com/read-blog/15356 – promo code for 1win
купить настоящий диплом гознак [url=https://2orik-diploms.ru/]купить настоящий диплом гознак[/url] .
купить диплом с занесением фрдо [url=https://2orik-diploms.ru/]2orik-diploms.ru[/url] .
купить аттестат в иркутске
можно ли купить диплом
срочно сделать загранпаспорт срочно сделать загранпаспорт .
частная скорая наркологическая помощь частная скорая наркологическая помощь .
скорая наркологическая помощь на дому в москве vishivayu.ukrbb.net/viewtopic.php?f=12&t=13503 .
скорая наркологическая помощь в москве https://klin.0pk.me/viewtopic.php?id=4428/ .
This is my first time pay a quick visit at here and i am truly impressed to read everthing at alone place.
https://bike-drive.com.ua/diy-headlight-sealing-guide.html
сколько стоит сделать загранпаспорт сколько стоит сделать загранпаспорт .
срочно сделать загранпаспорт срочно сделать загранпаспорт .
Biography of Spanish footballer Pedri https://pedri-bd.com statistics at Barcelona, ??games with teammate Gavi, inclusion in the national team for Euro, meme with Cristiano Ronaldo.
сделать загранпаспорт быстро http://www.guryevsk.forum24.ru/?1-4-0-00000570-000-0-0-1735286442/ .
наркологическая скорая в москве наркологическая скорая в москве .
вызов нарколога на дом частная скорая помощь вызов нарколога на дом частная скорая помощь .
как вызвать наркологическую скорую помощь в москве как вызвать наркологическую скорую помощь в москве .
Biography of Spanish footballer Pedri https://pedri-bd.com statistics at Barcelona, ??games with teammate Gavi, inclusion in the national team for Euro, meme with Cristiano Ronaldo.
сколько стоит сделать загранпаспорт [url=http://taksafonchik.borda.ru/?1-3-0-00017298-000-0-0-1735285727/]сколько стоит сделать загранпаспорт[/url] .