透過網頁讀取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. 無法依圖層混合模式輸出圖片






解決方法:無法解決
indian pharmacy: UsaIndiaPharm – reputable indian pharmacies
online shopping pharmacy india: UsaIndiaPharm – USA India Pharm
USA India Pharm: online shopping pharmacy india – UsaIndiaPharm
п»їlegitimate online pharmacies india india pharmacy top online pharmacy india
сайт 1win 1win7004.ru .
bitcoin dark web darknet market lists
darknet markets url dark web market
buy inderal 20mg online cheap – brand clopidogrel 75mg order methotrexate pill
USA India Pharm: USA India Pharm – buy medicines online in india
1win moldova http://www.1win5025.ru .
https://usaindiapharm.shop/# UsaIndiaPharm
Где заказать диплом по необходимой специальности?
Мы предлагаем быстро заказать диплом, который выполнен на бланке ГОЗНАКа и заверен печатями, штампами, подписями должностных лиц. Диплом способен пройти лубую проверку, даже при помощи специфических приборов. Достигайте своих целей быстро и просто с нашими дипломами.
Приобрести диплом о высшем образовании diplomv-v-ruki.ru/gde-kupit-diplom-obrazovanie-5/
http://usaindiapharm.com/# USA India Pharm
buy prescription drugs from india: best india pharmacy – USA India Pharm
UsaIndiaPharm UsaIndiaPharm USA India Pharm
I went over this internet site and I conceive you have a lot of good information, saved to bookmarks (:.
Идеальные натяжные потолки в Днепре, где ваша фантазия воплощается в жизнь, добавьте шарм вашему пространству, решение, которое преобразит ваш дом.
Современные решения для потолков от natyazhnye-potolki-dnepr.biz.ua, профессиональный подход, которые создадут уют и гармонию, сделайте шаг к преображению.
Лучшие цены на натяжные потолки в Днепре, с качеством, проверенным временем, выберите лучшее для вашего дома, закажите бесплатную консультацию.
Креативные решения для вашего интерьера, доступные на natyazhnye-potolki-dnepr.biz.ua, превратите мечты в реальность, измените пространство вокруг себя.
Натяжные потолки для квартир и офисов, для каждого интерьера, на любой вкус и цвет, выбор по вашему желанию.
Почему стоит выбрать натяжные потолки?, для вашего комфорта, долговечность и надежность, инвестируйте в качество.
Творческие идеи для натяжных потолков, где стиль и качество соединяются, обратите внимание на детали, заказ натяжного потолка стал проще.
Секреты успешного выбора потолка, в Днепре и за его пределами, выбирайте лучшее для себя, свой идеальный потолок в 3 шага.
Качество натяжных потолков — наш приоритет, от natyazhnye-potolki-dnepr.biz.ua, мы знаем, как сделать ваш потолок идеальным, сделайте свой дом лучше.
Натяжные потолки по доступным ценам, на natyazhnye-potolki-dnepr.biz.ua, где ваши мечты становятся реальностью, позвоните нам сегодня.
Преобразите свое пространство с натяжными потолками, от natyazhnye-potolki-dnepr.biz.ua, всегда профессионально, позвоните и получите ответ на все вопросы.
Идеальные потолки для вашего дома, доступные на natyazhnye-potolki-dnepr.biz.ua, выбор, который вдохновляет, обратите внимание на наши предложения.
Ваш надежный партнер в мире натяжных потолков, где качество не подвело ни разу, долговечность и стиль, сделайте свой выбор с умом.
Эстетика и функциональность натяжных потолков, в Днепре, всё для вашего комфорта и стиля, узнайте больше на нашем сайте.
Натяжные потолки: от замысла до реализации, потолки для любого стиля, долговечные и стильные решения, закажите прямо сейчас.
Преимущества натяжных потолков в вашем интерьере, от natyazhnye-potolki-dnepr.biz.ua, всё для вашего комфорта, не упустите шанс.
парящие потолки https://natyazhnye-potolki-dnepr.biz.ua/ .
Мы предлагаем дипломы любой профессии по приятным тарифам. Мы можем предложить документы техникумов, расположенных на территории всей России. Документы печатаются на бумаге самого высшего качества. Это дает возможность делать государственные дипломы, не отличимые от оригинала. lkhost.group/read-blog/48_kupit-diplom-v-moskve-s-zaneseniem.html
Где купить диплом специалиста?
Наша компания предлагает быстро и выгодно купить диплом, который выполняется на бланке ГОЗНАКа и заверен печатями, водяными знаками, подписями официальных лиц. Диплом способен пройти любые проверки, даже при использовании профессионального оборудования. Решите свои задачи быстро с нашей компанией.
Заказать диплом любого университета kupitediplom0027.ru/kuplyu-diplom-o-visshem-obrazovanii-9/
мостбет скачать мостбет скачать .
online shopping pharmacy india: pharmacy website india – Online medicine home delivery
мостбет http://www.mostbet5001.ru .
аренда авто в санкт петербурге посуточно аренда авто спб в другой город
https://usaindiapharm.com/# USA India Pharm
Доброго времени суток!
Для некоторых людей, заказать диплом ВУЗа – это острая необходимость, уникальный шанс получить достойную работу. Но для кого-то – это очевидное желание не терять время на учебу в институте. Что бы ни толкнуло вас на такой шаг, наша фирма готова помочь. Оперативно, профессионально и выгодно изготовим диплом любого года выпуска на государственных бланках с реальными подписями и печатями.
Основная причина, почему многие люди прибегают к покупке документа, – желание занять хорошую работу. Например, знания позволяют специалисту устроиться на желаемую работу, но документального подтверждения квалификации не имеется. В том случае если работодателю важно наличие “корочек”, риск потерять место работы достаточно высокий.
Приобрести документ ВУЗа можно в нашей компании в Москве. Мы предлагаем документы об окончании любых университетов Российской Федерации. Вы получите диплом по любым специальностям, включая документы образца СССР. Даем 100% гарантию, что в случае проверки документов работодателем, никаких подозрений не появится.
Ситуаций, которые вынуждают заказать диплом немало. Кому-то очень срочно необходима работа, и нужно произвести впечатление на руководителя во время собеседования. Некоторые планируют попасть в серьезную компанию, для того, чтобы повысить собственный статус в обществе и в дальнейшем начать свой бизнес. Чтобы не тратить впустую годы жизни, а сразу начинать эффективную карьеру, используя имеющиеся знания, можно приобрести диплом через интернет. Вы сможете стать полезным в социуме, обретете денежную стабильность в кратчайшие сроки- купить диплом о среднем образовании
I’m amazed by the quality of this content! The author has obviously put a great amount of effort into researching and organizing the information. It’s refreshing to come across an article that not only gives valuable information but also keeps the readers hooked from start to finish. Kudos to her for producing such a brilliant work!
reputable indian online pharmacy: online shopping pharmacy india – UsaIndiaPharm
best online pharmacy india: п»їlegitimate online pharmacies india – indian pharmacies safe
Купить диплом под заказ вы можете через официальный портал компании. chatterchat.com/read-blog/69540_kupit-diplom-s-reestrom-cena.html
best online pharmacy india: online pharmacy india – USA India Pharm