android.graphics.BitmapFactory.Options Java Examples
The following examples show how to use
android.graphics.BitmapFactory.Options.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: NikonGetLiveViewImageCommand.java From remoteyourcam-usb with Apache License 2.0 | 6 votes |
public NikonGetLiveViewImageCommand(NikonCamera camera, LiveViewData data) { super(camera); this.data = data; if (data == null) { this.data = new LiveViewData(); //this.data.histogram = ByteBuffer.allocate(1024 * 4); //this.data.histogram.order(ByteOrder.LITTLE_ENDIAN); } else { this.data = data; } options = new BitmapFactory.Options(); options.inBitmap = this.data.bitmap; options.inSampleSize = 1; options.inTempStorage = tmpStorage; this.data.bitmap = null; }
Example #2
Source File: ImageUtils.java From monolog-android with MIT License | 6 votes |
/** * 获取图片缩略�? 只有Android2.1以上版本支持 * * @param imgName * @param kind MediaStore.Images.Thumbnails.MICRO_KIND * @return */ @SuppressWarnings("deprecation") public static Bitmap loadImgThumbnail(Activity context, String imgName, int kind) { Bitmap bitmap = null; String[] proj = {MediaStore.Images.Media._ID, MediaStore.Images.Media.DISPLAY_NAME}; Cursor cursor = context.managedQuery( MediaStore.Images.Media.EXTERNAL_CONTENT_URI, proj, MediaStore.Images.Media.DISPLAY_NAME + "='" + imgName + "'", null, null); if (cursor != null && cursor.getCount() > 0 && cursor.moveToFirst()) { ContentResolver crThumb = context.getContentResolver(); Options options = new Options(); options.inSampleSize = 1; bitmap = getThumbnail(crThumb, cursor.getInt(0), kind, options); } return bitmap; }
Example #3
Source File: BaseImageDecoder.java From mobile-manager-tool with MIT License | 6 votes |
/** * Decodes image from URI into {@link android.graphics.Bitmap}. Image is scaled close to incoming {@linkplain com.nostra13.universalimageloader.core.assist.ImageSize target size} * during decoding (depend on incoming parameters). * * @param decodingInfo Needed data for decoding image * @return Decoded bitmap * @throws java.io.IOException if some I/O exception occurs during image reading * @throws UnsupportedOperationException if image URI has unsupported scheme(protocol) */ @Override public Bitmap decode(ImageDecodingInfo decodingInfo) throws IOException { Bitmap decodedBitmap; ImageFileInfo imageInfo; InputStream imageStream = getImageStream(decodingInfo); try { imageInfo = defineImageSizeAndRotation(imageStream, decodingInfo); imageStream = resetStream(imageStream, decodingInfo); Options decodingOptions = prepareDecodingOptions(imageInfo.imageSize, decodingInfo); decodedBitmap = BitmapFactory.decodeStream(imageStream, null, decodingOptions); } finally { IoUtils.closeSilently(imageStream); } if (decodedBitmap == null) { L.e(ERROR_CANT_DECODE_IMAGE, decodingInfo.getImageKey()); } else { decodedBitmap = considerExactScaleAndOrientatiton(decodedBitmap, decodingInfo, imageInfo.exif.rotation, imageInfo.exif.flipHorizontal); } return decodedBitmap; }
Example #4
Source File: ImageUtils.java From monolog-android with MIT License | 6 votes |
/** * 创建缩略�? * * @param context * @param largeImagePath 原始大图路径 * @param thumbfilePath 输出缩略图路�? * @param square_size 输出图片宽度 * @param quality 输出图片质量 * @throws IOException */ public static void createImageThumbnail(Context context, String largeImagePath, String thumbfilePath, int square_size, int quality) throws IOException { Options opts = new Options(); opts.inSampleSize = 1; // 原始图片bitmap Bitmap cur_bitmap = getBitmapByPath(largeImagePath, opts); if (cur_bitmap == null) throw new IOException(); // 原始图片的高�? int[] cur_img_size = new int[]{cur_bitmap.getWidth(), cur_bitmap.getHeight()}; // 计算原始图片缩放后的宽高 int[] new_img_size = scaleImageSize(cur_img_size, square_size); // 生成缩放后的bitmap Bitmap thb_bitmap = zoomBitmap(cur_bitmap, new_img_size[0], new_img_size[1]); // 生成缩放后的图片文件 saveImageToSD(context, thumbfilePath, thb_bitmap, quality); }
Example #5
Source File: BitmapUtil.java From videocreator with Apache License 2.0 | 6 votes |
/** * 计算缩放比例 * * @param opts * @param reqWidth * @param reqHeight * @return */ private static int calculateInSampleSize(Options opts, int reqWidth, int reqHeight) { if (opts == null) return 1; int inSampleSize = 1; int realWidth = opts.outWidth; int realHeight = opts.outHeight; if (realHeight > reqHeight || realWidth > reqWidth) { int widthRatio = realWidth / reqWidth; int heightRatio = realHeight / reqHeight; inSampleSize = (heightRatio > widthRatio) ? widthRatio : heightRatio; } return inSampleSize; }
Example #6
Source File: AnimationsContainer.java From FimiX8-RE with MIT License | 6 votes |
public FramesSequenceAnimation(ImageView imageView, int[] frames, int fps) { this.mFrames = frames; this.mIndex = -1; this.mSoftReferenceImageView = new SoftReference(imageView); this.mShouldRun = false; this.mIsRunning = false; this.mDelayMillis = 100; imageView.setImageResource(this.mFrames[0]); if (VERSION.SDK_INT >= 11) { Bitmap bmp = ((BitmapDrawable) imageView.getDrawable()).getBitmap(); this.mBitmap = Bitmap.createBitmap(bmp.getWidth(), bmp.getHeight(), bmp.getConfig()); this.mBitmapOptions = new Options(); this.mBitmapOptions.inBitmap = this.mBitmap; this.mBitmapOptions.inMutable = true; this.mBitmapOptions.inSampleSize = 1; this.mBitmapOptions.inPreferredConfig = Config.RGB_565; } }
Example #7
Source File: ImageUtils.java From monolog-android with MIT License | 6 votes |
public static boolean isThisBitmapTooLargeToRead(String path) { File file = new File(path); if (!file.exists()) { return false; } final Options options = new Options(); options.inJustDecodeBounds = true; BitmapFactory.decodeFile(path, options); int width = options.outWidth; int height = options.outHeight; if (width == -1 || height == -1) { return false; } if (width > getBitmapMaxWidthAndMaxHeight() || height > getBitmapMaxWidthAndMaxHeight()) { return true; } else { return false; } }
Example #8
Source File: ImageSizeUtil.java From LLApp with Apache License 2.0 | 6 votes |
/** * 根据需求的宽和高以及图片实际的宽和高计算SampleSize * * @param options * @param reqWidth * @param reqHeight * @return */ public static int caculateInSampleSize(Options options, int reqWidth, int reqHeight) { int width = options.outWidth; int height = options.outHeight; int inSampleSize = 1; if (width > reqWidth || height > reqHeight) { int widthRadio = Math.round(width * 1.0f / reqWidth); int heightRadio = Math.round(height * 1.0f / reqHeight); inSampleSize = Math.max(widthRadio, heightRadio); } return inSampleSize; }
Example #9
Source File: BaseImageDecoder.java From candybar with Apache License 2.0 | 6 votes |
protected Options prepareDecodingOptions(ImageSize imageSize, ImageDecodingInfo decodingInfo) { ImageScaleType scaleType = decodingInfo.getImageScaleType(); int scale; if (scaleType == ImageScaleType.NONE) { scale = 1; } else if (scaleType == ImageScaleType.NONE_SAFE) { scale = ImageSizeUtils.computeMinImageSampleSize(imageSize); } else { ImageSize targetSize = decodingInfo.getTargetSize(); boolean powerOf2 = scaleType == ImageScaleType.IN_SAMPLE_POWER_OF_2; scale = ImageSizeUtils.computeImageSampleSize(imageSize, targetSize, decodingInfo.getViewScaleType(), powerOf2); } if (scale > 1 && loggingEnabled) { L.d(LOG_SUBSAMPLE_IMAGE, imageSize, imageSize.scaleDown(scale), scale, decodingInfo.getImageKey()); } Options decodingOptions = decodingInfo.getDecodingOptions(); decodingOptions.inSampleSize = scale; return decodingOptions; }
Example #10
Source File: BaseImageDecoder.java From mobile-manager-tool with MIT License | 6 votes |
protected Options prepareDecodingOptions(ImageSize imageSize, ImageDecodingInfo decodingInfo) { ImageScaleType scaleType = decodingInfo.getImageScaleType(); int scale; if (scaleType == ImageScaleType.NONE) { scale = 1; } else if (scaleType == ImageScaleType.NONE_SAFE) { scale = ImageSizeUtils.computeMinImageSampleSize(imageSize); } else { ImageSize targetSize = decodingInfo.getTargetSize(); boolean powerOf2 = scaleType == ImageScaleType.IN_SAMPLE_POWER_OF_2; scale = ImageSizeUtils.computeImageSampleSize(imageSize, targetSize, decodingInfo.getViewScaleType(), powerOf2); } if (scale > 1 && loggingEnabled) { L.d(LOG_SUBSAMPLE_IMAGE, imageSize, imageSize.scaleDown(scale), scale, decodingInfo.getImageKey()); } Options decodingOptions = decodingInfo.getDecodingOptions(); decodingOptions.inSampleSize = scale; return decodingOptions; }
Example #11
Source File: BitmapUtils.java From Cirrus_depricated with GNU General Public License v2.0 | 6 votes |
/** * Calculates a proper value for options.inSampleSize in order to decode a Bitmap minimizing * the memory overload and covering a target surface of reqWidth x reqHeight if the original * image is big enough. * * @param options Bitmap decoding options; options.outHeight and options.inHeight should * be set. * @param reqWidth Width of the surface where the Bitmap will be drawn on, in pixels. * @param reqHeight Height of the surface where the Bitmap will be drawn on, in pixels. * @return The largest inSampleSize value that is a power of 2 and keeps both * height and width larger than reqWidth and reqHeight. */ private static int calculateSampleFactor(Options options, int reqWidth, int reqHeight) { final int height = options.outHeight; final int width = options.outWidth; int inSampleSize = 1; if (height > reqHeight || width > reqWidth) { final int halfHeight = height / 2; final int halfWidth = width / 2; // calculates the largest inSampleSize value (for smallest sample) that is a power of 2 and keeps both // height and width **larger** than the requested height and width. while ((halfHeight / inSampleSize) > reqHeight && (halfWidth / inSampleSize) > reqWidth) { inSampleSize *= 2; } } return inSampleSize; }
Example #12
Source File: BaseImageDecoder.java From BigApp_WordPress_Android with Apache License 2.0 | 6 votes |
protected Options prepareDecodingOptions(ImageSize imageSize, ImageDecodingInfo decodingInfo) { ImageScaleType scaleType = decodingInfo.getImageScaleType(); int scale; if (scaleType == ImageScaleType.NONE) { scale = 1; } else if (scaleType == ImageScaleType.NONE_SAFE) { scale = ImageSizeUtils.computeMinImageSampleSize(imageSize); } else { ImageSize targetSize = decodingInfo.getTargetSize(); boolean powerOf2 = scaleType == ImageScaleType.IN_SAMPLE_POWER_OF_2; scale = ImageSizeUtils.computeImageSampleSize(imageSize, targetSize, decodingInfo.getViewScaleType(), powerOf2); } if (scale > 1 && loggingEnabled) { L.d(LOG_SUBSAMPLE_IMAGE, imageSize, imageSize.scaleDown(scale), scale, decodingInfo.getImageKey()); } Options decodingOptions = decodingInfo.getDecodingOptions(); decodingOptions.inSampleSize = scale; return decodingOptions; }
Example #13
Source File: EmojiUtil.java From XMPPSample_Studio with Apache License 2.0 | 6 votes |
private EmojiUtil(Context context) { this.context = context; density = context.getResources().getDisplayMetrics().density; try { if (density >= 1.5f) { this.isHdpi = true; InputStream localInputStream = context.getAssets().open("emoji/emoji_2x.png"); Options opts = new Options(); opts.inPurgeable = true; opts.inInputShareable = true; emojiImages = BitmapFactory.decodeStream(localInputStream, null, opts); } String[] index = EMOJI_INDEX.split("\n"); emojiRects = new HashMap<String, Rect>(); emojiDrawables = new HashMap<String, SoftReference<Drawable>>(); for (int i = 0; i < index.length; i++) { String[] emojis = index[i].split("-"); for (int j = 0; j < emojis.length; j++) { emojiRects.put(emojis[j], new Rect(j * 40, i * 40, 40 * (j + 1), 40 * (i + 1))); } } } catch (IOException localIOException) { } }
Example #14
Source File: ImageDecodingInfo.java From WliveTV with Apache License 2.0 | 6 votes |
public ImageDecodingInfo(String imageKey, String imageUri, String originalImageUri, ImageSize targetSize, ViewScaleType viewScaleType, ImageDownloader downloader, DisplayImageOptions displayOptions) { this.imageKey = imageKey; this.imageUri = imageUri; this.originalImageUri = originalImageUri; this.targetSize = targetSize; this.imageScaleType = displayOptions.getImageScaleType(); this.viewScaleType = viewScaleType; this.downloader = downloader; this.extraForDownloader = displayOptions.getExtraForDownloader(); considerExifParams = displayOptions.isConsiderExifParams(); decodingOptions = new Options(); copyOptions(displayOptions.getDecodingOptions(), decodingOptions); }
Example #15
Source File: ImageDecodingInfo.java From BigApp_WordPress_Android with Apache License 2.0 | 6 votes |
public ImageDecodingInfo(String imageKey, String imageUri, String originalImageUri, ImageSize targetSize, ViewScaleType viewScaleType, ImageDownloader downloader, DisplayImageOptions displayOptions) { this.imageKey = imageKey; this.imageUri = imageUri; this.originalImageUri = originalImageUri; this.targetSize = targetSize; this.imageScaleType = displayOptions.getImageScaleType(); this.viewScaleType = viewScaleType; this.downloader = downloader; this.extraForDownloader = displayOptions.getExtraForDownloader(); considerExifParams = displayOptions.isConsiderExifParams(); decodingOptions = new Options(); copyOptions(displayOptions.getDecodingOptions(), decodingOptions); }
Example #16
Source File: AccelerometerPlayActivity.java From android-AccelerometerPlay with Apache License 2.0 | 6 votes |
public SimulationView(Context context) { super(context); mAccelerometer = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER); DisplayMetrics metrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(metrics); mXDpi = metrics.xdpi; mYDpi = metrics.ydpi; mMetersToPixelsX = mXDpi / 0.0254f; mMetersToPixelsY = mYDpi / 0.0254f; // rescale the ball so it's about 0.5 cm on screen mDstWidth = (int) (sBallDiameter * mMetersToPixelsX + 0.5f); mDstHeight = (int) (sBallDiameter * mMetersToPixelsY + 0.5f); mParticleSystem = new ParticleSystem(); Options opts = new Options(); opts.inDither = true; opts.inPreferredConfig = Bitmap.Config.RGB_565; }
Example #17
Source File: DisplayImageOptions.java From letv with Apache License 2.0 | 6 votes |
public Builder() { this.imageResOnLoading = 0; this.imageResForEmptyUri = 0; this.imageResOnFail = 0; this.imageOnLoading = null; this.imageForEmptyUri = null; this.imageOnFail = null; this.resetViewBeforeLoading = false; this.cacheInMemory = false; this.cacheOnDisk = false; this.imageScaleType = ImageScaleType.IN_SAMPLE_POWER_OF_2; this.decodingOptions = new Options(); this.delayBeforeLoading = 0; this.considerExifParams = false; this.extraForDownloader = null; this.preProcessor = null; this.postProcessor = null; this.displayer = DefaultConfigurationFactory.createBitmapDisplayer(); this.handler = null; this.isSyncLoading = false; this.decodingOptions.inPurgeable = true; this.decodingOptions.inInputShareable = true; }
Example #18
Source File: ImageDecodingInfo.java From letv with Apache License 2.0 | 6 votes |
private void copyOptions(Options srcOptions, Options destOptions) { destOptions.inDensity = srcOptions.inDensity; destOptions.inDither = srcOptions.inDither; destOptions.inInputShareable = srcOptions.inInputShareable; destOptions.inJustDecodeBounds = srcOptions.inJustDecodeBounds; destOptions.inPreferredConfig = srcOptions.inPreferredConfig; destOptions.inPurgeable = srcOptions.inPurgeable; destOptions.inSampleSize = srcOptions.inSampleSize; destOptions.inScaled = srcOptions.inScaled; destOptions.inScreenDensity = srcOptions.inScreenDensity; destOptions.inTargetDensity = srcOptions.inTargetDensity; destOptions.inTempStorage = srcOptions.inTempStorage; if (VERSION.SDK_INT >= 10) { copyOptions10(srcOptions, destOptions); } if (VERSION.SDK_INT >= 11) { copyOptions11(srcOptions, destOptions); } }
Example #19
Source File: BaseImageDecoder.java From letv with Apache License 2.0 | 6 votes |
protected Options prepareDecodingOptions(ImageSize imageSize, ImageDecodingInfo decodingInfo) { int scale; ImageScaleType scaleType = decodingInfo.getImageScaleType(); if (scaleType == ImageScaleType.NONE) { scale = 1; } else if (scaleType == ImageScaleType.NONE_SAFE) { scale = ImageSizeUtils.computeMinImageSampleSize(imageSize); } else { boolean powerOf2; ImageSize targetSize = decodingInfo.getTargetSize(); if (scaleType == ImageScaleType.IN_SAMPLE_POWER_OF_2) { powerOf2 = true; } else { powerOf2 = false; } scale = ImageSizeUtils.computeImageSampleSize(imageSize, targetSize, decodingInfo.getViewScaleType(), powerOf2); } if (scale > 1 && this.loggingEnabled) { L.d(LOG_SUBSAMPLE_IMAGE, imageSize, imageSize.scaleDown(scale), Integer.valueOf(scale), decodingInfo.getImageKey()); } Options decodingOptions = decodingInfo.getDecodingOptions(); decodingOptions.inSampleSize = scale; return decodingOptions; }
Example #20
Source File: BitmapUtils.java From BigApp_Discuz_Android with Apache License 2.0 | 6 votes |
/** * 计算文件大小 * * @param options * @param minSideLength * @param maxNumOfPixels * @return */ public static int computeSampleSize(BitmapFactory.Options options, int minSideLength, int maxNumOfPixels) { int initialSize = computeInitialSampleSize(options, minSideLength, maxNumOfPixels); int roundedSize; if (initialSize <= 8) { roundedSize = 1; while (roundedSize < initialSize) { roundedSize <<= 1; } } else { roundedSize = (initialSize + 7) / 8 * 8; } return roundedSize; }
Example #21
Source File: GameView.java From CatVision-io-SDK-Android with BSD 3-Clause "New" or "Revised" License | 6 votes |
private Bitmap getResBitmap(int bmpResId) { Options opts = new Options(); opts.inDither = false; Resources res = getResources(); Bitmap bmp = BitmapFactory.decodeResource(res, bmpResId, opts); if (bmp == null && isInEditMode()) { // BitmapFactory.decodeResource doesn't work from the rendering // library in Eclipse's Graphical Layout Editor. Use this workaround instead. Drawable d = res.getDrawable(bmpResId); int w = d.getIntrinsicWidth(); int h = d.getIntrinsicHeight(); bmp = Bitmap.createBitmap(w, h, Config.ARGB_8888); Canvas c = new Canvas(bmp); d.setBounds(0, 0, w - 1, h - 1); d.draw(c); } return bmp; }
Example #22
Source File: MusicUtil.java From AirFree-Client with GNU General Public License v3.0 | 6 votes |
public static int computeSampleSize(Options options, int target) { int w = options.outWidth; int h = options.outHeight; int candidateW = w / target; int candidateH = h / target; int candidate = Math.max(candidateW, candidateH); if (candidate == 0) { return 1; } if (candidate > 1) { if ((w > target) && (w / candidate) < target) { candidate -= 1; } } if (candidate > 1) { if ((h > target) && (h / candidate) < target) { candidate -= 1; } } return candidate; }
Example #23
Source File: ImageDecodingInfo.java From mobile-manager-tool with MIT License | 6 votes |
public ImageDecodingInfo(String imageKey, String imageUri, String originalImageUri, ImageSize targetSize, ViewScaleType viewScaleType, ImageDownloader downloader, DisplayImageOptions displayOptions) { this.imageKey = imageKey; this.imageUri = imageUri; this.originalImageUri = originalImageUri; this.targetSize = targetSize; this.imageScaleType = displayOptions.getImageScaleType(); this.viewScaleType = viewScaleType; this.downloader = downloader; this.extraForDownloader = displayOptions.getExtraForDownloader(); considerExifParams = displayOptions.isConsiderExifParams(); decodingOptions = new Options(); copyOptions(displayOptions.getDecodingOptions(), decodingOptions); }
Example #24
Source File: IconRequest.java From letv with Apache License 2.0 | 6 votes |
public static IconRequest build(Context context, String iconHash) { if (iconHash == null) { return null; } try { int iconId = CommonUtils.getAppIconResourceId(context); Fabric.getLogger().d(Fabric.TAG, "App icon resource ID is " + iconId); Options options = new Options(); options.inJustDecodeBounds = true; BitmapFactory.decodeResource(context.getResources(), iconId, options); return new IconRequest(iconHash, iconId, options.outWidth, options.outHeight); } catch (Exception e) { Fabric.getLogger().e(Fabric.TAG, "Failed to load icon", e); return null; } }
Example #25
Source File: BitmapUtils.java From BigApp_Discuz_Android with Apache License 2.0 | 6 votes |
/** * 计算文件大小 * * @param options * @param minSideLength * @param maxNumOfPixels * @return */ private static int computeInitialSampleSize(BitmapFactory.Options options, int minSideLength, int maxNumOfPixels) { double w = options.outWidth; double h = options.outHeight; int lowerBound = (maxNumOfPixels == -1) ? 1 : (int) Math.ceil(Math .sqrt(w * h / maxNumOfPixels)); int upperBound = (minSideLength == -1) ? 128 : (int) Math.min(Math .floor(w / minSideLength), Math.floor(h / minSideLength)); if (upperBound < lowerBound) { // return the larger one when there is no overlapping zone. return lowerBound; } if ((maxNumOfPixels == -1) && (minSideLength == -1)) { return 1; } else if (minSideLength == -1) { return lowerBound; } else { return upperBound; } }
Example #26
Source File: FileUtils.java From letv with Apache License 2.0 | 6 votes |
public static Bitmap getBitmapByPath(String filename) { if (!checkFileIsEnabledPath(filename)) { return null; } Options newOpts = new Options(); newOpts.inJustDecodeBounds = true; Bitmap bitmap = BitmapFactory.decodeFile(filename, newOpts); int w = newOpts.outWidth; int h = newOpts.outHeight; if (bitmap != null) { bitmap.recycle(); } int be = 1; if (w > h && ((float) w) > 300.0f) { be = (int) (((float) newOpts.outWidth) / 300.0f); } else if (w < h && ((float) h) > 400.0f) { be = (int) (((float) newOpts.outHeight) / 400.0f); } if (be <= 0) { be = 1; } Options newOpts2 = new Options(); newOpts2.inSampleSize = be; newOpts2.inJustDecodeBounds = false; return BitmapFactory.decodeFile(filename, newOpts2); }
Example #27
Source File: ImageActivity.java From letv with Apache License 2.0 | 6 votes |
private Bitmap a(String str) throws IOException { int i = 1; Options options = new Options(); options.inJustDecodeBounds = true; Uri parse = Uri.parse(str); InputStream openInputStream = getContentResolver().openInputStream(parse); if (openInputStream == null) { return null; } BitmapFactory.decodeStream(openInputStream, null, options); openInputStream.close(); int i2 = options.outWidth; int i3 = options.outHeight; while (i2 * i3 > 4194304) { i2 /= 2; i3 /= 2; i *= 2; } options.inJustDecodeBounds = false; options.inSampleSize = i; return BitmapFactory.decodeStream(getContentResolver().openInputStream(parse), null, options); }
Example #28
Source File: FileUtils.java From letv with Apache License 2.0 | 6 votes |
private static int computeInitialSampleSize(Options options, int minSideLength, int maxNumOfPixels) { double w = (double) options.outWidth; double h = (double) options.outHeight; int lowerBound = maxNumOfPixels == -1 ? 1 : (int) Math.ceil(Math.sqrt((w * h) / ((double) maxNumOfPixels))); int upperBound = minSideLength == -1 ? 128 : (int) Math.min(Math.floor(w / ((double) minSideLength)), Math.floor(h / ((double) minSideLength))); if (upperBound < lowerBound) { return lowerBound; } if (maxNumOfPixels == -1 && minSideLength == -1) { return 1; } if (minSideLength != -1) { return upperBound; } return lowerBound; }
Example #29
Source File: a.java From letv with Apache License 2.0 | 6 votes |
private static final boolean b(String str, int i, int i2) { if (TextUtils.isEmpty(str)) { return false; } Options options = new Options(); options.inJustDecodeBounds = true; BitmapFactory.decodeFile(str, options); int i3 = options.outWidth; int i4 = options.outHeight; if (options.mCancel || options.outWidth == -1 || options.outHeight == -1) { return false; } int i5 = i3 > i4 ? i3 : i4; if (i3 >= i4) { i3 = i4; } f.b("AsynScaleCompressImage", "longSide=" + i5 + "shortSide=" + i3); options.inPreferredConfig = Config.RGB_565; if (i5 > i2 || i3 > i) { return true; } return false; }
Example #30
Source File: a.java From letv with Apache License 2.0 | 6 votes |
private static int b(Options options, int i, int i2) { double d = (double) options.outWidth; double d2 = (double) options.outHeight; int ceil = i2 == -1 ? 1 : (int) Math.ceil(Math.sqrt((d * d2) / ((double) i2))); int min = i == -1 ? 128 : (int) Math.min(Math.floor(d / ((double) i)), Math.floor(d2 / ((double) i))); if (min < ceil) { return ceil; } if (i2 == -1 && i == -1) { return 1; } if (i != -1) { return min; } return ceil; }