UNPKG

4.04 kBSource Map (JSON)View Raw
1{"version":3,"file":"fonts.js","sources":["../../../src/api/ui/fonts.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { MethodHandler } from '../../utils/handler'\n\n// 字体\nexport const loadFontFace: typeof Taro.loadFontFace = async options => {\n options = Object.assign({ global: false }, options)\n const { success, fail, complete, family, source, desc = {} } = options\n const handle = new MethodHandler({ name: 'loadFontFace', success, fail, complete })\n // @ts-ignore\n const fonts = document.fonts\n if (fonts) {\n // @ts-ignore\n const fontFace = new FontFace(family, source, desc)\n try {\n await fontFace.load()\n fonts.add(fontFace)\n return handle.success({})\n } catch (error) {\n return handle.fail({\n errMsg: error.message || error\n })\n }\n } else {\n const style = document.createElement('style')\n let innerText = `font-family:\"${\n family\n }\";src:${\n source\n };font-style:${\n desc.style || 'normal'\n };font-weight:${\n desc.weight || 'normal'\n };font-variant:${\n desc.variant || 'normal'\n };`\n\n if (desc.ascentOverride) {\n innerText += `ascent-override:${desc.ascentOverride};`\n }\n if (desc.descentOverride) {\n innerText += `descent-override:${desc.descentOverride};`\n }\n if (desc.featureSettings) {\n innerText += `font-feature-settings:${desc.featureSettings};`\n }\n if (desc.lineGapOverride) {\n innerText += `line-gap-override:${desc.lineGapOverride};`\n }\n if (desc.stretch) {\n innerText += `font-stretch:${desc.stretch};`\n }\n if (desc.unicodeRange) {\n innerText += `unicode-range:${desc.unicodeRange};`\n }\n if (desc.variationSettings) {\n innerText += `font-variation-settings:${desc.variationSettings};`\n }\n\n style.innerText = `@font-face{${innerText}}`\n document.head.appendChild(style)\n return handle.success()\n }\n}\n"],"names":[],"mappings":"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"}
\No newline at end of file