VideoShotEditActivity.java 文件源码

java
阅读 49 收藏 0 点赞 0 评论 0

项目:letv 作者:
private String getFileAddedWatermark(String path, String text, String voice) {
    if (!new File(path).exists()) {
        return null;
    }
    Options options = new Options();
    options.inJustDecodeBounds = false;
    Bitmap bitmap0 = BitmapFactory.decodeFile(path, options);
    int width = options.outWidth;
    int height = options.outHeight;
    Bitmap bitmapPic = Bitmap.createBitmap(width, height, Config.ARGB_8888);
    Canvas canvas = new Canvas(bitmapPic);
    canvas.drawBitmap(bitmap0, null, new Rect(0, 0, width, height), null);
    Paint textPaint = new Paint();
    textPaint.setColor(-1);
    textPaint.setTextSize((float) getTextSize());
    textPaint.setFlags(2);
    canvas.drawText(text, 0, text.length(), 30.0f, 50.0f, textPaint);
    Rect rect = new Rect(0, height - getTextBgHeight(), width, height);
    if (!isOrigPicMode) {
        Paint voiceBgPaint = new Paint();
        voiceBgPaint.setColor(getResources().getColor(2131493164));
        voiceBgPaint.setStyle(Style.FILL);
        voiceBgPaint.setFlags(2);
        canvas.drawRect(rect, voiceBgPaint);
        voiceBgPaint.setColor(-1);
        voiceBgPaint.setTextSize((float) getTextSize());
        voiceBgPaint.setTextAlign(Align.CENTER);
        FontMetricsInt fontMetrics = voiceBgPaint.getFontMetricsInt();
        int baseline = (rect.top + ((((rect.bottom - rect.top) - fontMetrics.bottom) + fontMetrics.top) / 2)) - fontMetrics.top;
        canvas.drawText(voice, (float) rect.centerX(), (float) baseline, voiceBgPaint);
    }
    return saveBitmap(bitmapPic);
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号