編輯:關於Android編程
我們在發微博或者csdn博文的時候都可以給圖片加上一個水印,一個獨立的標識,那是怎麼實現的呢?先封裝一個BitmapTools封裝類,該類要解決的問題是一將突破存儲至sdcard中,二給圖片加上水印。
BitmapTools
package com.example.g11_bitmap04; import java.io.File; import java.io.FileOutputStream; import java.io.OutputStream; import android.content.res.Resources; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.graphics.Paint; import android.os.Environment; public class BitmapTools { public BitmapTools() { // TODO Auto-generated constructor stub } public static Bitmap createBitmap(Resources resources, int resid, String name) { Bitmap bitmap=BitmapFactory.decodeResource(resources, resid); //復制一份新的Bitmap,因為不能直接在原有的bitmap上進行水印操作 //Bitmap.config存儲的格式 Bitmap newBitmap=bitmap.copy(Bitmap.Config.ARGB_8888, true); //使用自定義畫布 Canvas canvas=new Canvas(newBitmap); Paint paint=new Paint(); paint.setTextSize(200); canvas.drawText("hello", 100, 100, paint); //判斷SDcard是否在可用狀態 if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){ //直接將圖片保存在根目錄下 File root=Environment.getExternalStorageDirectory(); OutputStream outputStream=null; try { outputStream=new FileOutputStream(new File(root, name)); //對圖片進行壓縮並以png格式,保存在sdcard中 newBitmap.compress(Bitmap.CompressFormat.PNG, 50, outputStream); } catch (Exception e) { // TODO: handle exception } } return newBitmap; } }
package com.example.g11_bitmap04; import android.os.Bundle; import android.app.Activity; import android.graphics.Bitmap; import android.view.Menu; import android.view.View; import android.widget.Button; import android.widget.ImageView; public class MainActivity extends Activity { private ImageView imageView; private Button button; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); imageView=(ImageView)this.findViewById(R.id.imageView1); button=(Button)this.findViewById(R.id.button1); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Bitmap bitmap=BitmapTools.createBitmap(getResources(), R.drawable.a, "a.png"); imageView.setImageBitmap(bitmap); } }); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } }
Android技術精髓-BackupActivity 首先介紹下今天主題BackupActivity功能:在Android應用UI activity 中繼承Asy
剛剛買回了手機,手機裡面或多或少都會帶有一些本身的系統軟件,有些軟件很少用,但是卻很占內存,想必很多人選擇ROOT的直接原因就是系統自帶軟件太多了,不僅占用
android開發中實現單選與多選對話框的代碼非常簡單,具體代碼如下所示:public void myClick(View view) { // 單選對話框 //si
本文實例講述了Android使用Sensor感應器獲取用戶移動方向的方法。分享給大家供大家參考,具體如下:今天繼續給大家分享一下第二個重要的感應器,其實獲取方向本應該很簡