2015-02-28 1 views
0

У меня есть Photoshop-документ с несколькими слоями, которые я могу включить и выключить, чтобы изображение отображало разные данные. Возможно ли разместить это изображение на странице WPF и использовать C# для включения и выключения слоев? Я немного искал поисковую информацию, но на эту тему не так много информации. Я прочитал, что вы можете использовать Expression Blend для этого, но у меня нет опыта использования этого.
Любая помощь была бы принята с благодарностью, спасибо!Можно ли программно манипулировать слоями psd-файла в WPF?

ответ

2

(Отказ от ответственности: Я инженер-программист в Microsoft, я работал на Expression Blend)

Короче говоря, нет. Нет никакой встроенной поддержки для загрузки файлов Photoshop в .NET Framework и WPF (это несмотря на поддержку Blend для загрузки документов PSD в проект - для этого у него свой собственный код), и он не поддерживает все функции присутствует в формате файла PSD).

Если вы хотите загрузить PSD-файл в свою собственную программу, вам понадобится считыватель PSD-файлов - либо напишите свой собственный (по ошибке, с учетом сложного формата файла), либо получите/лицензию на существующую библиотеку, там доступны версии с открытым исходным кодом (см. Paint.NET).

Проблема с файлами PSD заключается в том, что отдельные слои не обязательно являются простыми растрами сами по себе, а документы PSD не всегда содержат композицию с полным разрешением. Рассмотрим эффекты-слои (Яркость, Уровни и т. Д.) Или эффекты слоя (Outer Glow, Gradient Overlay и т. Д.).

Я предлагаю вместо этого Photoshop (через программу Action или Droplet) конвертировать слои вашего PSD в отдельные PNG-файлы (после применения любых эффектов), а затем загружать их в вашу программу и отображать их в соответствии с вашими требованиями.

+0

Спасибо, это была очень полезная информация! Я попробую использовать PNG-файлы. – Joe