1. 程式人生 > 其它 >直播視訊app原始碼,將bitmap儲存為本地png圖片

直播視訊app原始碼,將bitmap儲存為本地png圖片

技術標籤:技術類htmlcanvasjsbitmapandroid

直播視訊app原始碼,將bitmap儲存為本地png圖片相關的程式碼
BitmapUtils

package com.zhangyu.myopengl.utils;

import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.Log;

import java.io.FileOutputStream
; import java.io.OutputStream; public class BitmapUtils { /** * 文字生成圖片 * @param text * @param textSize * @param textColor * @param bgColor * @param padding * @return */ public static Bitmap text2Bitmap(String text, int textSize, String textColor, String
bgColor, int padding) { Paint paint = new Paint(); paint.setColor(Color.parseColor(textColor)); paint.setTextSize(textSize); paint.setStyle(Paint.Style.FILL); paint.setAntiAlias(true); float width = paint.measureText(text, 0, text.length()); float
top = paint.getFontMetrics().top; float bottom = paint.getFontMetrics().bottom; Bitmap bm = Bitmap.createBitmap((int) (width + padding * 2), (int) ((bottom - top) + padding * 2), Bitmap.Config.ARGB_8888); Canvas canvas = new Canvas(bm); canvas.drawColor(Color.parseColor(bgColor)); canvas.drawText(text, padding, - top + padding, paint); return bm; } /** * 將bitmap轉換為本地的圖片 * * @param bitmap * @return */ public static String bitmap2Path(Bitmap bitmap, String path) { try { OutputStream os = new FileOutputStream(path); bitmap.compress(Bitmap.CompressFormat.PNG, 100, os); os.flush(); os.close(); } catch (Exception e) { Log.e("TAG", "", e); } return path; } }

Main

Bitmap bitmap = Bitmap.createBitmap(720, 1280, Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
canvas.drawColor(Color.GREEN);
paint.setColor(Color.WHITE);
paint.setTextSize(100);
Log.e(TAG, "onDrawFrame: frame=" + frame);
String text = "當前幀數:" + frame++;
drawTextWithCenterPoint(canvas, 720 / 2, 1280 / 2, text, paint);
canvas.drawText(text, 0, 100, paint);
//圖片儲存本地
String fileDir = Environment.getExternalStorageDirectory() + "/1/pic/";
String fileName = System.currentTimeMillis() + ".png";
String path = fileDir + fileName;
if (!new File(fileDir).exists()) {
    new File(fileDir).mkdirs();
}
BitmapUtils.bitmap2Path(bitmap, path);

以上就是直播視訊app原始碼,將bitmap儲存為本地png圖片相關的程式碼, 更多內容歡迎關注之後的文章