直接添加模板到仓库
This commit is contained in:
91
templates/lib.typ
Normal file
91
templates/lib.typ
Normal file
@ -0,0 +1,91 @@
|
||||
#import "@preview/cmarker:0.1.8"
|
||||
#import "@preview/mitex:0.2.6": mitex
|
||||
#import "@preview/codly:1.3.0": *
|
||||
#import "@preview/codly-languages:0.1.1": *
|
||||
|
||||
#let shadow_switch = state("phomework.shadow.enabled", true)
|
||||
|
||||
/// ===========
|
||||
/// 问题排版
|
||||
/// ===========
|
||||
|
||||
// 直接文本定义的问题,适合复杂的图标
|
||||
#let question(content, title: "问题") = [
|
||||
#v(1em)
|
||||
#grid(
|
||||
columns: (auto, auto),
|
||||
align: top,
|
||||
gutter: .2em,
|
||||
rect(fill: rgb("#776cad"), width: 4.5em)[
|
||||
#set text(fill: rgb("#ffffff"), font: "Source Han Serif", weight: "bold")
|
||||
#set align(center)
|
||||
|
||||
#title
|
||||
],
|
||||
rect(stroke: none, width: 100%)[
|
||||
#set text(font: "Source Han Serif", fill: rgb("#3e3978"))
|
||||
#set table(stroke: (paint: rgb("#3e3978")), inset: (y: 6pt, x: 9pt))
|
||||
#show table: t => align(center, t)
|
||||
|
||||
#content
|
||||
]
|
||||
)
|
||||
]
|
||||
|
||||
#let answer(content) = [
|
||||
#set par(first-line-indent: (amount: 2em, all: true))
|
||||
#content
|
||||
]
|
||||
|
||||
#let shadow(content) = context {
|
||||
set text(fill: gray)
|
||||
|
||||
if (shadow_switch.get()) {
|
||||
cmarker.render(content, math: mitex)
|
||||
}
|
||||
}
|
||||
|
||||
#let homework(
|
||||
title: "",
|
||||
secret: "",
|
||||
enable_shadow: true,
|
||||
body
|
||||
) = {
|
||||
set page(
|
||||
header: [
|
||||
#set text(font: "HarmonyOS Sans SC", weight: 700)
|
||||
#title
|
||||
#h(1fr)
|
||||
#secret
|
||||
],
|
||||
numbering: "第 1 页,共 1 页",
|
||||
)
|
||||
set text(font: ("LXGW WenKai"))
|
||||
show: codly-init.with()
|
||||
shadow_switch.update(enable_shadow)
|
||||
|
||||
show heading.where(level: 1): it => [
|
||||
#set align(center)
|
||||
#text(it, size: 24pt, weight: "black", font: "Source Han Serif")
|
||||
]
|
||||
show heading.where(level: 2): it => [
|
||||
#set align(center)
|
||||
#text(it, size: 16pt, weight: "bold", font: "Source Han Serif")
|
||||
]
|
||||
show heading.where(level: 3): it => [
|
||||
#text(it, size: 14pt, weight: "bold", font: "Source Han Sans SC")
|
||||
]
|
||||
show raw: set text(font: "Maple Mono NF", size: 9pt)
|
||||
show math.equation: set text(font: (
|
||||
"New Computer Modern Math",
|
||||
"Source Han Serif",
|
||||
))
|
||||
|
||||
[
|
||||
= #title
|
||||
|
||||
== #secret
|
||||
|
||||
#body
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user