透過網頁讀取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檔案對頁面進行測試,檔案中共有三個圖層,包含一個文字圖層。
頁面將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": [] } } }
нарколог на дом срочно нарколог на дом срочно .
вызов нарколога на дом вызов нарколога на дом .
вызвать нарколога на дом [url=http://zelenograd.rusff.me/viewtopic.php?id=1230/]вызвать нарколога на дом[/url] .
Hello this is somewhat of off topic but I was wanting to know if blogs use WYSIWYG editors or if you have to manually code with HTML. I’m starting a blog soon but have no coding skills so I wanted to get advice from someone with experience. Any help would be enormously appreciated!
смотреть сериалы онлайн бесплатно без регистрации
ciprofloxacin over the counter cipro pharmacy ciprofloxacin order online
Experience luxury redefined with mbl signature, an exclusive residential development offering elegant design and world-class amenities in the heart of JLT.
нарколог на дом в краснодаре нарколог на дом в краснодаре .
нарколог на дом нарколог на дом .
платный нарколог на дом платный нарколог на дом .
вызов нарколога на дом круглосуточно вызов нарколога на дом круглосуточно .
look at these guys https://tallyhouniforms.com/2024/06/05/rahasia-admin-riki-slot-strategi-dan-tips-untuk-meningkatkan-peluang-menang-di-dunia-slot-online/
врач нарколог на дом платный врач нарколог на дом платный .
нарколог на дом цены нарколог на дом цены .
выезд нарколога на дом выезд нарколога на дом .
нарколог на дом круглосуточно нарколог на дом круглосуточно .
евро в тенге юань в тенге .
Наш сайт предоставляет полную информацию о текущих курсах валют и моментальную конвертацию. Будь то тенге, рубли или доллары США – все данные обновляются в режиме реального времени.
Купить диплом о среднем образовании в Москве и любом другом городе
вызвать нарколога на дом вызвать нарколога на дом .
нарколог краснодар нарколог краснодар .
выезд нарколога на дом выезд нарколога на дом .
выезд нарколога на дом выезд нарколога на дом .
нарколог на дом круглосуточно нарколог на дом круглосуточно .
purchase cipro: ciprofloxacin 500mg buy online – antibiotics cipro
нарколог на дом цены нарколог на дом цены .
вызвать нарколога на дом вызвать нарколога на дом .
how much is amoxicillin prescription: Amox Star – amoxicillin where to get
нарколог на дом цены нарколог на дом цены .
нарколог на дом нарколог на дом .
вызов нарколога на дом вызов нарколога на дом .
нарколог на дом нарколог на дом .