輸出一只貓

下午閑來(lái)無(wú)聊,想在注釋里用*畫(huà)一只貓癞蚕,可是吧蕊爵,怎么畫(huà)都畫(huà)不好。就像下面這樣:

cat0.jpg

于是乎桦山,我萌生了用代碼來(lái)幫我完成這件事情的念頭攒射。
首先,找到一張貓的圖片恒水,比如說(shuō)這樣:


cat.jpg

然后会放,通過(guò)在imageview中設(shè)置圖片附迷,我們可以獲取到它的bitmap對(duì)象诡延。

cat= (ImageView) findViewById(R.id.imageView);
Bitmap bitmap = ((BitmapDrawable)cat.getDrawable()).getBitmap();

獲取到bitmap后,只需要通過(guò)網(wǎng)格獲取每個(gè)點(diǎn)上的顏色參數(shù)阎肝,再通過(guò)顏色的不同來(lái)判斷輸出*還是空格甩骏,即可畫(huà)出我們需要的貓窗市。
這里為了方便,我將每個(gè)點(diǎn)的信息封裝成了PointColor類:


class PointColor {

private int red;
private int blue;
private int green;
private int x;
private int y;

PointColor(int x, int y){
    this.x=x;
    this.y=y;
}

void setColor(int pixel){
    setRed(Color.red(pixel));
    setBlue(Color.blue(pixel));
    setGreen(Color.green(pixel));
}

public int getRed() {
    return red;
}

public void setRed(int red) {
    this.red= red;
}

public int getBlue() {
    return blue;
}

public void setBlue(int blue) {
     this.blue= blue;
}

public int getGreen() {
    return green;
}

private void setGreen(int green) {
    this.green= green;
}

public int getX() {
    return x;
}

public void setX(int x) {
    this.x= x;
}

public int getY() {
    return y;
}

public void setY(int y) {
    this.y= y;
}
}

網(wǎng)格的數(shù)據(jù)我們需要用到一個(gè)二維數(shù)組來(lái)儲(chǔ)存饮笛,下面初始化一下:

PointColor[][] points;
int width = bitmap.getWidth();
int height = bitmap.getHeight();
int POINT_ROW = 80; //行點(diǎn)數(shù)
int POINT_Column =height* POINT_ROW /width; //通過(guò)計(jì)算算出列點(diǎn)數(shù)
points = new PointColor[POINT_Column][POINT_ROW];

通過(guò)bitmap的getPixel方法獲取網(wǎng)格上點(diǎn)的數(shù)據(jù)并輸入數(shù)組:

int x_offset = width/(POINT_ROW -1);
int y_offset = height/(POINT_Column-1);
for (int i = 0;i<POINT_Column;i++){    
    for (int j = 0; j< POINT_ROW; j++){        
        int x = j*x_offset;       
        int y = i*y_offset;        
        PointColor a = new PointColor(x,y);        
        a.setColor(bitmap.getPixel(x,y));       
        points[i][j]=a;    
    }
}

輸出結(jié)果到控制臺(tái):

for (int i=0;i<POINT_Column;i++){   
    for (int j = 0; j< POINT_ROW; j++){
        //這句可以根據(jù)圖片的情況自行判斷咨察,只要取符合條件的點(diǎn)即可。       
        if (points[i][j].getBlue()>0 && points[i][j].getBlue()<200){ 
            System.out.print("*");        
        }else {            
            System.out.print(" ");        
       }    
    }    
System.out.print("\n");
}

為了更加美觀福青,推薦使用Klog第三方庫(kù)進(jìn)行輸出

9.pic.jpg
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末摄狱,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子无午,更是在濱河造成了極大的恐慌媒役,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,000評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件宪迟,死亡現(xiàn)場(chǎng)離奇詭異酣衷,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)次泽,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,745評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門穿仪,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)席爽,“玉大人,你說(shuō)我怎么就攤上這事啊片≈欢停” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,561評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵紫谷,是天一觀的道長(zhǎng)齐饮。 經(jīng)常有香客問(wèn)我,道長(zhǎng)碴里,這世上最難降的妖魔是什么沈矿? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,782評(píng)論 1 298
  • 正文 為了忘掉前任,我火速辦了婚禮咬腋,結(jié)果婚禮上羹膳,老公的妹妹穿的比我還像新娘。我一直安慰自己根竿,他們只是感情好陵像,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,798評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著寇壳,像睡著了一般醒颖。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上壳炎,一...
    開(kāi)封第一講書(shū)人閱讀 52,394評(píng)論 1 310
  • 那天泞歉,我揣著相機(jī)與錄音,去河邊找鬼匿辩。 笑死腰耙,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的铲球。 我是一名探鬼主播挺庞,決...
    沈念sama閱讀 40,952評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼稼病!你這毒婦竟也來(lái)了选侨?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,852評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤然走,失蹤者是張志新(化名)和其女友劉穎援制,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體芍瑞,經(jīng)...
    沈念sama閱讀 46,409評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡晨仑,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,483評(píng)論 3 341
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片寻歧。...
    茶點(diǎn)故事閱讀 40,615評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖秩仆,靈堂內(nèi)的尸體忽然破棺而出码泛,到底是詐尸還是另有隱情,我是刑警寧澤澄耍,帶...
    沈念sama閱讀 36,303評(píng)論 5 350
  • 正文 年R本政府宣布噪珊,位于F島的核電站,受9級(jí)特大地震影響齐莲,放射性物質(zhì)發(fā)生泄漏痢站。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,979評(píng)論 3 334
  • 文/蒙蒙 一选酗、第九天 我趴在偏房一處隱蔽的房頂上張望阵难。 院中可真熱鬧,春花似錦芒填、人聲如沸呜叫。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,470評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)朱庆。三九已至,卻和暖如春闷祥,著一層夾襖步出監(jiān)牢的瞬間娱颊,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,571評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工凯砍, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留箱硕,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,041評(píng)論 3 377
  • 正文 我出身青樓果覆,卻偏偏與公主長(zhǎng)得像颅痊,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子局待,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,630評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,302評(píng)論 25 707
  • ¥開(kāi)啟¥ 【iAPP實(shí)現(xiàn)進(jìn)入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開(kāi)一個(gè)線程斑响,因...
    小菜c閱讀 6,444評(píng)論 0 17
  • 2021期待與你一起共事,點(diǎn)擊查看崗位[http://www.reibang.com/p/6f4d67fa406...
    閑庭閱讀 16,641評(píng)論 0 75
  • 內(nèi)容抽屜菜單ListViewWebViewSwitchButton按鈕點(diǎn)贊按鈕進(jìn)度條TabLayout圖標(biāo)下拉刷新...
    皇小弟閱讀 46,791評(píng)論 22 665
  • 1月-3月钳榨,玩 4月-6月舰罚,才開(kāi)始知道學(xué)習(xí),好在為時(shí)不晚薛耻。其中一度挠眨考掉到過(guò)398分,封鎖消息不告訴家長(zhǎng),高考發(fā)揮...
    滾橘子閱讀 233評(píng)論 0 0