t-comm
Version:
专业、稳定、纯粹的工具库
50 lines (47 loc) • 1.59 kB
JavaScript
import { b as __awaiter, c as __generator } from '../tslib.es6-096fffdd.js';
var consoleImage = function consoleImage(url) {
var image = new Image();
image.onload = function () {
// @ts-ignore
var isChromium = navigator.userAgent.match(/chrome|chromium|crios/i) && !!window.chrome;
var style = ['font-size: 0px;', !isChromium ? "line-height: ".concat(this.height, "px;") : '', "padding: ".concat(this.height / 2, "px ").concat(this.width / 2, "px;"), "background: url(".concat(url, ") center center no-repeat;"), 'background-size: contain;'].join(' ');
console.log('%c ', style);
};
image.src = url;
};
/**
* 获取图片,并转 base64
*
* @param url 图片链接
* @returns 获取结果
* @example
* ```ts
* getBase64FromUrl(imgUrl).then(consoleImage);
* ```
*/
function getBase64FromUrl(url) {
return __awaiter(this, void 0, void 0, function () {
var data, blob;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, fetch(url)];
case 1:
data = _a.sent();
return [4 /*yield*/, data.blob()];
case 2:
blob = _a.sent();
return [2 /*return*/, new Promise(function (resolve, reject) {
var reader = new FileReader();
reader.readAsDataURL(blob);
reader.onloadend = function () {
var base64data = reader.result;
resolve(base64data);
};
reader.onerror = reject;
})];
}
});
});
}
export { consoleImage, getBase64FromUrl };