<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      圖片的旋轉,移動,倒影,鏡子效果

      Matrix是一個矩陣

      1 Matrix matrix=new Matrix();
      2 matrix.setValues(new float[]{
      3         2,0,0,
      4         0,1,0,
      5         0,0,1    
      6 });
      7 x=2x+0y+0z;
      8 y=0x+1y+0z;
      9 z=0x+0y+1z; //z越大離用戶越遠

      算法不清楚的可以直接用代碼操作

      1 //matrix.setScale(sx, sy);

      旋轉的話也可以直接用代碼

      1 1 //matrix.setRotate(30);//旋轉30度             

      可以通過畫筆來取消鋸齒,但是效果不是很好

      1                 Paint paint = new Paint();
      2                 paint.setAntiAlias(true);//在算法上 取消鋸齒

      可以設置以什么位置進行旋轉

      1 //設置旋轉 的橫坐標以及縱坐標
      2             //    matrix.setRotate(30, bitmap.getWidth()/2, bitmap.getHeight()/2);

      平移

      1   //設置透明度
      2   //    matrix.setTranslate(30, 0);

      倒影效果,鏡子效果

      1         //更改了y軸的值 這是左右 y軸的話 就改y的
      2                 matrix.setValues(new float[] {
      3                         -1, 0, 0,
      4                         0, 1, 0,
      5                         0, 0, 1
      6                     });
      7                 //向下移動一個圖片的高度
      8                 matrix.postTranslate(bitmap.getWidth(), 0);

       

      如果要倒影只有一半 那么就設置新生成圖片的一半,如果要更好一點可以加遮罩,等方法實現

       

      全部代碼如下:

       1 package cn.itcast.bitmapcopy;
       2 
       3 import java.io.FileNotFoundException;
       4 
       5 import android.app.Activity;
       6 import android.content.Intent;
       7 import android.graphics.Bitmap;
       8 import android.graphics.BitmapFactory;
       9 import android.graphics.Canvas;
      10 import android.graphics.Matrix;
      11 import android.graphics.Paint;
      12 import android.net.Uri;
      13 import android.os.Bundle;
      14 import android.view.View;
      15 import android.widget.ImageView;
      16 
      17 public class DemoActivity extends Activity {
      18     private ImageView iv,iv_copy;
      19 
      20     @Override
      21     public void onCreate(Bundle savedInstanceState) {
      22         super.onCreate(savedInstanceState);
      23         setContentView(R.layout.main);
      24         iv = (ImageView) findViewById(R.id.iv);
      25         iv_copy = (ImageView) findViewById(R.id.iv_copy);
      26         
      27     }
      28     
      29     
      30     public void selectImage(View view){
      31         Intent intent = new Intent();
      32         intent.setAction("android.intent.action.PICK");
      33         intent.addCategory("android.intent.category.DEFAULT");
      34         intent.setType("image/*");
      35         startActivityForResult(intent, 0);
      36     }
      37     
      38     
      39     @Override
      40     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
      41         try {
      42             if (data != null) {
      43                 // 得到點擊圖片的uri
      44                 Uri uri = data.getData();
      45                 //原圖
      46                 Bitmap bitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(uri));
      47                 iv.setImageBitmap(bitmap);
      48                 //原圖的拷貝
      49                 Bitmap alterBitmap  = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight()-30, bitmap.getConfig());
      50                 //以拷貝圖片的為模板創建一個畫布
      51                 Canvas canvas = new Canvas(alterBitmap);
      52                 Matrix matrix = new Matrix();
      53 /*                matrix.setValues(new float[] {
      54                     2, 0, 0,
      55                     0, 2, 0,
      56                     0, 0, 1
      57                 });*/
      58                 //matrix.setScale(sx, sy);
      59                 
      60                 //matrix.setRotate(30);//旋轉30度
      61 
      62                 //設置旋轉 的橫坐標以及縱坐標
      63             //    matrix.setRotate(30, bitmap.getWidth()/2, bitmap.getHeight()/2);
      64                 //設置透明度
      65             //    matrix.setTranslate(30, 0);
      66                 
      67                 //更改了y軸的值 
      68                 matrix.setValues(new float[] {
      69                         -1, 0, 0,
      70                         0, 1, 0,
      71                         0, 0, 1
      72                     });
      73                 //向下移動一個圖片的高度
      74                 matrix.postTranslate(bitmap.getWidth(), 0);
      75                 
      76                 
      77                 Paint paint = new Paint();
      78                 paint.setAntiAlias(true);//在算法上 取消鋸齒
      79                 canvas.drawBitmap(bitmap, matrix, paint);
      80                 iv_copy.setImageBitmap(alterBitmap);
      81             }
      82         } catch (FileNotFoundException e) {
      83             e.printStackTrace();
      84         }
      85         super.onActivityResult(requestCode, resultCode, data);
      86     }
      87 }

       

      posted @ 2013-01-27 14:25  王世楨  閱讀(325)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 任我爽精品视频在线播放| 精品2020婷婷激情五月| 色偷偷久久一区二区三区| 国产熟女真实乱精品51| chinese性内射高清国产| 久久精品国产99国产精品严洲| 大地资源高清播放在线观看| 女人高潮被爽到呻吟在线观看| 亚洲伊人久久综合成人| 毛片网站在线观看| 中文字幕日韩有码一区| 亚洲精品一区二区三区蜜| 成人亚洲精品一区二区三区| 年轻女教师hd中字3| 看全色黄大黄大色免费久久| 亚洲精品日韩中文字幕| 国产极品粉嫩尤物一区二区| 国产高清精品在线91| 色五月丁香五月综合五月| 一本色道久久88精品综合| 亚洲高潮喷水无码AV电影| 久久精品国产99亚洲精品| 午夜成人鲁丝片午夜精品| 亚洲成a人无码av波多野| 久久精品国产亚洲AV瑜伽| 午夜福利在线观看6080| 久久九九99这里有视频| 国产精成人品| 亚洲自拍偷拍福利小视频| 亚洲国产午夜精品福利| 国产成人免费午夜在线观看| 国产一区二区三区十八禁| 久久久午夜精品福利内容| 久久久久人妻精品一区三寸 | 国产精自产拍久久久久久蜜| 中文字幕日韩精品有码| 日韩精品中文字幕有码| 日本高清一区免费中文视频| 九九热精品视频在线免费| 午夜福利国产精品视频| 高清自拍亚洲精品二区|