[Android] 비트맵 크기 조정

5187 단어 Android

기본적

Bitmap#createScaledBitmap()를 사용하여 Bitmap 크기를 조정합니다.
  • Bitmap#createScaledBitmap()
  • 매개 변수
    타입
    설명
    src
    Bitmap
    객체의 Bitmap 조정
    dstWidth
    int
    조정된 Bitmap 너비
    dstHeight
    int
    조정된 Bitmap 높이
    filter
    boolean
    큰 시간 필터 사용 여부 조정

    How to use


    예를 들어, 치수를 최대 치수로 조정하면 뷰에서 폭과 높이를 유지하면서 표시할 수 있습니다.
    // リサイズ前のBitmap
    Bitmap beforeResizeBitmap;
    
    // リサイズ比
    double resizeScale;
    // 横長画像の場合
    if (beforeResizeBitmap.getWidth() >= beforeResizeBitmap.getHeight()) {
        resizeScale = (double) viewWidth / beforeResizeBitmap.getWidth();
    }
    // 縦長画像の場合
    else {
        resizeScale = (double) viewHeight / beforeResizeBitmap.getHeight();
    }
    // リサイズ
    Bitmap afterResizeBitmap = Bitmap.createScaledBitmap(beforeResizeBitmap,
            (int) (beforeResizeBitmap.getWidth() * resizeScale),
            (int) (beforeResizeBitmap.getHeight() * resizeScale),
            true);
    

    필터 정보


    네 번째 파라미터의 Filter가 유효한지 무효인지는 상황에 따라 조정된 이미지에 큰 차이가 있을 수 있습니다.

    실험


    다음 그림을 사용하여 디스플레이를 축소하고 확대합니다. 각각 필터의 유효/무효를 시도합니다.
    원본 이미지

    줄다


    등배 표시



    filter 유효



    잘못된 필터



    유효/무효 diff



    ※ 어두울수록

    감상


    축소 시 필터가 잘못되면 재기가 분명하게 표현됩니다.

    확대


    등배 표시



    filter 유효



    잘못된 필터



    유효/무효 diff



    ※ 어두울수록

    감상


    확대 측면에서는 필터가 무효가 되면 재기가 나타나지만 축소보다는 재기가 덜 느껴진다.

    무엇


    만약 자신이 확장자를 쓰지 않는다면, Filter는 그래도 효과적인 것이 비교적 좋다.

    좋은 웹페이지 즐겨찾기