0

次のコードを使用して写真を取得し、html で表示するとうまくいきます。

 function takePicture() {

    navigator.camera.getPicture(
        function(uri) {
            var img = document.getElementById('camera_image1');
            img.style.visibility = "visible";
            img.style.display = "block";
            img.src = uri;
            document.getElementById('camera_status').innerHTML = "Success";

        },

        { quality: 50, allowEdit: true, destinationType: navigator.camera.DestinationType.FILE_URI});
};

後でhtml

 <img style="width:144px;height:144px;" id="camera_image1" src="nophoto.jpg"/>

しかし...これは画像をカメラのフォトライブラリに保存しないので、行を微調整しました

  navigator.device.capture.captureImage

これで画像がライブラリにキャプチャされますが、

  1. html に表示されなくなりました
  2. カメラ「アプリ」で写真を撮った後、写真を編集できなくなりました

どんなポインタでも大歓迎です。

フォンギャップ 1.3

4

1 に答える 1

1

captureImage が成功すると、MediaFile オブジェクトの配列がコールバックに渡されます (結果が複数になる可能性があるため配列ですが、この例では 1 つしかありません)。MediaFile オブジェクトにはフル パスが含まれます。上記と同様のコードを使用して、ファイル uri を指すことができるはずです。

2 番目の質問については、ここで何を期待しているのかわかりません。「イメージ キャプチャ」自体は編集ではありません。JavaScript を使用して独自のエディターを作成する必要があります。これはおそらくやり過ぎです。

于 2012-01-23T22:53:15.233 に答える