Android examples for Graphics:Bitmap Scale
get Bitmap Fit Scale
/*//from w w w . ja va2s . c o m * Copyright (C) 2012 Kazuya (Kaz) Yokoyama <kazuya.yokoyama@gmail.com> * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ //package com.java2s; public class Main { public static float getFitScale(int targetWidth, int targetHeight, int srcWidth, int srcHeight) { float ret = 0; if (targetWidth < targetHeight) { if (srcWidth < srcHeight) { ret = (float) targetHeight / (float) srcHeight; if ((srcWidth * ret) > targetWidth) { ret = (float) targetWidth / (float) srcWidth; } } else { ret = (float) targetWidth / (float) srcWidth; } } else { if (srcWidth < srcHeight) { ret = (float) targetHeight / (float) srcHeight; } else { ret = (float) targetWidth / (float) srcWidth; if ((srcHeight * ret) > targetHeight) { ret = (float) targetHeight / (float) srcHeight; } } } return ret; } }