1

Appcelerator で写真を保存するのに少し問題があります。

私は写真を撮って保存しています。大丈夫です。コードは次のとおりです。

var cameraOverlay = Ti.UI.createView({
    width:'100%',
    height:'100%'
});

var porcoOverlay = Ti.UI.createView({
    width: '90%',
    height: '100%',
    left: 0,
    top: 0
});
var porco = Ti.UI.createImageView({
    width: 200,
    height: 238,
    top: 10,
    left: 10,
    image:'images/pig.png',
    touchEnabled: false
});
porcoOverlay.add(porco);
cameraOverlay.add(porcoOverlay);

var menuOverlay = Ti.UI.createView({
    width: '10%',
    height: '100%',
    right: 0,
    top: 0
});
var takeFoto = Ti.UI.createButton({
    title: 'PH',
    bottom: 10,
    right: 10
});
menuOverlay.add(takeFoto);
cameraOverlay.add(menuOverlay);



Ti.Media.showCamera({
    showControls:true,
    overlay: cameraOverlay,
    saveToPhotoGallery: true,
    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);

    }
});

takeFoto.addEventListener('click',function(){
    Ti.Media.takePicture();
});

そして、ここに私の問題があります:

1 - オートフォーカスが機能しません。

2 - 画像の解像度は常に 320*240 です。

3 - 写真とオーバーレイを結合して保存したい。

誰でも私を助けることができますか?

4

2 に答える 2

2

@Bruno Almeidaあなたのコードはほぼ正しいです。このクエリによると、事前定義された高さと幅 (ピクセル) で画像を保存します。はいの場合、この例を試すことができます。これは私にとって非常に役立つと思います。助けて!このコードを理解する

var ImageFactory = require('ti.imagefactory');
// Save your Image 

savedFile.write(event.media);
// Read you Image in Blob Format                    
var blob = savedFile.read();

//  Resize this image through use ImageFactory Module.

newBlob = ImageFactory.imageAsResized(blob, { width:300, height:300, quality:ImageFactory.QUALITY_LOW });
  savedFile.write(newBlob);
  blob = savedFile.read();
于 2012-09-21T05:25:22.800 に答える