
要上傳照下來的照片或是相簿中的照片時,如果檔案太大又沒有實際需要時,在本地端變更上傳圖片的大小就是一見很重要的事情。
使用xcode的話,好像是使用這個方式。而Titanium則有更簡單的方法,就是透過imageView來完成一切:
Titanium.Media.showCamera({
success:function(event){
var cropRect = event.cropRect;
var image = event.media;
var f = Titanium.Filesystem.getFile(Titanium.Filesystem.applicationDataDirectory,'camera_photo.png');
f.write(image);
var imageView = Titanium.UI.createImageView({
image:f.nativePath,
width:320,
height:320
});
image = imageView.toImage();
uplaodData(image);
},
cancel:function(){
win.close();
},
error:function(error){
win.close();
},
allowEditing:true
});
其中的function uplaodData()是另外的函數,也可以把它放到按鈕裡面,這邊就不詳細敘述了。
在補充一點,上傳的檔名會變成「ooxx.bin」,但是格式已經是「.jpg」的形式,所以,只要在php中,把上傳的副檔名改成「.jpg」就好了。