【问题标题】:How to resize a bitmap image : Android如何调整位图图像的大小:Android
【发布时间】:2013-10-21 02:44:45
【问题描述】:

我想增加图像的大小。我使用此代码获取图像BitmapFactory.decodeResource(getResources(), R.drawable.car);

但是这张图片在不同的屏幕上有不同的尺寸,所以我想根据屏幕尺寸调整图片的大小。

【问题讨论】:

    标签: android


    【解决方案1】:

    当然你可以缩放:

    Bitmap bm = Bitmap.createScaledBitmap(src, dstWidth, dstHeight, filter);
    

    【讨论】:

      【解决方案2】:

      是的,你可以使用下面的代码 sn-ps 来做到这一点,第一部分 retrns 当前屏幕的宽度和高度,第二部分重新调整图像大小。

      // This will return the screen size in pixels
      Display display = getWindowManager().getDefaultDisplay();
      Point size = new Point();
      display.getSize(size);
      int width = size.x;
      int height = size.y;
      
      // Use this to bind and re-size the image
      Bitmap car;
      car = BitmapFactory.decodeResource(getResources(), R.drawable.car);
      car = Bitmap.createScaledBitmap(car, width, height, true);
      

      【讨论】:

        【解决方案3】:

        在 android 中,每个资源应该至少以 3 种格式存储,xhdpi、hdpi 和 mdpi 考虑到您已将所有 3 种格式的资源副本存储在各自的文件夹中。

        res/drawable-mdpi/my_icon.png // 中等密度的位图 res/drawable-hdpi/my_icon.png // 高密度位图 res/drawable-xhdpi/my_icon.png // 超高密度位图

        平台足够聪明,可以根据自己的屏幕尺寸选择合适的资源。

        如果您在所有 3 个文件夹中都有正确的图像,我认为您不会遇到任何问题。

        http://developer.android.com/guide/practices/screens_support.html

        【讨论】:

        【解决方案4】:

        查看http://square.github.io/picasso/,您可以在一行中下载、设置您想要的图像并调整其大小。它还允许磁盘缓存。

        【讨论】:

          猜你喜欢
          • 2015-06-04
          • 2017-12-20
          • 2012-06-06
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-06-17
          • 1970-01-01
          相关资源
          最近更新 更多