jsWaffle質問掲示板(雑談やTips歓迎)

jsWaffleについて質問する掲示板です。(雑談や発見したTipsの投稿も大歓迎です!)

(#133) もう一度質問させてください - toffle (2011-08-18 09:53) /普通 質問
先日はご教授いただきありがとうございました。

教えていただいたコードを参考に作ってみましたが、カメラ起動→撮影→[OK]すると強制終了されてしまい、canvasに画像が配置されません。
var fname = "/sdcard/temp.jpeg";  
とすると、設置したボタンを押下してもカメラ起動せずでした。

現在落ち着いているコードは以下の通りです。
ここから強制終了されないようにするにはどうしたらいいのかご教授いただけますと幸いです。





    var canvas = $("a_canvas");
  var context = canvas.getContext("2d");
  var savedir = "/data/canvasdata/";
droid.mkdir(savedir);
    var disp = droid.getDisplayInfo();
    a_canvas.width = disp.width;
    a_canvas.height = disp.height;

function takePicture() { // 写真を撮影する
    // ファイル名を決める
    var d = new Date();
    var savedir = savedir + (d.getFullYear()) + "-" +
        (d.getMonth()+1) + "-" + (d.getDate()) + "_" +
        (d.getHours() + "-" + (d.getMinutes())) + "-" +
        (d.getSeconds()) + ".jpeg";
    // カメラ起動
    droid.startIntentForResult(
    "camera:" + savedir,
    function(code){
      if (code == 0) return; //キャンセルされたら何もしない
      // 撮影が完了した
        drawToCanvas(savedir);
    }
    );
    }

//キャンバスにJPEGファイルを描画する
function drawToCanvas(savedir) {
  var image = new Image();
  image.onload = function () { // 画像が読み込まれたタイミングで...
    context.drawImage(image, 0, 0); // キャンバスに描画
  };
  image.src = savedir; // 画像ファイルの読込み
}
//キャンセルボタンを押下したら画面クリア
function ImgClr () {
  context.clearRect(0,0, canvas.width, canvas.height);
  }

// 保存処理
    function saveData(){
  var saveData = droid.snapshotToFile(savedir);
    alert("保存しました");
  }
撮影した画像をCanvasの背景にしたいので.. / toffle (2011-08-11 12:43) (#117)/ 普通 質問
  Canvasに画像を表示する方法 / クジラ飛行机 (2011-08-11 17:11) (#118)/ 普通 返信
    ありがとうございます! / toffle (2011-08-12 10:17) (#122)/ 普通 返信
    もう一度質問させてください / toffle (2011-08-18 09:53) (#133)/ 普通 質問
      追加です / toffle (2011-08-18 10:10) (#134)/ 普通 質問

(#133)へ返信する:

名前
タイトル
本文
困った度
状態
確認キー お手数ですが、いたずら防止のために、半角数字で「8932」と入力してください。
編集キー 編集時に使うキーを入力(省略可能)
添付ファイル 画像ファイル(最大300KB)を添付可能