在Android和iOS中读取静态图像
来源:互联网 发布:goeasy实现java推送 编辑:程序博客网 时间:2024/05/17 08:02
在iOS中读取静态图像
在使用swift语言编写iOS代码时,若想通过SWIFT直接读取指定的图像,可通过下列方法实现。
1. 把需要读取的图像添加到Xcode项目中
2. 在需要读图像的地方使用如下代码读image
let Img1 = UIImage(named:"img1.png") let Img2 = UIImage(named:"img2.png")
读取成功后就可以对Img1和Img2进行操作了。
在Android中读取静态图像
在Android中读取静态图像,需要首先把图像放到 res的drawable-hdpi、drawable-mdpi、drawable-ldpi文件夹中,然后可通过如下语句读取。
Bitmap bitmap=BitmapFactory.decodeStream(getClass().getResourceAsStream(“/res/drawable/img1.bmp”));
但这样读取到的图像分辨率与原图不一致。如果要求读取到的图像分辨率跟原图保持一致则要麻烦一些。可通过如下自定义函数来实现读取的图像分辨率与原图一样。
private Bitmap decodeResource(Resources resources, int id) { TypedValue value = new TypedValue(); resources.openRawResource(id, value); BitmapFactory.Options opts = new BitmapFactory.Options(); opts.inTargetDensity = value.density; return BitmapFactory.decodeResource(resources, id, opts); }
使用该函数读取图像成功后,可通过如下的方式把图像转化为整形数组。
Bitmap bmp1 = decodeResource(getResources(),R.drawable.img1);int[] dataImg = new int [bmp1.getWidth() * bmp1.getHeight()];bmp1.getPixels(dataImg, 0, bmp1.getWidth(), 0, 0, bmp1.getWidth(), bmp1.getHeight());
注意:
原本图像的数据是Byte流的形式,以上dataImg的存储方式中,刚好图像的RGBA四个Byte等于一个Int。这样可以提高空间利用率。
Reference:
http://blog.sina.com.cn/s/blog_637607ec010158du.html
0 0
- 在Android和iOS中读取静态图像
- 在MFC中利用HALCON读取图像,并显示在主窗口和picture空间中
- 在iOS中读取本地文件
- opencv学习——在MFC中读取和显示图像
- [iOS 静态库]在iOS中创建静态库
- 在Android中读取文件
- Android中图像和图像处理
- 在iOS中使用静态库
- 在iOS中使用静态库
- [转]在iOS中创建静态库
- 在iOS中创建静态库
- 在iOS中创建静态库
- 在iOS中创建静态库
- 在iOS中创建静态库
- 在iOS中创建静态库
- 在iOS中创建静态库
- 在iOS中创建静态库
- 在iOS中创建静态库
- HDU 3555 Bomb 【数位dp】
- 移动应用中html的head配置让界面适应屏幕
- .net 将session存入数据库
- maven生命周期
- 数据结构实验之栈八:栈的基本操作 简单方法
- 在Android和iOS中读取静态图像
- 跳房子
- GCC编译选项--"-fno-strict-aliasing"
- Linux菜鸟学习之网络浅入
- 杭电ACM2005题(第几天?)------Java语言
- java 集合框架简介
- 24点游戏
- C#中internal关键字的作用
- makefile编写小结:多目录,单Makefile