• android 图片合成


    
    
    package com.ebensz.eink.demo;
    
    import java.io.File;
    import java.io.FileOutputStream;
    
    import android.app.Activity;
    import android.graphics.Bitmap;
    import android.graphics.Bitmap.CompressFormat;
    import android.graphics.Canvas;
    import android.graphics.Matrix;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.MeasureSpec;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    
    public class Exchange extends Activity implements OnClickListener {
        private Bitmap bitmap1;
        private Button mExportBtn;
        private static final String BITMAP_He = "/sdcard/bitmap_add.png";
    
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.scrollview);
    
            mExportBtn = (Button) this.findViewById(R.id.export_he);
            mExportBtn.setOnClickListener(this);
        }
    
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            switch (v.getId()) {
            case R.id.export_he:
                exportAll();
                break;
            default:
                break;
            }
        }
    
        /**
         * 将布局转换为View类型对象
         * @param filename
         */
        private void exportAll( ) {
            View view = getLayoutInflater().inflate(R.layout.scrollview, null);
            view.setDrawingCacheEnabled(true);
            view.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED),
                    MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
            view.layout(0, 0, view.getMeasuredWidth(), view.getMeasuredHeight());
            try {
                bitmap1 = view.getDrawingCache();
                heCheng(BITMAP_He);
            } catch (Exception e) {
    
            }
        }
    
        /**
         * bitmap1 考评结果图片
         * bitmap2 签字图片
         * bitmap3 带签字的考评结果
         * @param filename 生成带签字考评结果的文件路径和文件名
         */
        private void heCheng(String filename) {
    
            Bitmap bitmap2 = MainActivity.mbitmap;
            Bitmap bitmap3 = Bitmap.createBitmap(bitmap1.getWidth(),
                    bitmap1.getHeight(), bitmap1.getConfig());
            Canvas canvas = new Canvas(bitmap3);
            canvas.drawBitmap(bitmap1, new Matrix(), null);
            canvas.drawBitmap(bitmap2, 20, 1000, null); // 120、350为bitmap2写入点的x、y坐标
            try {
                FileOutputStream out = new FileOutputStream(filename);
                bitmap3.compress(Bitmap.CompressFormat.PNG, 90, out);
                out.close();
            } catch (Exception e) {
    
            }
        }
    
    }
  • 相关阅读:
    Visual Assist X 安装失败解决办法
    ACM-水池数目问题
    代码生成器 CodeBuilder 2.7 新版发布
    Fireasy 官网改版
    跟我学: 使用 fireasy 搭建 asp.net core 项目系列之三 —— 配置
    跟我学: 使用 fireasy 搭建 asp.net core 项目系列之二 —— 准备
    跟我学: 使用 fireasy 搭建 asp.net core 项目系列之一 —— 开篇
    nopCommerce 学习之路(一)Nop之强制拆迁
    平庸技术流,用 WebApi +AngularJS 实现网络爬虫
    nopCommerce 学习之路(二)从EF到NPoco
  • 原文地址:https://www.cnblogs.com/qinaidexin/p/4560797.html
Copyright © 2020-2023  润新知