在Android SDK中说明可以支持的图片格式如下:png , jpg , gif,和bmp。
1.Bitmap的创建
借助于BitmapFactory。
1)资源中的图片
使用BitmapFactory获取位图
Bitmap bmp = BitmapFactory.decodeResource(this.getResources(), R.drawable.testImg);
或者是
Resources res=getResources();
//使用BitmapDrawable获取位图
//使用BitmapDrawable (InputStream is)构造一个BitmapDrawable;
//使用BitmapDrawable类的getBitmap()获取得到位图;
// 读取InputStream并得到位图
InputStream is=res.openRawResource(R.drawable.testImg);
BitmapDrawable bmpDraw=new BitmapDrawable(is);
Bitmap bmp=bmpDraw.getBitmap();
2)SD卡中的图片
Bitmap bmp = BitmapFactory.decodeFile("/sdcard/testBitmap/testImg.png")
2. 把 Bitmap 保存在sdcard中
File fImage = new File("/sdcard/testBitmap/testImg.png");
fImage.createNewFile();
FileOutputStream iStream = new FileOutputStream(fImage);
bmp.compress(CompressFormat.PNG, 100, iStream);
iStream.close();
fImage.close();
iStream =null;
fImage =null;
//写到输出流里,就保存到文件了。
3.使用网络中的图片
//图片的链接地址
String imgURLStr = "http://tx.bdimg.com/sys/portrait/item/990e6271796a7a6c170c.jpg";
URL imgURL = new URL(imgURLStr);
URLConnection conn = imgURL.openConnection();
conn.connect();
InputStream is = conn.getInputStream();
BufferedInputStream bis = new BufferedInputStream(is);
//下载图片
Bitmap bmp = BitmapFactory.decodeStream(bis);
//关闭Stream
bis.close();
is.close();
imgURL =null;
4.显示图片
1)转换为BitmapDrawable对象显示位图
// 转换为BitmapDrawable对象
BitmapDrawable bmpDraw=new BitmapDrawable(bmp);
// 显示位图
ImageView iv2 = (ImageView)findViewById(R.id.ImageView02);
iv2.setImageDrawable(bmpDraw);
2)使用Canvas类显示位图
canvas.drawBitmap(bmp, 0, 0, null);
5.缩放位图
1)将一个位图按照需求重画一遍,画后的位图就是我们需要的了,与位图的显示几乎一样:drawBitmap(Bitmap bitmap, Rect src, Rect
dst, Paint paint)。
2)在原有位图的基础上,缩放原位图,创建一个新的位图:CreateBitmap(Bitmap source, int x, int y, int width, int height,
Matrix m, boolean filter)
3)借助Canvas的scale(float sx, float sy) ,不过要注意此时整个画布都缩放了。
4)借助Matrix:
Matrix matrix=new Matrix();
matrix.postScale(0.2f, 0.2f);
Bitmap dstbmp=Bitmap.createBitmap(bmp,0,0,bmp.getWidth(),bmp.getHeight(),matrix,true);
canvas.drawBitmap(dstbmp, 10, 10, null);
6.旋转位图
借助Matrix或者Canvas来实现。
Matrix matrix=new Matrix();
matrix.postRotate(45);
Bitmap dstbmp=Bitmap.createBitmap(bmp,0,0,bmp.getWidth(), bmp.getHeight(),matrix,true);
canvas.drawBitmap(dstbmp, 10, 10, null);
分享到:
相关推荐
Ueditor1.4.3 独立上传图片使用方法,自从Ueditor1升级后监听事件失效的解决办法
类似于windows 图片和传真查看器,主要用于嵌入某些大工程做显示图片使用。
图片素材 Devexpress的使用方法图片素材 Devexpress的使用方法图片素材 Devexpress的使用方法图片素材 Devexpress的使用方法图片素材 Devexpress的使用方法图片素材 Devexpress的使用方法
此外,服务端应考虑使用高效的图片编码格式,如WebP,以减少传输数据量。 总结,本示例展示了如何利用WebSocket、Java、HTML5和Tomcat8来实现实时的图片传输功能。通过理解这些技术并熟练运用,开发者可以创建出更...
在某些时候我们使用WPF中Image控件,加载一个图之后想删除这个图片,但由于图片已经被Image占用,会提示“文件正由另一个程序使用,无法删除”之类的信息,此时可以用该方法设置Image的Source,这样图片加载后可以...
比如,中间的图片使用全尺寸布局,而其他图片则缩小比例。可以通过在`PagerAdapter`中动态设置每个页面的布局来实现。 6. **触摸事件处理**:为了响应用户的滑动操作,需要处理触摸事件。可以监听`ViewPager`的滑动...
PHP图片高斯模糊,函数直接调用形式 支持png,jpg,gif,其他图片类型可以自己扩充
在VC++(Visual C++)开发环境中,使用滚动条显示图片是一项常见的需求,尤其是在处理大尺寸图像时。本文将详细讲解如何实现这一功能,以及涉及的相关知识点。 首先,我们需要了解滚动条的基本概念。滚动条是...
这可以通过创建一个临时的OLE服务器进程,例如使用Microsoft Paint打开图片,然后使用VFP的OleCreate方法创建并加载该图片。加载后,可以将OLE对象保存到备注字段。 2. **使用Picture控件**:另一种方法是使用...
该资源主要是结合博客...免费资源仅供大家学习参考,同时项目主要是讲述Matrix的方法,在加载大图片时可能会出现越界bug,横竖屏切换都没有考虑.希望对大家有所帮助吧!By:Eastmount
本示例将深入探讨如何使用Apache POI库来替换Word文档中的文字和图片,并实现打印功能。 首先,确保在项目中正确导入了Apache POI相关的JAR包。通常,这包括poi-ooxml、poi-ooxml-schemas和commons-lang3等。这些库...
使用任意关键字 python爬取百度图片 使用任意关键字 python爬取百度图片 使用任意关键字 python爬取百度图片 使用任意关键字 python爬取百度图片 使用任意关键字 python爬取百度图片 使用任意关键字 python爬取百度...
虽然编辑器实例被隐藏,我们仍可以使用ueditor提供的API手动触发图片上传,例如调用`UE.Editor.prototype.execCommand('insertimage', imgUrls)`,其中`imgUrls`是图片URL的数组。 6. **安全性与权限控制**: 在...
使用鼠标裁剪后拼接的图片,是选取两个图片中的最大高度, 两个图片的平均宽度进行拼接的。 资源address:http://download.csdn.net/detail/liuqiaoying_lqy/5718733 在原有的图片裁剪、1×2拼接的基础上实现如下...
vue 使用kindeditor粘贴复制图片上传给自己服务器,单独图片上传,避免用户到处寻找,解决了用户粘贴复制截图时候,图片变成base64,上传给后台的时候长度过于长,所以在粘贴的时候就上传给服务器,最后以形式显示在富...
C:\Documents and Settings\Administrator\桌面\扫描图像测试 比方说,这个路径下有10张图片,可以循环点击显示这10张图片 使用FileStream 解决文件被进程占用问题。使用一个计数变量,可以头尾循环
此文件是CKEditor3.x在的配置使用,主要是正对JAVA项目的 CKEditor本身不支持图片上传功能,此文档将描述如何配置和使用图片上传 其中图片上传支持FTP服务器功能,和压缩指定大小的功能。
Android端使用retrofit上传多张图片,后端使用Php接收图片
在VC++(Visual C++)开发环境中,使用Picture控件来显示图片是一项常见的任务,尤其在创建GUI(图形用户界面)应用时。Picture控件是一个可视化组件,它允许程序员将图像嵌入到应用程序中,为用户提供直观的视觉...
3. **使用 placeholders 和 error 图片**:在图片未加载成功前,可以先显示一个占位符图片,以避免空的ImageView出现在屏幕上。如果图片加载失败,可以展示一个错误图片,并提供重试机制。 4. **同步加载策略**:...