我是一名具有 wxPython 经验的 Python 程序员,我正在学习 Haskell 并尝试在 wxHaskell 中编写一个小型 GUI 项目。我还没有弄清楚如何复制的 wxPython 的一个功能是 PyEmbeddedImage - 其中图像可以作为字符串存储在 Python 模块中,然后从 wxPython 访问。wxHaskell 中是否存在此功能,如果存在,您是如何做到的?
谢谢!
我是一名具有 wxPython 经验的 Python 程序员,我正在学习 Haskell 并尝试在 wxHaskell 中编写一个小型 GUI 项目。我还没有弄清楚如何复制的 wxPython 的一个功能是 PyEmbeddedImage - 其中图像可以作为字符串存储在 Python 模块中,然后从 wxPython 访问。wxHaskell 中是否存在此功能,如果存在,您是如何做到的?
谢谢!
您可以尝试使用file-embed来嵌入文件,然后用于imageCreateFromPixels
创建图像。
用于imageGetPixels
在嵌入之前准备文件(例如,创建一个 wx 应用程序,该应用程序将从资源目录加载图像并序列化到文件)
我非常喜欢 Yuras 建议使用该file-embed
包,它可以自动完成将数据嵌入到字节串中的任务。
要了解如何手动执行此操作,请查看有关已编译常量数据结构的 Haskell wiki 文章(例如,在大型映射或其他数据结构中编译)。
使用bytestring
和-XOverloadedStrings
扩展很好地避免了对神奇的未装箱值的需要。