Встроенные изображения в wxHaskell - PullRequest
3 голосов
/ 18 ноября 2010

Я программист на Python, имеющий опыт работы с wxPython, и я изучаю Haskell и изучаю небольшой GUI-проект в wxHaskell. Одна особенность из wxPython, которую я еще не выяснил, как продублировать, - это PyEmbeddedImage, где изображения могут храниться в виде строк внутри модулей Python, а затем доступны из wxPython. Существует ли эта функция в wxHaskell, и если да, то как вы это делаете?

Спасибо!

Ответы [ 2 ]

2 голосов
/ 18 ноября 2010

Вы можете попробовать использовать file-embed для встраивания файла, а затем использовать imageCreateFromPixels для создания изображения.

Используйте imageGetPixels для подготовки файла перед внедрением (например, создайте приложение wx, которое будет загружать изображение из каталога ресурсов и сериализовать в файл)

0 голосов
/ 03 мая 2011

Мне очень нравится предложение Юраса использовать пакет file-embed, который автоматизирует задачу встраивания данных в строку байтов.

Чтобы узнать, как это сделать вручную, обратитесь к статье вики на Haskell скомпилированные структуры постоянных данных (например, для компиляции в больших картах или других структурах данных).

Использование bytestring и расширения -XOverloadedStrings прекрасно исключает необходимость использования магических распакованных значений.

...