用Martix 放大縮小ImageView

2021-07-16 03:10:42 字數 1339 閱讀 1140

程式中以matrix物件搭配bitmap的createbitmap()方法來對進行縮放,並利用displaymetrics物件來取得螢幕顯示大小,用以控制放大後的尺寸不會超過螢幕顯示的區域。

public

class

ex04_23 

extends

activity  

});  

/* 放大按鈕onclicklistener */

mbutton02.setonclicklistener(new

button.onclicklistener()   

});  

}  /* 縮小的method */

private

void

small()  

else

/* 產生新的imageview,放入resize的bitmap物件,再放入layout中 */

id++;  

imageview imageview   

= new

imageview(ex04_23.this

);  

imageview.setid(id);  

imageview.setimagebitmap(resizebmp);  

layout1.addview(imageview);  

setcontentview(layout1);  

/* 因為放到最大時放大按鈕會disable,所以在縮小

時把它重設為enable */

mbutton02.setenabled(true

);  

}  /* 放大的method */

private

void

big()  

else

/* 產生新的imageview,放入resize的bitmap物件,再放入layout中 */

id++;  

imageview imageview =  

newimageview(ex04_23.this

);  

imageview.setid(id);  

imageview.setimagebitmap(resizebmp);  

layout1.addview(imageview);  

setcontentview(layout1);  

/* 如果再放大會超過螢幕大小,就把button disable */

if(scalewidth*scale*bmpwidth>displaywidth||   

scaleheight*scale*bmpheight>displayheight)   

}  }  

OpenGL放大縮小實現

本文採用兩種方式,在opengl中實現放大縮小功能 方式一.改變 視點 與模型之間的距離 改變模型視點變換矩陣 對於這種方式存在三個問題需要解決 縮放過程過渡平滑 當模型放大或縮小到一定程度,減慢其縮放速度,以免視點很快地貼近模型或消失在場景中 防止視點進入模型內部 解決方案 使用反正切函式 y 0...

放大縮小 去處寶山這個地方把世界放大又縮小

寶山智慧型灣,在這座由各種顏色的貨櫃設計改造而來的新型園區裡,隨處可見科技與藝術的融合,除了6月舉行的首屆智慧型灣夜生活節 9月新開的大陸首家星巴克貨櫃店 梅派青衣史依弘的劇場 家宋思衡的多 工作室,這裡還藏著乙個工業旅遊地標 首個中國3d列印文化博物館。彼時,這裡是上海第三毛紡織廠的倉庫用地,如今...

QT 放大與縮小按鈕

標頭檔案 painttest.h ifndef painttest h define painttest h include include class painttest public qwidget endif painttest hpainttest.cpp include painttest...