From a11891b8ee91be09e2aa50f581ab1bf2d6f7c9c7 Mon Sep 17 00:00:00 2001 From: ArenaDruid <95113209+ArenaDruid@users.noreply.github.com> Date: Tue, 4 Feb 2025 16:44:10 +0800 Subject: [PATCH] =?UTF-8?q?=E7=9B=AE=E6=A0=87=EF=BC=9A=E4=B8=AD=E6=96=87?= =?UTF-8?q?=E6=96=9C=E4=BD=93=E6=94=B9=E6=A5=B7=E4=BD=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- quartz.config.ts | 1 + quartz/plugins/transformers/chinese-italic.ts | 37 +++++++++++++++++++ quartz/plugins/transformers/index.ts | 1 + 3 files changed, 39 insertions(+) create mode 100644 quartz/plugins/transformers/chinese-italic.ts diff --git a/quartz.config.ts b/quartz.config.ts index c6fba39c0..9746f32c5 100644 --- a/quartz.config.ts +++ b/quartz.config.ts @@ -77,6 +77,7 @@ const config: QuartzConfig = { // *caption text* // ``` Plugin.FigureCaptions(), + Plugin.ChineseItalic(), // Adds image lightbox support //Plugin.Lightbox(), ], diff --git a/quartz/plugins/transformers/chinese-italic.ts b/quartz/plugins/transformers/chinese-italic.ts new file mode 100644 index 000000000..baef5d714 --- /dev/null +++ b/quartz/plugins/transformers/chinese-italic.ts @@ -0,0 +1,37 @@ +import { QuartzTransformerPlugin } from "../types" + +export const ChineseItalic: QuartzTransformerPlugin = () => { + return { + name: "ChineseItalic", + externalResources() { + return { + css: [ + { + // 内联 CSS 直接注入到页面 + content: ` + @font-face { + font-family: 'ChineseItalic'; + font-style: italic; + src: local('楷体'), + local('Kaiti SC'), + local('STKaiti'); + unicode-range: U+4E00-9FFF; + } + + em, .cm-em, i { + font-family: + -apple-system, + BlinkMacSystemFont, + 'Segoe UI', + Roboto, + 'ChineseItalic', + sans-serif; + font-style: italic; + } + `, + }, + ], + } + }, + } +} \ No newline at end of file diff --git a/quartz/plugins/transformers/index.ts b/quartz/plugins/transformers/index.ts index c334f9923..66a7d8836 100644 --- a/quartz/plugins/transformers/index.ts +++ b/quartz/plugins/transformers/index.ts @@ -13,3 +13,4 @@ export { HardLineBreaks } from "./linebreaks" export { RoamFlavoredMarkdown } from "./roam" export { FigureCaptions } from "./figcaptions" export { Lightbox } from "./lightbox" +export { ChineseItalic } from "./chinese-italic"