%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
import $ from 'jquery';
/**
* @method readFileAsDataURL
*
* read contents of file as representing URL
*
* @param {File} file
* @return {Promise} - then: dataUrl
*/
export function readFileAsDataURL(file) {
return $.Deferred((deferred) => {
$.extend(new FileReader(), {
onload: (e) => {
const dataURL = e.target.result;
deferred.resolve(dataURL);
},
onerror: (err) => {
deferred.reject(err);
},
}).readAsDataURL(file);
}).promise();
}
/**
* @method createImage
*
* create `<image>` from url string
*
* @param {String} url
* @return {Promise} - then: $image
*/
export function createImage(url) {
return $.Deferred((deferred) => {
const $img = $('<img>');
$img.one('load', () => {
$img.off('error abort');
deferred.resolve($img);
}).one('error abort', () => {
$img.off('load').detach();
deferred.reject($img);
}).css({
display: 'none',
}).appendTo(document.body).attr('src', url);
}).promise();
}