JavaScriptによるファイルとバイナリデータの扱い
javascript
function test1(){
// サーバー上の画像ファイルから、Ajaxを利用してバイトデータを取得する
var xhr = new XMLHttpRequest();
xhr.open('GET', 'smp1.png', true);
xhr.responseType = 'arraybuffer';
xhr.onload = function(e) {
// 画像ファイルのバイトデータを取得する
var arrayBuffer = this.response;
// バイトデータとコンテンツタイプからBlobを生成する
var blob = new Blob([arrayBuffer], {type: "image/png"});
// ★FileReaderでBlobを読み取る
var reader = new FileReader();
reader.readAsDataURL(blob);
// Blob読込後のイベント
reader.onload = function(evt) {
// データURLスキームを取得する
var data_url = reader.result;
console.log(data_url);
// データURLスキームを画像表示させる。
$('#img1').attr('src',data_url);
// データURLスキームからbase64形式に変換してみる
var base64 = btoa(data_url);
console.log(base64);
}
};
xhr.send();
}