透過網頁讀取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": [] } } }
https://azithromycin.store/# zithromax z-pak
zithromax 250 mg tablet price: buy zithromax z-pak online – zithromax online usa no prescription
list of acidic drugs purchase lamivudine pill
cost generic propecia: Finasteride buy online – get cheap propecia without a prescription
Отличный сайт! Всем рекомендую!чемпионы Европы по футболу
https://finasteride.men/# order generic propecia
buy cytotec over the counter buy cytotec online п»їcytotec pills online
buy misoprostol over the counter: Misoprostol best price in pharmacy – cytotec abortion pill
purchase cytotec: Buy Abortion Pills Online – Abortion pills online
Abortion pills online: cheap cytotec – buy cytotec
https://finasteride.men/# get cheap propecia without a prescription
generic zithromax india: cheapest azithromycin – where can i purchase zithromax online
http://misoprostol.shop/# buy cytotec over the counter
Cytotec 200mcg price: Buy Abortion Pills Online – buy cytotec
Отличный сайт! Всем рекомендую!трансферы футбола 2024
allergy pills without antihistamine order beclomethasone nasal sprays best off counter seasonal allergy
lasix generic name Buy Lasix No Prescription buy lasix online
https://finasteride.men/# cost of cheap propecia tablets
zithromax online: cheapest azithromycin – zithromax generic price
https://furosemide.pro/# furosemida 40 mg
buying generic propecia no prescription: Cheapest finasteride online – order propecia without insurance
cytotec pills buy online buy cytotec online cytotec online
Промокод букмекерской конторы 1xbet на сегодня: где взять рабочий, куда вводить на сайте и как использовать промокод бк 1xbet при регистрации . Бесплатные коды нужно вводить в специальном поле при регистрации на сайте БК или в личном кабинете пользователя, если у вас уже есть аккаунт. Все промокоды букмекерских контор. Список действующих на сегодня промокодов легальных букмекерских контор вы можете найти на сайте в разделе бонусов. Варианты получения промокодов. Зарубежная букмекерская контора 1xВet предлагает несколько вариантов получения промокодов. Бесплатные промокоды 1xBet при регистрации. 1хБет постоянно ищет новых пользователей, поэтому регистрируясь на сайте Вы и так получите до 25000 руб. при первом депозите. Но мы поможем его увеличить до 32 500, для этого введите: 1XFREE777 — увеличивает сумму депозита до 32500 р. Данные бонусы действуют только при первом депозите после регистрации, пополняя свой лицевой счет, при применении кода сумма увеличится в 2 раза, но не более 32500 рублей. Бонусные деньги вы можете ставить на спорт. В открытом доступе в интернете вы сможете найти только такие бонусы, которые мотивируют новичков стать пользователем букмекерской конторы 1хБет.
Misoprostol 200 mg buy online: buy cytotec online – buy misoprostol over the counter
http://azithromycin.store/# where can i buy zithromax capsules
http://misoprostol.shop/# Misoprostol 200 mg buy online
furosemida 40 mg: Buy Lasix – lasix 40 mg
lisinopril 20mg 37.5mg: buy lisinopril online – lisinopril pill 5 mg
https://furosemide.pro/# lasix for sale
lasix generic: Over The Counter Lasix – furosemide