解决方案 »

  1.   

    http://bbs.csdn.net/topics/390432950 参考一下这个帖子
      

  2.   

    你好,参考了你提供的这个帖子才明白resize_img()这个压缩bitmap宽高的方法纯属多余
    只需要保留saveMyBitmap()
    改变bit.compress(Bitmap.CompressFormat.JPEG, 100, fOut);这个100的这个值就可以了但是参考帖中,你贴出的那大段代码中为什么也在压缩KB大小前对图片宽高进行了压缩呢?
    这是用于上传吗?我是在边做项目边学android,此前没接触过android,自学能力也实在是不怎么样,快半年了对很多问题都还不了解,很多功能即便做出来了也是照着网上查的资料依样画葫芦,而对于其原理,却没有去探究过,所以对于android,基本上还是一窍不通现在做图片上传,原图上传是成功了,但对于压缩这块,上网查了很多资料,都是对图片的宽高进行压缩
    当时就觉得奇怪:宽高压缩了,图片就不是原图大小,再放大应该也会失真
    我当时也怀疑是不是根本就不是用于上传,而仅仅是用于在手机屏幕上的显示而已
    可查到的资料又很清楚的说明了是用于上传,于是我以为在服务器解压缩时有什么特别的方法可以让图片不失真现在才知道改变bit.compress(Bitmap.CompressFormat.JPEG, 100, fOut);100的这个值就可以压缩KB大小,而不影响图片宽高和清晰度。但是对于在压缩KB大小前对图片宽高进行压缩,这一点能不能解说一下是为什么呢?这样上传的图片不就跟我帖子中提到的情况一样了吗:如果后台不处理,直接保存传过来的图片,那么图片就会比原图小很多;如果后台进行放大处理,把传过来的图片放大为与原图一致,图片就会严重失真
      

  3.   

    哦,明白了。我想再问一下我上传时是把压缩后的bitmap转为File保存的sdcard卡再上传【saveMyBitmap(String filename, Bitmap bit)】,上传成功后再删除
    有没有什么方法可以不用保存到sd卡,直接上传文件呢
      

  4.   

    哦,明白了。我想再问一下我上传时是把压缩后的bitmap转为File保存的sdcard卡再上传【saveMyBitmap(String filename, Bitmap bit)】,上传成功后再删除
    有没有什么方法可以不用保存到sd卡,直接上传文件呢
    哦,明白了。我想再问一下我上传时是把压缩后的bitmap转为File保存的sdcard卡再上传【saveMyBitmap(String filename, Bitmap bit)】,上传成功后再删除
    有没有什么方法可以不用保存到sd卡,直接上传文件呢 
    你那图片是从哪里来的嘛
      

  5.   

    可以将临时文件放到 /data/data/yourpackage/files目录下 我也忘了具体方法了你可以搜搜看 上传完成以后再删除就OK了
      

  6.   

    你好本人是菜鸟,能不能打包源码发个给我,谢谢啊[email protected] 急求个android上传图片到php服务器的案例,谢谢啦!