导航:首页 > 操作系统 > android等比例缩放图片

android等比例缩放图片

发布时间:2022-06-09 08:17:57

android中有方法可以对图片进行缩放吗(不是缩放画布,是真的改变了原来图片的大小)

scaleType:CENTER /center 在视图中心显示图片,并且不缩放图片CENTER_CROP / centerCrop 按比例缩放图片,使得图片长 (宽)的大于等于视图的相应维度CENTER_INSIDE / centerInside 按比例缩放图片,使得图片长 (宽)的小于等于视图的相应维度FIT_CENTER / fitCenter 按比例缩放图片到视图的最小边,居中显示FIT_END / fitEnd 按比例缩放图片到视图的最小边,显示在视图的下部分位置FIT_START / fitStart 把图片按比例扩大/缩小到视图的最小边,显示在视图的上部分位置FIT_XY / fitXY 把图片不按比例缩放到视图的大小显示MATRIX / matrix 用矩阵来绘制 到安卓巴士网站查看回答详情>>

㈡ android等比例缩放图片的方法

itmap icon = null;//原始图片
int width = icon.getWidth(), height = icon.getHeight();
float scaleRate = 0.8f;//缩小的比例
while(width >= 300 || width >= 300) {
Matrix matrix = new Matrix();
matrix.postScale(width * scaleRate, height * scaleRate);
// 得到新的图片
Bitmap newIcon = Bitmap.createBitmap(icon, 0, 0, width, height, matrix, true);
icon.recycle();
icon = newIcon;
width = icon.getWidth(), height = icon.getHeight();
}int width = icon.getWidth(), height = icon.getHeight();

if(width > 300 || width > 300) {
float scaleRate = width > height ? 300 / width : 300 / height;
Matrix matrix = new Matrix();
matrix.postScale(width * scaleRate, height * scaleRate);
// 得到新的图片
Bitmap newIcon = Bitmap.createBitmap(icon, 0, 0, width, height, matrix, true);
icon.recycle();
icon = newIcon;
}

㈢ android画一张图片,缩放显示并且放大不失真

这个问题涉及图片呈现的一整套方案。归纳而言这个问题是:给定任意尺寸的图片如何在任意尺寸分辨率的机器上显示?并且能够保持图片原来的清晰度。一般采用如下方案来解决这个问题:
1、首先给原图片创建一块内存缓存副本。如果不创建缓存的话,那么任何一次图片的剪切、缩放等操作都将丢失图片信息,使得保持原有图片的滋味那是不可能的。当然对于一般的程序而言,这个操作只需要调用简单的API即可完成。例如Android,只需要创建一个对应图片的Bitmap对象即可。
2、如果想要在设备显示的初始化状态图片即为满屏,那么必须调用相关API动态获得设备的分辨率。然后按设备分辨率的大小对图片进行剪切并显示到设备上。
注意:在获得图片分辨率后,如果分辨率大于图片,那不用说,直接显示图片就好。但是如果小于图片,此时有多种选择。可以将图片缩放至屏幕分辨率(图片纵横比可能失真)也可以选择剪切图片的一部分显示到屏幕上。
3、对图片进行缩放或者移动
我们在图片第一次显示的时候无论是选择缩放还是剪切,都要记录下图片被缩放的比例或者剪辑的范围。这样在用户再次移动或者缩放的时候,根据之前的缩放比例和移动坐标,计算当前应该移动的位置和缩放比例。并且根据计算结果对缓存的图片进行剪辑并显示到屏幕上。
其实整个过程可以概括为如下流程:
——>图片的初始缩放比例和显示起点坐标——>用户触发缩放或者移动操作——>计算新的图片缩放比例和显示起点坐标——>根据新的缩放比例和显示起点坐标剪辑缓存图片并绘制到屏幕上......

㈣ android 更改图片的大小,比方说原图片是1800*2400px,现在我需要给定宽度为600px,等比例缩小

ThumbnailUtils.extractThumbnail(source, width, height)

㈤ android 中如何原比例的显示图片,无缩放显示

这里面的参数你都试一下,应该有一个可以。 ImageView的ScaleType属性 ImageView的属性android:scaleType,即 ImageView.setScaleType(ImageView.ScaleType)属性如下:CENTER /center 按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截 取图片的居中部分显示 CENTER_CROP / centerCrop 按比例扩大图片的size居中显示,使得图片长 (宽)等于或大于View的长(宽) CENTER_INSIDE / centerInside 将图片的内容完整居中显示,通过按比例缩小 或原来的size使得图片长/宽等于或小于View的长/宽 FIT_CENTER / fitCenter 把图片按比例扩大/缩小到View的宽度,居中显示 FIT_END / fitEnd 把 图片按比例扩大/缩小到View的宽度,显示在View的下部分位置 FIT_START / fitStart 把 图片按比例扩大/缩小到View的宽度,显示在View的上部分位置 FIT_XY / fitXY 把图片 不按比例 扩大/缩小到View的大小显示

