`
bashenmail
  • 浏览: 228774 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android图片总结

阅读更多

图片缩放:

public static Drawable resizeImage(Drawable d, int w, int h) {

        // load the origial Bitmap

        Bitmap BitmapOrg = ((BitmapDrawable) d).getBitmap();

        int width = BitmapOrg.getWidth();

        int height = BitmapOrg.getHeight();

        int newWidth = w;

        int newHeight = h;

        // calculate the scale

        float scaleWidth = ((float) newWidth) / width;

        float scaleHeight = ((float) newHeight) / height;

        // create a matrix for the manipulation

        Matrix matrix = new Matrix();

        // resize the Bitmap

        matrix.postScale(scaleWidth, scaleHeight);

        Bitmap resizedBitmap = Bitmap.createBitmap(BitmapOrg, 0, 0, width,

                        height, matrix, true);

        // make a Drawable from Bitmap to allow to set the Bitmap

        // to the ImageView, ImageButton or what ever

        return new BitmapDrawable(resizedBitmap);

	}

 

public static Drawable resizeImage(Bitmap bitmap, int w, int h) {



                // load the origial Bitmap

                Bitmap BitmapOrg = bitmap;



                int width = BitmapOrg.getWidth();

                int height = BitmapOrg.getHeight();

                int newWidth = w;

                int newHeight = h;



                // calculate the scale

                float scaleWidth = ((float) newWidth) / width;

                float scaleHeight = ((float) newHeight) / height;



                // create a matrix for the manipulation

                Matrix matrix = new Matrix();

                // resize the Bitmap

                matrix.postScale(scaleWidth, scaleHeight);

                // if you want to rotate the Bitmap

                // matrix.postRotate(45);



                // recreate the new Bitmap

                Bitmap resizedBitmap = Bitmap.createBitmap(BitmapOrg, 0, 0, width,

                                height, matrix, true);



                // make a Drawable from Bitmap to allow to set the Bitmap

                // to the ImageView, ImageButton or what ever

                return new BitmapDrawable(resizedBitmap);



        }

 图片写字:

/**
	 * 图片上画字
	 * */
	private Bitmap drawTextAtBitmap(Bitmap bitmap,String text){
		
		int x = bitmap.getWidth();
		
		int y = bitmap.getHeight();
		
		// 创建一个和原图同样大小的位图
		Bitmap newbit = Bitmap.createBitmap(x, y, Bitmap.Config.ARGB_8888);
		
		Canvas canvas = new Canvas(newbit);
		
		Paint paint = new Paint();
		
		// 在原始位置0,0插入原图
		canvas.drawBitmap(bitmap, 0, 0, paint);
		
		paint.setColor(Color.parseColor("#dedbde"));
		
		paint.setTextSize(20);
		
		// 在原图指定位置写上字
		canvas.drawText(text, 53 , 30, paint);
		
		canvas.save(Canvas.ALL_SAVE_FLAG);
		
		// 存储
		canvas.restore();
		
		return newbit;
	}

 

分享到:
评论
3 楼 elena_java 2010-09-21  
字串太长不能自动换行怎么办?!
2 楼 bashenmail 2010-08-18  
jn615 写道
return newbit; 
之后呢?如何处理呀?我想知道怎么把newbit写道文件夹下


Bitmap 有个这个方法:
boolean compress(Bitmap.CompressFormat format, int quality, OutputStream stream)

其中stream 即是你的输出流

参数:
format The format of the compressed image
quality Hint to the compressor, 0-100. 0 meaning compress for small size, 100 meaning compress for max quality. Some formats, like PNG which is lossless, will ignore the quality setting
stream The outputstream to write the compressed data.
File f = new File("your path");
FileOutputStream output = new FileOutputStream(f);
//mBitmap 即为 return newbit
mBitmap.compress(Bitmap.CompressFormat.PNG, 100, output);
output.flush();
output.close();

异常请自己捕捉,我就不写了。
1 楼 jn615 2010-08-16  
return newbit; 
之后呢?如何处理呀?我想知道怎么把newbit写道文件夹下

相关推荐

    android图片处理总结

    以下是对Android图片处理的一些关键知识点的详细阐述: 1. **图片加载**:在Android中,Bitmap是用于表示图片的基础类。然而,直接从磁盘或网络加载大图可能会导致内存溢出。因此,我们通常使用图片库如Glide、...

    Android图片浏览器报告[参照].pdf

    "Android图片浏览器报告" Android图片浏览器是一种移动应用程序,旨在提供一个便捷的图片浏览体验。通过实现一个完整的软件,体验软件项目开发的工作流程,加深对相关理论知识的理解,提高实际分析设计能力。 在...

    android 图片滑动浏览

    总结一下,实现Android图片滑动浏览的关键点包括: 1. 使用`ViewPager`作为页面容器。 2. 创建适配器,将图片数据绑定到`ViewPager`。 3. 选择合适的图片加载库,如Glide或Picasso。 4. 实现手势识别,处理滑动事件...

    Android Spinner实现图片列表

    总结,这个“Android Spinner实现图片列表”的示例提供了一种方法,使Spinner能够以更直观、更具吸引力的方式展示选项,这对于提升用户界面的交互性和美观度非常有价值。通过学习和理解这个示例,开发者可以将这种...

    Android图片剪切并存入数据库

    本项目"Android图片剪切并存入数据库"正是关注这个场景,下面将详细解释实现这个功能的关键知识点。 首先,我们需要使用`Intent`来实现从相册或相机获取图片的功能。通过启动一个系统级别的`Intent`,用户可以选择...

    Android图片下载显示

    总结起来,实现Android图片下载显示,尤其是相册效果,需要综合运用网络请求库、图片加载库、内存管理、缓存策略以及UI组件。选择合适的工具和方法,能提升用户体验,同时保证应用的性能和稳定性。在实际开发中,要...

    Android图片质量压缩

    总结来说,Android图片质量压缩涉及到了图片的加载、压缩、保存以及上传等多个环节。开发者可以根据实际需求,灵活运用各种工具和方法来实现高效且节省资源的图片处理。在处理大量图片时,合理使用缓存和第三方库...

    Android高效压缩图片不失真的方法总结

    本篇文章将详细总结Android中实现这一目标的方法和策略。 首先,理解图片压缩的基本原理至关重要。图片通常由像素矩阵构成,每个像素包含红、绿、蓝三种颜色分量,以及可能的透明度信息(阿尔法通道)。压缩的目标...

    Android开发实现保存图片到手机相册功能

    Android开发实现保存图片到手机相册功能 Android开发实现保存图片到手机相册功能是Android开发中的一种常见需求。当我们需要在Android应用程序中保存图片到手机相册时,需要考虑多种因素,例如手机品牌、图片格式、...

    Android知识系统总结

    Android知识系统总结是一个涵盖广泛的主题,它涉及到Android操作系统的核心概念、开发环境的搭建、应用程序的结构、用户界面设计、数据存储、网络通信、多线程处理、性能优化等多个方面。以下是对这些关键知识点的...

    Android图片点击震动效果

    总结一下,实现Android图片点击震动效果主要涉及以下几个步骤: 1. 在AndroidManifest.xml中添加`VIBRATE`权限。 2. 在布局文件中设置图片的点击事件。 3. 在Activity或Fragment中获取`Vibrator`实例并实现点击震动...

    android图片文件的上传

    总结,Android图片文件上传的核心步骤包括:获取图片文件、设置网络请求、读取图片文件并写入HTTP请求流、处理服务器响应。理解这些概念并熟练运用,能帮助你在Android应用开发中实现高效、稳定的图片上传功能。

    android布局属性大全(总结)

    ### Android布局属性详解 #### 一、概述 在Android应用开发过程中,良好的用户界面设计是提升用户体验的关键之一。其中,布局是构成用户界面的基础。本文档汇总了Android中常用的布局属性,旨在帮助开发者更好地...

    Android-Android开发启动app弹出一张广告图片Dialog可以查看大图查看某个图片功能

    总结起来,实现“Android开发启动app弹出一张广告图片,Dialog可以查看大图,查看某个图片功能”涉及以下步骤: 1. 创建自定义Dialog,包含广告图片和“查看大图”按钮。 2. 使用图片加载库(如Glide)加载广告图片...

    Android图片处理工具类

    总结来说,Android的base64图片处理工具类是开发者在处理图片数据时的重要助手,它简化了图片在网络和本地存储中的转换过程。理解并熟练运用这些工具类,能够帮助你更高效地进行Android应用的开发。

    Android 下载图片保存到相册

    总结一下,Android下载图片到相册涉及的主要步骤包括:请求权限、发起网络请求下载图片、保存图片到公共外部存储目录、以及通知媒体库更新。在实现这些功能时,可以利用Volley、OkHttp等网络库,以及Android的文件...

    android 图片点击放大

    总结,实现"图片点击放大"这一功能,开发者需要掌握ImageView的ScaleType属性,理解Matrix的图像变换,以及处理触摸事件的能力。同时,对于性能优化和动画效果的考虑也是提高用户体验的关键。通过学习和实践,你将...

    一个Android图片选择器

    总结来说,Android图片选择器是提升用户体验的关键组件,它的实现涉及到Android的多媒体API、图片加载库、权限管理等多个方面。通过理解并熟练运用这些技术,我们可以构建出符合用户期望的高效、易用的图片选择功能...

Global site tag (gtag.js) - Google Analytics