【问题标题】:android.graphics.Bitmap on iOSiOS 上的 android.graphics.Bitmap
【发布时间】:2013-03-07 18:39:04
【问题描述】:

我正在将 Android 应用程序迁移到 iOS。

在 Android 上,我有一个 android.graphics.Bitmap 对象,但我不知道在 iOS 上可以使用哪个对象。

我想我可以使用CGBitmapContextUIImage。在《Learn Objective-C for Java Developers》一书中,我没有发现任何有用的东西。

在 Android 上,首先我必须使用 size 创建,我可以使用 Bitmap 来获取它的 JPEG 版本,或者我可以在其上绘制一些像素。

你有什么推荐给我的?

【问题讨论】:

  • 您如何在 Android 上使用 Bitmap。如果您不要求它是可变的,则可以使用 initWithData: 从原始像素信息初始化 UIImage。
  • @Benoit 我更新了我的问题,提供了有关我如何使用它的更多详细信息。

标签: android ios bitmap


【解决方案1】:

关于如何做到这一点的最佳资源将是 Apple 的绘图和打印指南,特别是 Creating New Images Using Bitmap Graphics Contexts

完成教程中列出的步骤(并执行all the necessary drawing)并获得对UIImage 的引用后,您将需要使用UIImageJPEGRepresentation 将结果保存为JPEG。

【讨论】:

    【解决方案2】:

    您需要使用的框架称为Core Graphics。该框架与 Android 不同 - 更底层但功能更强大。

    一些有趣的类和函数:
    CGImageRef - 表示图像
    CGContextRef - 表示可绘制的上下文
    CGBitmapContext - 用原始字节数据备份的上下文 - 你可以在那里绘制使用上下文函数或通过访问字节直接设置颜色值。

    您可以从UIImage 获取CGImageRef,也可以将CGImageRef 绘制到CGBitmapContext 或将UIImage 直接绘制到上下文中([UIImage draw...])。

    这些类/函数应该足以让您开始使用谷歌搜索/搜索文档。

    【讨论】:

      【解决方案3】:

      是的,你可以使用 UIImage 或 CGImage...

      UIImage 可以认为是 CGImage 的面向对象的包装器...... 但由于你来自 java 背景,我建议你使用 UIImage ...

      CGBitmapContext 是完全不同的东西。我认为它是画布,您可以在其中进行一些绘图并将您绘制的所有内容保存为图像..

      如果你仍然感到困惑..我会要求你把你的问题说清楚......我无法得到你想要达到的目标..

      【讨论】:

        猜你喜欢
        • 2013-10-18
        • 2014-05-12
        • 2011-12-02
        • 1970-01-01
        • 2019-11-18
        • 1970-01-01
        • 2020-01-22
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多