public BitmapDrawableAssert hasPaint(Paint paint) { isNotNull(); Paint actualPaint = actual.getPaint(); assertThat(actualPaint) // .overridingErrorMessage("Expected paint <%s> but was <%s>.", paint, actualPaint) // .isEqualTo(paint); return this; }
@Override protected void onDraw(Canvas canvas) { Drawable myDrawable = getDrawable(); if (myDrawable!=null && myDrawable instanceof BitmapDrawable && mCornerRadius > 0) { rectF.set(myDrawable.getBounds()); int prevCount = canvas.saveLayer(rectF, null, Canvas.ALL_SAVE_FLAG); getImageMatrix().mapRect(rectF); Paint paint = ((BitmapDrawable) myDrawable).getPaint(); paint.setAntiAlias(true); paint.setColor(DEFAULT_COLOR); Xfermode prevMode = paint.getXfermode(); canvas.drawARGB(DEFAULT_RGB, DEFAULT_RGB, DEFAULT_RGB, DEFAULT_RGB); canvas.drawRoundRect(rectF, mCornerRadius, mCornerRadius, paint); paint.setXfermode(porterDuffXfermode); super.onDraw(canvas); paint.setXfermode(prevMode); canvas.restoreToCount(prevCount); } else { super.onDraw(canvas); } }
for(int i = 0; i < animation.getNumberOfFrames(); i++) { Drawable frame = animation.getFrame(i); if(frame instanceof BitmapDrawable) { BitmapDrawable frameBitmap = (BitmapDrawable)frame; frameBitmap.getPaint().setFilterBitmap(false); } }
public BitmapDrawableAssert hasPaint(Paint paint) { isNotNull(); Paint actualPaint = actual.getPaint(); assertThat(actualPaint) // .overridingErrorMessage("Expected paint <%s> but was <%s>.", paint, actualPaint) // .isEqualTo(paint); return this; }
canvas.translate(0, topOffsetAfterScale); canvas.scale(scale, scale); canvas.drawBitmap(imgBitmap, 0, 0, imageDrawable.getPaint()); canvas.restoreToCount(save_count);
private void draw(Canvas canvas, int alpha, boolean needClip) { if (drawable instanceof BitmapDrawable){ int saved = canvas.saveLayer(null, null, Canvas.ALL_SAVE_FLAG); Bitmap bitmap = ((BitmapDrawable) drawable).getBitmap(); Paint paint= ((BitmapDrawable) drawable).getPaint(); paint.setColor(Color.WHITE); paint.setAlpha(alpha); if (needClip) { canvas.drawPath(area.getAreaPath(), paint); paint.setXfermode(SRC_IN); } canvas.drawBitmap(bitmap,matrix,paint); paint.setXfermode(null); canvas.restoreToCount(saved); }else { canvas.save(); if (needClip) { canvas.clipPath(area.getAreaPath()); } canvas.concat(matrix); drawable.setBounds(drawableBounds); drawable.setAlpha(alpha); drawable.draw(canvas); canvas.restore(); } }
@Override protected HashMap<String, Object> fillValues(Drawable d, HashMap<String, Object> data, HashMap<String, Object> contextData) { super.fillValues(d, data, contextData); BitmapDrawable bd = (BitmapDrawable) d; final Bitmap bitmap = bd.getBitmap(); data.put("Bitmap", String.valueOf(bitmap)); if (bitmap != null) { final BaseExtractor<Bitmap> extractor = (BaseExtractor<Bitmap>) DetailExtractor.getExtractor(bitmap.getClass()); if (extractor != null) { extractor.onFillValues(bitmap, data, contextData); } } data.put("Gravity", getTranslator().gravity(bd.getGravity())); data.put("Paint", String.valueOf(bd.getPaint())); data.put("TileModeX", String.valueOf(bd.getTileModeX())); data.put("TileModeY", String.valueOf(bd.getTileModeY())); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) { data.put("HasAntiAlias", bd.hasAntiAlias()); data.put("HasMipMap", bd.hasMipMap()); } return data; } }
((BitmapDrawable) iconMask).getPaint().setXfermode( new PorterDuffXfermode(PorterDuff.Mode.DST_OUT)); iconMask.draw(canvas);
paint = roundPaint; } else { paint = bitmapDrawable.getPaint();
Shader.TileMode.REPEAT, Shader.TileMode.CLAMP); shapeDrawable.getPaint().setShader(bitmapShader); shapeDrawable.getPaint().setColorFilter(bitmapDrawable.getPaint().getColorFilter()); return (clip) ? new ClipDrawable(shapeDrawable, Gravity.LEFT, ClipDrawable.HORIZONTAL) : shapeDrawable;
Shader.TileMode.REPEAT, Shader.TileMode.CLAMP); shapeDrawable.getPaint().setShader(bitmapShader); shapeDrawable.getPaint().setColorFilter(bitmapDrawable.getPaint().getColorFilter()); return (clip) ? new ClipDrawable(shapeDrawable, Gravity.LEFT, ClipDrawable.HORIZONTAL) : shapeDrawable;