要上傳照下來的照片或是相簿中的照片時,如果檔案太大又沒有實際需要時,在本地端變更上傳圖片的大小就是一見很重要的事情。
使用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」就好了。