diff --git a/build/fontmin.js b/build/fontmin.js deleted file mode 100644 index 552ccf0..0000000 --- a/build/fontmin.js +++ /dev/null @@ -1,95 +0,0 @@ -import fs from "fs"; -import path from "path"; -import Fontmin from "fontmin"; - -function getFiles(dir) { - const results = []; - const list = fs.readdirSync(dir); - - for (const file of list) { - const filePath = path.join(dir, file); - const stat = fs.statSync(filePath); - - if (stat.isDirectory()) { - results.push(...getFiles(filePath)); - } else { - results.push(filePath); - } - } - - return results; -} - -function scanDirectory(dir) { - let set = new Set(); - const files = getFiles(dir); - - for (const file of files) { - const ignoredExtensions = [ - ".ttf", - ".otf", - ".woff", - ".woff2", - ".eot", - ".png", - ".jpg", - ".jpeg", - ".webp", - ".gif", - ".ico", - ".pdf", - ]; - - if (ignoredExtensions.some((ext) => file.endsWith(ext))) continue; - - try { - const content = fs.readFileSync(file, "utf8"); - const currentSet = new Set(content); - set = new Set([...set, ...currentSet]); - } catch { - // 跳过二进制等不可读文件 - } - } - - return set; -} - -function subsetFont(src, text) { - return new Promise((resolve, reject) => { - const fontmin = new Fontmin() - .src(src) - .use( - Fontmin.glyph({ - text, - hinting: false, - }) - ) - .use(Fontmin.ttf2woff2()) - .dest("public/fonts/subset"); - - fontmin.run((err) => { - if (err) return reject(err); - resolve(); - }); - }); -} - -async function main() { - const baseChars = - "首页文章标签关于作者评论发布于切换主题,。!?:“”‘’()《》【】、—…·-_/\\'\"()[]{}<>:;.!? "; - const scanned = Array.from(scanDirectory("src")).join(""); - const chars = Array.from(new Set((scanned + baseChars).split(""))).join(""); - - await Promise.all([ - subsetFont("public/fonts/MapleMono-CN-Regular.ttf", chars), - subsetFont("public/fonts/MapleMono-CN-Bold.ttf", chars), - subsetFont("public/fonts/MapleMono-CN-Italic.ttf", chars), - ]); - - console.log(`中文子集字体生成完成,共收集 ${chars.length} 个字符`); -} - -main().catch((err) => { - console.error(err); - process.exit(1); -}); \ No newline at end of file diff --git a/package.json b/package.json index d245608..53bd4e9 100644 --- a/package.json +++ b/package.json @@ -9,8 +9,7 @@ "dev": "astro dev", "preview": "astro preview", "astro": "astro", - "subset-font": "node build/fontmin.js", - "build": "npm run subset-font && astro build" + "build": "astro build" }, "dependencies": { "@astrojs/rss": "^4.0.17", @@ -25,4 +24,4 @@ "@types/node": "^25.5.0", "fontmin": "^1.1.1" } -} +} \ No newline at end of file diff --git a/public/fonts/MapleMono-CN-Bold.ttf b/public/fonts/MapleMono-CN-Bold.ttf deleted file mode 100644 index 7c38733..0000000 Binary files a/public/fonts/MapleMono-CN-Bold.ttf and /dev/null differ diff --git a/public/fonts/MapleMono-CN-Italic.ttf b/public/fonts/MapleMono-CN-Italic.ttf deleted file mode 100644 index 78c2c29..0000000 Binary files a/public/fonts/MapleMono-CN-Italic.ttf and /dev/null differ diff --git a/public/fonts/MapleMono-CN-Regular.ttf b/public/fonts/MapleMono-CN-Regular.ttf deleted file mode 100644 index fbef115..0000000 Binary files a/public/fonts/MapleMono-CN-Regular.ttf and /dev/null differ diff --git a/public/fonts/subset/MapleMono-CN-Bold.ttf b/public/fonts/subset/MapleMono-CN-Bold.ttf deleted file mode 100644 index d920047..0000000 Binary files a/public/fonts/subset/MapleMono-CN-Bold.ttf and /dev/null differ diff --git a/public/fonts/subset/MapleMono-CN-Bold.woff2 b/public/fonts/subset/MapleMono-CN-Bold.woff2 deleted file mode 100644 index 7442691..0000000 Binary files a/public/fonts/subset/MapleMono-CN-Bold.woff2 and /dev/null differ diff --git a/public/fonts/subset/MapleMono-CN-Italic.ttf b/public/fonts/subset/MapleMono-CN-Italic.ttf deleted file mode 100644 index be7dd0a..0000000 Binary files a/public/fonts/subset/MapleMono-CN-Italic.ttf and /dev/null differ diff --git a/public/fonts/subset/MapleMono-CN-Italic.woff2 b/public/fonts/subset/MapleMono-CN-Italic.woff2 deleted file mode 100644 index e953efb..0000000 Binary files a/public/fonts/subset/MapleMono-CN-Italic.woff2 and /dev/null differ diff --git a/public/fonts/subset/MapleMono-CN-Regular.ttf b/public/fonts/subset/MapleMono-CN-Regular.ttf deleted file mode 100644 index 0f90376..0000000 Binary files a/public/fonts/subset/MapleMono-CN-Regular.ttf and /dev/null differ diff --git a/public/fonts/subset/MapleMono-CN-Regular.woff2 b/public/fonts/subset/MapleMono-CN-Regular.woff2 deleted file mode 100644 index 4dc3e1b..0000000 Binary files a/public/fonts/subset/MapleMono-CN-Regular.woff2 and /dev/null differ diff --git a/src/styles/global.css b/src/styles/global.css index 09d0d55..05af1c9 100644 --- a/src/styles/global.css +++ b/src/styles/global.css @@ -2,30 +2,6 @@ @import url("https://unpkg.com/@fontsource/maple-mono@5.2.6/400-italic.css"); @import url("https://unpkg.com/@fontsource/maple-mono@5.2.6/700.css"); -@font-face { - font-family: "Maple Mono CN"; - src: url("/fonts/subset/MapleMono-CN-Regular.woff2") format("woff2"); - font-weight: 400; - font-style: normal; - font-display: swap; -} - -@font-face { - font-family: "Maple Mono CN"; - src: url("/fonts/subset/MapleMono-CN-Italic.woff2") format("woff2"); - font-weight: 400; - font-style: italic; - font-display: swap; -} - -@font-face { - font-family: "Maple Mono CN"; - src: url("/fonts/subset/MapleMono-CN-Bold.woff2") format("woff2"); - font-weight: 700; - font-style: normal; - font-display: swap; -} - pre { padding: 1rem; border-radius: 0.5rem; @@ -113,7 +89,7 @@ html.dark body::after { @media (max-width: 900px) { body::after { - opacity: 0.1; + opacity: 0; } } @@ -125,10 +101,6 @@ html.dark body::after { body { font-size: 1rem; } - - body::after { - opacity: 0; - } }