【问题标题】:Embedded images in wxHaskellHaskell 中的嵌入图像
【发布时间】:2010-11-18 06:13:15
【问题描述】:

我是一名具有 wxPython 经验的 Python 程序员,我正在学习 Haskell 并尝试在 wxHaskell 中编写一个小型 GUI 项目。我还没有弄清楚如何复制的 wxPython 的一个功能是 PyEmbeddedImage - 其中图像可以作为字符串存储在 Python 模块中,然后从 wxPython 访问。 wxHaskell 中是否有这个功能,如果有,你是怎么做的?

谢谢!

【问题讨论】:

  • 您可以使用 GHC 的魔法哈希语法嵌入字节数组。词法分析器生成器 Alex 执行此操作。不幸的是,我上次查看时找不到使用 GHC 执行此操作的正确描述(即,它是真正的技术还是被视为黑客而皱眉头)。如果您生成 Alex 词法分析器,查看生成的 *.hs 文件将显示语法。也许有人对这种技术有更好的了解?

标签: data-structures haskell static constants wxhaskell


【解决方案1】:

您可以尝试使用file-embed 嵌入文件,然后使用imageCreateFromPixels 创建图像。

使用imageGetPixels在嵌入之前准备文件(例如,创建一个wx应用程序,它将从资源目录加载图像并序列化到文件)

【讨论】:

    【解决方案2】:

    我非常喜欢 Yuras 建议使用 file-embed 包,它可以自动将数据嵌入到字节串中。

    要了解如何手动执行此操作,请查看 compiled constant data structures 上的 Haskell wiki 文章(例如,在大型地图或其他数据结构中编译)。

    使用bytestring-XOverloadedStrings 扩展很好地避免了对神奇未装箱值的需要。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-16
      • 1970-01-01
      • 2021-12-31
      • 1970-01-01
      • 2018-07-06
      • 1970-01-01
      • 2016-10-29
      • 1970-01-01
      相关资源
      最近更新 更多