【问题标题】:Convert image data to character array将图像数据转换为字符数组
【发布时间】:2010-01-24 22:06:40
【问题描述】:

我正在为 iPhone 构建一个移动广告 sdk,并且我假设存储代表着陆页控制器 [在库中] 的按钮图标的图像的唯一方法是将图像转换为字符数组。

当我将字符数组内联定义为:

const char backButtonData[] = { 0x00, 0x01, 0xFF, ... };

...我可以这样访问它:

UIImage *backButtonImage = [UIImage imageWithData:[NSData dataWithBytesNoCopy:backButtonData length:sizeof(backButtonData) freeWhenDone:NO]];

...并使用这些图标图像设置控制器的工具栏按钮。

我四处寻找,希望找到一个脚本来获取图像数据并吐出一个字符数组,但空手而归,所以我尝试了自己,但失败了。

我需要 [希望] 是一个脚本或函数来获取数据:

NSData *imageData = UIImagePNGRepresentation(image);

并把它吐成这种格式:

0x00, 0x01, 0xFF, ... 这样我就可以将其复制并粘贴到我的源文件中。

任何想法[或链接到将执行此操作的脚本或工具]?;

【问题讨论】:

    标签: iphone image character-arrays


    【解决方案1】:

    我认为你真的应该考虑使用 UIImage 类方法+(UIImage*)imageNamed:(NSString *)name,它会为你加载一个图像文件。

    但如果您真的想将图像文件作为字符数组嵌入到您的应用中,请查看xxd 命令行工具及其-i 选项。

    【讨论】:

    • 图像不存储在应用程序中...它们必须存储在编译成 adSdk.a 文件的库 [sdk] 中。我将检查 xxd 命令行工具。 tnx 立即回复。
    • @captain cosmic oki,错过了。
    【解决方案2】:

    非常感谢 epatel,这篇文章也为我省了一些麻烦。

    xxd -i

    非常适合创建二进制数据的 char 数组。

    【讨论】:

      猜你喜欢
      • 2015-07-07
      • 1970-01-01
      • 1970-01-01
      • 2015-08-16
      • 2013-05-19
      • 2014-07-03
      • 2018-12-14
      相关资源
      最近更新 更多