透過網頁讀取PSD後,依圖層輸出PNG檔案
在前面介紹過網頁可以讀取PSD檔案並擷取到該檔案的資訊,接著我們會希望能透過網頁上傳PSD檔之後,依照圖層來輸出圖片,同樣是利用PSD.js來輔助進行,可以透過我們製作的範例頁面來進行輸出測試。
預設輸出效果
透過PSD.js可將PSD內的各圖層輸出成PNG圖檔,亦可轉成Base 64圖檔格式,惟輸出時每個圖檔的尺寸並不會根據整體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 PSD here</p> </div> <div id="image"></div> <pre id="data"></pre> <script type="text/javascript"> (function () { const 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) { for (var i = 0; i < psd.layers.length; i ++){ document.getElementById('image').appendChild(psd.layers[i].image.toPng()); } }); } }()); </script> </body> </html>
依照整體PSD配置進行輸出
我們希望讓每個圖片在輸出後能保時相同的尺寸,也就是依照PSD的畫布大小來輸出每一張圖檔,但在原生PSD.js中並不具備這樣的功能,於是我們透過下述的方式來達成:
- 擷取PSD資訊並將圖檔轉為Base 64格式
- 產生與PSD尺寸大小相同的HTML Canvas
- 將產生的Base 64圖檔,依照原始位置放入Canvas中
- 將Canvas轉成PNG圖檔




可以參考我們製作的範例頁面
<!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 PSD here</p> </div> <div id="image"></div> <pre id="data"></pre> <script type="text/javascript"> (function () { const 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) { const PSDWidth = psd.tree().width; const PSDHeight = psd.tree().height; for (var i = 0; i < psd.layers.length; i ++){ const img = new Image(); img.src = psd.layers[i].image.toBase64(); console.log(psd); const layerWidth = psd.layers[i].width; const layerHeight = psd.layers[i].height; const layerLeft = psd.layers[i].left; const layerTop = psd.layers[i].top; const canvas = document.createElement("canvas"); canvas.setAttribute('class', "canvas"); canvas.width = PSDWidth; canvas.height = PSDHeight; console.log("canvas :", canvas); img.onload = function(){ canvas.getContext("2d").drawImage(img, layerLeft, layerTop, layerWidth, layerHeight); document.getElementById('image').appendChild(canvas); } } }); } }()); </script> </body> </html>
PSD檔案輸出限制
1. 無法輸出帶有效果的圖片
在PSD中我們可能會針對圖層套用一些效果,例如:陰影、光暈、筆畫…等等,但在輸出後的圖檔將不會帶有這些效果。



解決方法:透過點陣化圖層效果,即可輸出相對應的圖檔。
2. 無法輸出帶有遮色片效果的圖片



解決方法:將圖層轉為智慧型物件,即可輸出相對應的圖檔。
3. 無法依圖層混合模式輸出圖片






解決方法:無法解決
She and her colleagues reviewed data collected from about 20,000 Australian families over a period of 16 years with participants entering the study when the children were 1-year-old.ラブドール 高級
” Each type is distinguished from the others by both its degree of superficiality and its temporal aspects.ラブドール 高級Wentland and Reissing argue that one-night stands are the most superficial encounters,
there was also a connection there.So that could be another motivating factor for some.リアル ラブドール
sexually repressed the Krakow researcher found that as her sample grew older,their views of sex changed.オナホ 新作
This sex difference may be in part due to the findings above revealing that dominance (rated by men) is more important than attractiveness (rated by women) for sexual success.Bigger muscles might not be highly attractive to women,<a href="https://www.erdoll.com/tag/siliconelovedoll.htmlラブドール 男
https://mexicanpharminter.shop/# MexicanPharmInter
canadianpharmacyworld com
ラブドールThe class Schoen introduced used a textbook,but he also saw a great need for visual aids.
making it easy to tackle challenges.ドール アダルトIn some cases,
It might be a one-night stand,ラブドール 女性 用or it may have its own jagged lifeline.
enjoyment,<a href="https://www.erdoll.com/tag/siliconelovedoll.htmlラブドール 男 happiness,
オナホ 新作”Even in culturally conservative,largely sex-negative cultures,
Schoen’s updates are timely,sensitive,ラブドール
Even without hard evidence,we know intuitively that children add strain to most marriages.ラブドール 販売
This entails regularly journaling or thinking about your feelings and experiences and identifying areas for personal growth or changes you’d like to make in your life.ラブドール 販売Having the focus on yourself and what you’d like to work on instead of your partner.
These patterns suggest that choking is becoming (or is already) a common aspect of college students’ partnered sexual repertoires.ラブドール 女性 用” 2Few of these women and men understand how dangerous it is to be choked during sex.
as I noted earlier.<a href="https://www.erdoll.com/tag/siliconelovedoll.htmlラブドール 男For women,
too dominant,unemotionalTurn Ons: Confidence,ラブドール 女性 用
ドール アダルトand it can be discouraging when they have a female partner who cannot fathom what it feels like to ignite instantaneously.And when a man hears his partner’s complaint of “all you want is sex,
ラブドール 女性 用but it feels more spread out over my body rather than centered around my penis.Some areas are even too sensitive now,
squeeze your outer lips together,<a href="https://www.erdoll.com/tag/siliconelovedoll.htmlラブドール 男around your clitoris area.
dark market list https://github.com/aresmarketdarknetl9khn/aresmarketdarknet – darknet markets 2025
ダッチワイフ エロJust under half of the participants in this study identified tearing clothes off to mean rough sex.Punching was only endorsed by around one third of participants.
ラブドール エロwas for the person who was interested in sex to masturbat Some participants described masturbating privately while others described doing so near or beside their partner.(This did not include mutual masturbation — a shared activity — which is instead captured in the following them) Masturbation was described by some participants as including the use of pornography; for others it included reading romantic novels and/or erotica.
http://mexicanpharminter.com/# mexican pharmacy online order
ラブドール エロIn BDSM the submissive (or “sub”) willingly grants the dominant (or “dom”) power over them,and they do so out of trust and respect.
ドール アダルトyou’ll see a promise for a third post; despite the large delay between those blogs and this one,the close of May 2021 is ideal for self-pleasure tips.
) These women also tended to say more positive things about their relationships in their post-sex disclosures to their lovers.The physical act of sex may not even be necessary to increase self-disclosure,エロ ラブドール
Three groups were identified for comparison: women who had orgasm difficulty but were not distressed by it,ドール アダルトwomen who were distressed,
ラブドール エロThis takes us right back to a woman’s cardinal evolutionary need to find a male who will never abandon her and can,therefore,
https://mexicanpharminter.shop/# MexicanPharmInter