# [Titanium]變更上傳圖片的大小

- URL: https://justfly.idv.tw/titanium%e8%ae%8a%e6%9b%b4%e4%b8%8a%e5%82%b3%e5%9c%96%e7%89%87%e7%9a%84%e5%a4%a7%e5%b0%8f/
- 日期: 2011-06-28
- 分類: WEB&amp;RIA
- 標籤: iphone, javascript, php, Titanium

要上傳照下來的照片或是相簿中的照片時，如果檔案太大又沒有實際需要時，在本地端變更上傳圖片的大小就是一見很重要的事情。

使用xcode的話，好像是使用[這個方式](http://niw.at/articles/2009/03/14/using-opencv-on-iphone/ja)。而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」就好了。
