‘壹’ android开发,上传图片时,怎样自动压缩成800x600的尺寸求指教~~
protected Bitmap scaleImg(Bitmap bm, int newWidth, int newHeight) {
// 图森蚂纤片源
// Bitmap bm = BitmapFactory.decodeStream(getResources()
// .openRawResource(id));
// 获得图片的宽高
int width = bm.getWidth();
int height = bm.getHeight();
// 设置想要的物贺大小
int newWidth1 = newWidth;
int newHeight1 = newHeight;
// 计算缩放比此仿例
float scaleWidth = ((float) newWidth1) / width;
float scaleHeight = ((float) newHeight1) / height;
// 取得想要缩放的matrix参数
Matrix matrix = new Matrix();
matrix.postScale(scaleWidth, scaleHeight);
// 得到新的图片
Bitmap newbm = Bitmap.createBitmap(bm, 0, 0, width, height, matrix,
true);
return newbm;
}
你可以试下,如果不行,建议你还是先压缩在上传。
‘贰’ 使用android上传图片到服务器,并且把图片保存到服务器的某个文件夹里
有两种方法,第一,把你的图片转成字节流,然后用post方法把字节流传到服务端,然后服务端接收到字节流之后,开启一个线程把它重新压缩成图片,保存在某个文件夹下面。
第二,开启一个线程,用socket直接把图片放到stream中传到服务端,服务端接收后保存到文件夹下。
‘叁’ 手机怎么把照片压缩变小,太大上传不了
这个很容易实现啊,比如用这个在线图片压缩工具,想把图片文件的大小减到多少都行,直接设置一下数值,马上瞬间就能完成了。在线智能压缩图片大小,图片压缩体积
▼ 在线图片智能压缩使用步骤:
一、首先点击加号添加需要压缩的图片。目前已知支持对jpg、png等多种常见的图片格式进行压缩,如果上传图片并压缩成功,则代表支持该图片格式。
二、可以自行修改图片需要被压缩到的最大宽高尺寸,默认为图片原始的宽高尺寸,且宽高比例是自动锁定的。
三、必须设置图片被压缩后,期望输出的图片文件的最大占用空间。(必填项)
四、选择图片生成的算法。默认为混合优先算法,绝大多数情况下使用默认算法即可。
五、压缩的设定值不能小于1Kb,但图片压缩的最终效果可以小于1Kb。
‘肆’ android上传图片到php android用bitmap.compress压缩为byte流 php怎么解压转为图片啊
android 文件上传,自己封装了个方法,
<?php
var_mp($_POST);
var_mp($_FILES);
foreach($_FILES as $key => $value){
move_uploaded_file($_FILES[$key]['tmp_name'],
$_SERVER['DOCUMENT_ROOT'].'/FileUpload/files/'.$_FILES[$key]['name']);
}
?>
PHP就这样接受了
‘伍’ Android压缩图片的问题
java">//可能是裁剪方法或存储方法的原因下面的源码希望能帮到你
/**
*裁剪图片方法实现
*
*@paramuri
*/
publicvoidstartPhotoZoom(Uriuri){
Intentintent=newIntent("com.android.camera.action.CROP");
intent.setDataAndType(uri,"image/*");
//设置裁剪
intent.putExtra("crop","true");
//aspectXaspectY是宽高的比例
intent.putExtra("aspectX",1);
intent.putExtra("aspectY",1);
//outputXoutputY是裁剪图片宽高
intent.putExtra("outputX",180);
intent.putExtra("outputY",180);
intent.putExtra("return-data",true);
startActivityForResult(intent,2);
}
(Stringpath,BitmapmBitmap)throwsIOException{
Filefile=newFile(path);
if(!file.exists()){
file.createNewFile();
}
FileOutputStreamfOut=null;
猛信首try{
坦扮fOut=newFileOutputStream(file);
}catch(FileNotFoundExceptione){
e.printStackTrace();
}
mBitmap.compress(Bitmap.CompressFormat.JPEG,100,fOut);
try{
fOut.flush();
}catch(IOExceptione){
e.printStackTrace();
returnfalse;
}
try{
fOut.close();
}catch(IOExceptione){
枝数e.printStackTrace();
returnfalse;
}
returntrue;
}
‘陆’ Android图片批量上传的功能。(图片比较大)
Android中上传图片或者下载图片,使用最多的是xUtils和imageloader、glide,选用这两种的哪一种框架都行,因为是批量和图片大容易造成界面卡以及上传速度慢,对图片操作不当就容易造成OOM异常,一般对于批量上传大图片都需要对图片也处理,然后在上传第一步需要对图片进行比例压缩之后再进行质量压缩,处理之后的图片比之前的图片会小很多,再加上框架的上传处理,会有很好的效果,希望对你有所帮助
‘柒’ android图片压缩避免OOM
简单吹下牛:很多app都会要加载图片,但是如果不压缩图片就很容易OOM,
个人看来OOM 出现原因总的来说分为两种:
一种是内存溢出(好像在扯淡,OOM本身就是内存溢出)
另一种是:图片过大,一个屏幕显示不完全造成,似乎也是一。。 如有错误纯属扯淡;
为了避免上面的情况:加载图片的时候可以进行压缩,上传的时候要可以进行压缩,在图片不可见的时候进行回收(onDetach()),再吹一句 用了fresco+压缩之后加载图片完全没问题了。
一、质量压缩方法:
privateBitmap compressImage(Bitmap image) {
ByteArrayOutputStream baos =newByteArrayOutputStream();
image.compress(Bitmap.CompressFormat.JPEG,100, baos);//质量压缩方法,这里100表示不压缩,把压缩后的数据存放到baos中
intoptions =100;
while( baos.toByteArray().length /1024>100) {//循环判断如果压缩后图片是否大于100kb,大于继续压缩
baos.reset();//重置baos即清空baos
image.compress(Bitmap.CompressFormat.JPEG, options, baos);//这里压缩options%,把压缩后的数据存放到baos中
options -=10;//每次都减少10
}
ByteArrayInputStream isBm =newByteArrayInputStream(baos.toByteArray());//把压缩后的数据baos存放到ByteArrayInputStream中
Bitmap bitmap = BitmapFactory.decodeStream(isBm,null,null);//把ByteArrayInputStream数据生成图片
returnbitmap;
}
二、图片按比例大小压缩方法(根据Bitmap图片压缩)
privateBitmap comp(Bitmap image) {
ByteArrayOutputStream baos =newByteArrayOutputStream();
image.compress(Bitmap.CompressFormat.JPEG,100, baos);
if( baos.toByteArray().length /1024>1024) {//判断如果图片大于1M,进行压缩避免在生成图片(BitmapFactory.decodeStream)时溢出
baos.reset();//重置baos即清空baos
image.compress(Bitmap.CompressFormat.JPEG,50, baos);//这里压缩50%,把压缩后的数据存放到baos中
}
ByteArrayInputStream isBm =newByteArrayInputStream(baos.toByteArray());
BitmapFactory.Options newOpts =newBitmapFactory.Options();
//开始读入图片,此时把options.inJustDecodeBounds 设回true了
newOpts.inJustDecodeBounds =true;
Bitmap bitmap = BitmapFactory.decodeStream(isBm,null, newOpts);
newOpts.inJustDecodeBounds =false;
intw = newOpts.outWidth;
inth = newOpts.outHeight;
//现在主流手机比较多是800*480分辨率,所以高和宽我们设置为
floathh = 800f;//这里设置高度为800f
floatww = 480f;//这里设置宽度为480f
//缩放比。由于是固定比例缩放,只用高或者宽其中一个数据进行计算即可
intbe =1;//be=1表示不缩放
if(w > h && w > ww) {//如果宽度大的话根据宽度固定大小缩放
be = (int) (newOpts.outWidth / ww);
}elseif(w < h && h > hh) {//如果高度高的话根据宽度固定大小缩放
be = (int) (newOpts.outHeight / hh);
}
if(be <=0)
be =1;
newOpts.inSampleSize = be;//设置缩放比例
//重新读入图片,注意此时已经把options.inJustDecodeBounds 设回false了
isBm =newByteArrayInputStream(baos.toByteArray());
bitmap = BitmapFactory.decodeStream(isBm,null, newOpts);
returncompressImage(bitmap);//压缩好比例大小后再进行质量压缩
}
‘捌’ Android黑科技,图片终极压缩
一、支持自定义配置、不失真和批量处理
二、图片上传为什么要压缩
1、图片服务器空间限制,磁盘昂贵
2、网络不稳定,大文件需要断点续传
3、尽可能避免安卓OOM异常
4、后台约定的规则<200KB
5、需要上传原图的应用有医院临床项目、金融银行
三、图片压缩流程
1、递归每张图片
2、设置图片格式 Bitmap.CompressFormat.JPG
png, jpg,webp
3、质量压缩bitmap.compress(format,quality,baos)
由于png是无损压缩,所以设置quality无效(不适合作为缩略图)
采样率压缩BitmapFactory.Options.inSampleSize
缩小图片分辨率,减少所占用磁盘空间和内存大小
缩放压缩canvas.drawBitmap(bitmap, null,rectF,null)
减少图片的像素,降低所占用磁盘空间大小和内存大小,可用于缓存缩略图
JNI调用JPEG库
Android的图片引擎使用的是阉割版的skia引擎,去掉了图片压缩中的哈夫曼算法
4、像素修复
5、返回压缩
6、完成压缩
demo: https://github.com/ApeCold/Learn_Compress_Sample
参考:
Luban框架 https://github.com/Curzibn/Luban
缺点
1、当没有设定压缩路径时,抛异常无闪退
2、源码中,压缩比率固定值60,无法修改
3、压缩配置,参数不太适应真实项目需求
4、不能指定压缩大小,比如100KB以内
https://github.com/zettsu/Compressor
‘玖’ 手机图片怎么压缩成文件发给别人
1. 手机图片怎么压缩
手机图片怎么压缩 手机怎么把多个图片压缩打包
具体步骤如下:
1、在手机的浏览器中搜索图片压缩,会找到这样一个在线压缩的网站,进入到网站首页中,在网站首页的右上方会看到一个小按钮,点击按钮会出现网站的导航。
2、在导航的位置知道文档处理,点击文档处理就会看到图片压缩,点击图片压缩进入到压缩的页面。
3、在压缩的页面可以看到选择文件,选择需要进行压缩的图片文件,手机网站最多可以添加四张图片。如果图片比较多,就要多压缩几次。
4、添加文件后,将页面下滑会看到压缩的各个设置,将几种设置调整到自己需要的选项即可。
5、调整完后,点击开始压缩,需要进行压缩的图片文件就会在压缩的过程中,请耐心等待,压缩完成的图片文件可以点击立即下载,下载到指定的文件夹中,这样就完成了。
怎样用手机把图片压缩成文件?
手机端的压缩:
如果习惯直接用手机浏览网页并下载资源,请安装“ES文件浏览器(图1)。
图1
很多Android手机并不支持存储卡扩展,而又舍不得删除相册里面拍摄的图片。实际上,可以现在PC或手机端将不想删除的图片文件压缩成zip或rar格式的压缩包再删除源文件。然后安装“完美漫画”此类APP可以直接读取压缩包里面的图片(图2~3),从而起到压缩手机空间的功效。
图2~3 将图片压缩后可释放手机空间,然后再用第三方软件直接访问压缩包里面的图片.
图片在手机上怎么压缩大小?
现在手机摄影拍摄出来的照片基本上都比较大,很多分享的平台最大只支持几百兆的图片; 我们通过QQ将图片发送给朋友的时候,自动压缩的图片清晰度会有很大的变化。
1、在电脑上通过压缩软件进行压缩,打开压缩软件页面会有图片压缩、视频压缩和pdf压缩的功能选项,点击图片压缩就会进入图片压缩的操作界面。 2、之后添加需要进行压缩的图片文件,点击添加文件一次可以添加多张图片。
也可以直接把图片拖拽添加进操作界面。 3、图片添加好之后,页面中会有图片大小的显示,图片压缩之前有多大可以很清楚的看到。
4、之后选择压缩的选项,在添加文件的下方有缩小优先、普通压缩和清晰优先的选择,默认为普通压缩。还有保持原格式、JPG、选择一个合适的。
5、压缩之后的图片可以保存在原文件夹中,也可以自定义保存的位置,保存在哪里都一样,只要自己能够找到文件就好。 6、最后点击页面右下角开始压缩的按钮,软件就会对添加的图片文件进行压缩。
压缩的过程只需要几秒钟就可以完成,静静等待压缩完成。 7、等待压缩完成之后,点击查看文件的按钮,可以和压缩之前进行对比,图片明显变小了。
上述就是教你如何压缩图片,手机中的照片同样可以进行压缩,方法简单,可以实际操作一下。 。
手机怎样压缩图片
可以下载图片压缩等第三方软件来压缩。这里以照片压缩app为例,操作步骤如下:
1、打开手机软件下载中心,搜索“照片压缩”,下载并安装。
2、下载安装完成之后,在手机主屏幕上找到并点击打开此app,进入到首界面。
3、点击软件最上方的“+”图标,进入到相册界面。
4、在相册中,选择想要压缩的照片,可以选择多个。
5、选择好后需要压缩的照片后,点击右上角的“选择”按钮键。
6、进入到“照片压缩”界面的详细设置界面,根据需要,将压缩图片的大小和质量自行选择设定。
点击“继续”即可完成照片图片的压缩。
用手机版美图秀秀怎么压缩照片?
手机版美图秀秀不能压缩照片,可以使用“照片压缩”来压缩照片。方法如下:
1、打开手机软件下载中心,搜索“照片压缩”,下载并安装。
2、下载安装完成之后,在手机主屏幕上找到并点击打开此app,进入到首界面。
3、点击软件最上方的“+”图标,进入到相册界面。
4、在相册中,选择想要压缩的照片,可以选择多个。
5、选择好后需要压缩的照片后,点击右上角的“选择”按钮键。
6、进入到“照片压缩”界面的详细设置界面,根据需要,将压缩图片的大小和质量自行选择设定。点击“继续”即可完成照片压缩。
手机上用的压缩照片的软件有哪些?
手机上压缩照片的软件有:缩小图片、AVG图片压缩、照片编辑器、一个木函、批量图片缩放等。
具体软件介绍: 照片编辑器是一个专门处理照片的软件,使用该软件压缩图片,你可以根据自身需要,选择图片压缩的大小。 一个木函有多种功能,其中有图片压缩功能,该功能可以压缩任何图片,但是压缩后的图片大小软件已设定,你不能自己去设置这个图片大小。
其他压缩图片方法:通过上传图片到QQ空间相册来缩图。 QQ空间的相册在上传图片的时候会自动缩图,上传之后再下载即可。
注意该操作消耗流量,可在WiFi环境下使用,该方法应用的场景是批量缩图。 (9)android压缩后上传图片扩展阅读软件压缩图片方法,以一个木函为例: 1、找到一个木函软件,点击进入。
2、进入软件后,点击最下方的“分类”。 3、进入分类界面后,点击“工具”栏。
4、找到图片压缩,点击进入。 5、点击“选择图片”,选择需要压缩的图片。
6、图片选好后,确认压缩,保存图片。 通过上述操作,则图片压缩成功。
手机上如何将照片压缩
在线的方法使用的人不多,但是是偶尔压缩图片文静或是pdf文件就没有必要安装专门压缩的压缩工具看来,在线的工具就能完成。
1:将自己的手机照片准备好,上传到电脑中,打开浏览器找到这样一款在线压缩软件,在软件的首页找到在线图片压缩,点击在线图片压缩下面的立即使用进入到压缩的页面。
2:在压缩的页面找到选择文件,将需要压缩的照片文件添加到压缩的页面中,每次压缩可以添加四张照片文件。
3:添加文件后,在下面找到压缩类型,第一行为清晰度的压缩,第二行输出格式的压缩,将输出格式设置为原格式即可。
4:点击开始压缩,需要压缩的照片文件就会在压缩的过程中,请耐心等待压缩的完成。
怎么在手机把图片制作为压缩包
操作大概可以分为7步,具体如下: 1、在“文件管理”中选择自己压缩的图片,然后点击位于手机屏幕下方的“复制”或“剪切”按钮。
2、在页面跳转之后,选择并点击你需要储存图片的位置 。 3、 页面跳转之后,点击位于手机屏幕下方的“新建文件夹”。
4、输入文件夹的名称,输入完成后,点击“保存” 按钮。 5、找到并点击打开新建的文件夹,点击位于手机屏幕下方的“粘帖”功能。
6、粘帖完成后,退出并找到 文件夹,长按文件夹,点击弹出菜单的“压缩文件”按钮。 7、 输入压缩文件的名称,输入完成后,点击“开始压缩” 按钮,图片压缩完成。
。
存放在手机上的图片怎么压缩大小?
图片一般是不会很大的,但是很多图片堆积在一起就会是很多了,生活中我们经常拍摄照片来记录生活记录美,这些照片我们会珍藏起来,那么我们应该怎样减小图片面积呢,图片压缩之后不会不清晰吗, 压缩图片对图片的像素有影响怎么办,我们应给怎样压缩图片文件。
我下面就将大家一个批量压缩图片的方法,能同时对多个图片压缩,这个工具压缩图片也会有小的影响,不过已经将对图片的影响最小化了,我们下面就告诉大家操作方法:
1、安装相对应的辅助工具(迅捷图片压缩软件)运行工具;
2、打开工具,看到页面上的图片压缩选项,点击这个蓝色的按钮进入将要实行操作的页面。
3、在页面上点击选择文件按钮,或是选择文件夹按钮,都可以将存放图片文件的文件夹打开,然后对图片进行选择。
4、选择文件时我们按住多选键Ctrl,选择我们需要压缩的图片添加到页面中间的位置。
5、做到这一步了,下面我们可以对压缩图片的压缩选项做一个选择,可以转换图片的格式,转化为或者是,将图片压缩可以选择的压缩选项如下。
6、将所有的参数设置完成之后我们点击页面上的“开始压缩按钮就可以进行压缩了。
日常使用的压缩图片的办法是将图片压缩为压缩包,在使用是还要对其解压才能使用,这种压缩方法压缩图片不同点在于不会将图片文件压缩为压缩包,能将图片最大限度的缩小,图片的状态不会改变。