diff options
author | Andrew Dolgov <[email protected]> | 2021-04-13 11:47:00 +0300 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2021-04-13 11:47:00 +0300 |
commit | 47c256963ec90499e371bccfe15276cacb9b7ce5 (patch) | |
tree | f6725e2347f3e684f8868c1dee7ac6f5238711d0 /js/reader.js | |
parent | f15d77c0ea8f551c6d51d2687f3709bf3a4bc649 (diff) |
use blob object urls instead of base64 when passing fonts to iframe
Diffstat (limited to 'js/reader.js')
-rw-r--r-- | js/reader.js | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/js/reader.js b/js/reader.js index e14fd20..20fcb4f 100644 --- a/js/reader.js +++ b/js/reader.js @@ -1113,21 +1113,13 @@ const Reader = { const promise = fetch(res_name, {credentials: 'same-origin'}).then(function(resp) { if (resp.status == 200) { if (resp.url.indexOf('.ttf') != -1) { - return resp.blob().then((blob) => new Promise((resolve, reject) => { - const reader = new window.FileReader(); + return resp.blob().then((blob) => { - reader.addEventListener("load", function () { - const url = new URL(resp.url); - url.searchParams.delete("ts"); - - Reader.Loader._res_data[url.toString()] = reader.result - .replace("data:application/octet-stream;", "data:font/opentype;charset=utf-8;"); - - resolve(); - }, false); + const url = new URL(resp.url); + url.searchParams.delete("ts"); - reader.readAsDataURL(blob); - })) + Reader.Loader._res_data[url.toString()] = URL.createObjectURL(blob); + }); } else { return resp.text().then(function(data) { const url = new URL(resp.url); |