㈥ Android画板怎么在画布放大的同时不改变画笔大小

三种方法:

第一种:把用ps打开图片然后选择菜单-图像(I)里面的画布大小

弹出裁切面板后如上图所示点击确定即可将画布变成和图片一样大小

㈦ android gallery如何设置图片按比例缩小

private
void
small()
{
int
bmpWidth=bmp.getWidth();
int
bmpHeight=bmp.getHeight();
Log.i(TAG,
"bmpWidth
=
"
+
bmpWidth
+
",
bmpHeight
=
"
+
bmpHeight);
/*
设置图片缩小的比例
*/
double
scale=0.8;
/*
计算出这次要缩小的比例
*/
scaleWidth=(float)
(scaleWidth*scale);
scaleHeight=(float)
(scaleHeight*scale);
/*
产生reSize后的Bitmap对象
*/
Matrix
matrix
=
new
Matrix();
matrix.postScale(scaleWidth,
scaleHeight);
Bitmap
resizeBmp
=
Bitmap.createBitmap(bmp,0,0,bmpWidth,
bmpHeight,matrix,true)

㈧ 如何将裁剪出来的图片适配图片框的大小 android开发

图片的等比例缩放,第一个参数是图片路径,第二个是最终所需要图片的(宽高里取值最大的)的最大值
[java] // 限制值MaxSize*(2/3)=实际使用值的比较值IMAGE_MAX_SIZE
// 例如:限制图片大小为400,则实际使用的比较值应为400*(2/3)
// 260*2/3=390
public static Bitmap decodeFile(String path, int MaxSize) {

File f = new File(path);
int IMAGE_MAX_SIZE = MaxSize * 2 / 3;
Bitmap b = null;
try {
// Decode image size
BitmapFactory.Options o = new BitmapFactory.Options();
o.inJustDecodeBounds = true;

//FileInputStream fis = new FileInputStream(f);
//BitmapFactory.decodeStream(fis, null, o);

//fis.close();

double scale = 1;

if (o.outHeight > IMAGE_MAX_SIZE || o.outWidth > IMAGE_MAX_SIZE) {
scale = Math.pow(2, (int) Math.round(Math.log(IMAGE_MAX_SIZE / (double) Math.max(o.outHeight, o.outWidth)) / Math.log(0.5)));

}

// Decode with inSampleSize
BitmapFactory.Options o2 = new BitmapFactory.Options();
o2.inSampleSize = (int) scale;
FileInputStream fis = new FileInputStream(f);

b = BitmapFactory.decodeStream(fis, null, o2);

fis.close();
} catch (FileNotFoundException e) {
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return b;
}

㈨ android 如何实现对view的放大和缩小

图片放大缩小方法如下:

图片放大缩小就是使用Matrix类,而这里通过手势控制,那自然是需要监听onTouch事件,所以原理简单来说,就是通过监听onTouch的各种事件来控制Matrix类了。

{
privatefinalstaticStringTAG="MatrixImageView";
;
/**模板Matrix,用以初始化*/
privateMatrixmMatrix=newMatrix();
/**图片长度*/
privatefloatmImageWidth;
/**图片高度*/
privatefloatmImageHeight;

publicMatrixImageView(Contextcontext,AttributeSetattrs){
super(context,attrs);
MatrixTouchListenermListener=newMatrixTouchListener();
setOnTouchListener(mListener);
mGestureDetector=newGestureDetector(getContext(),newGestureListener(mListener));
//背景设置为balck
setBackgroundColor(Color.BLACK);
//将缩放类型设置为FIT_CENTER,表示把图片按比例扩大/缩小到View的宽度,居中显示
setScaleType(ScaleType.FIT_CENTER);
}
阅读全文

与android等比例缩放图片相关的资料

热点内容
同花顺上传到服务器地址 浏览:927
电脑加密安卓版 浏览:824
手机程序加密有什么作用 浏览:178
求黑马程序员python教程 浏览:528
androidmvvm优缺点 浏览:894
unix下编译库文件 浏览:633
程序员的u盘 浏览:237
android根据经纬度获取城市 浏览:564
python使用解释器还是编译器 浏览:358
以下关于有加密算法及密钥描述 浏览:220
linuxgethostname 浏览:416
程序员多数有对象 浏览:131
单片机延时程序计算 浏览:444
编译原理语法翻译 浏览:504
pr编译出错渲染存在偏移 浏览:262
如何制作自家的app 浏览:199
推荐一个解压软件rar解压帮手 浏览:212
wd文档加密器 浏览:748
服务器上传压缩包一般是什么格式 浏览:333
发送加密文件密码几位数 浏览:160