laoyang
|
e60e1d768b
|
新增「扁平简约图示组件」:9 个纯 TikZ 绘图元素
设计基调:圆角色块 + 实心纯色 + 白字 + 细箭头。
**无渐变、无阴影、无立体**(已量化验证:PDF 中 shading 对象数为 0)。
不依赖 smartdiagram 等外部绘图宏包,全部用 TikZ 自绘。
九个组件(颜色列表写在方括号里,可写一个或多个):
\flatflow[颜色]{条目1, 条目2, ...} 横向箭头流程,自动等分满宽
\flatstack[颜色]{...} 纵向流程
\flatcycle[颜色]{...} 循环图(弧线箭头)
\flathub[颜色]{中心}{环绕1, 环绕2, ...} 中心辐射
\flatsteps[颜色]{...} 阶梯递进
\flattime[颜色]{年份列表}{事件列表} 时间轴(上下交替)
\flatquad[颜色]{左上}{右上}{左下}{右下} 四象限
\flatpyramid[颜色]{顶层, ..., 底层} 金字塔
\flatcompare[左色][右色]{左标题}{左内容}{右标题}{右内容} 左右对比
颜色支持列表循环:\flatflow[oucblue,oucred]{...} 两个块不同色;
\flatflow[oucred,oucblue]{六个块} 则按红蓝红蓝循环取色。
防错:颜色是可选参数,若误写成花括号,会报
「图示组件的颜色要写在方括号里」的明确错误(不会静默出错)。
实现中踩到的三个本机 expl3/pgf 坑(均已写进代码注释):
- 长度做乘除一律用 \pgfmathsetlength,且表达式里只能是「长度」或「纯数字」,
绝不能出现计数器(否则静默算成 0pt)。
- \foreach 每轮迭代会开组,内层 \def 出组即失效,需用 \global\def。
- \ifstrequal 在本机恒为假,字符串比较必须用 \ifx。
另修正一处定义顺序问题:组件必须放在 \ExplSyntaxOff 之后,
否则 `@` 不是字母类别,\fl@... / fl@i@... 这类名字会被解析错。
已验证:TL2022~2026 全部 0 错误 0 溢出;跨版本渲染逐像素一致;
slides.tex 新增 5 页演示,README 新增「图示组件(扁平风格)」一节。
|
2026-10-13 15:06:04 +08:00 |
|
laoyang
|
f6f673169d
|
新增三个深色颜色(苍松绿 / 暮山紫 / 琥珀橙)并同步要点框自动排布
一、新增颜色(放在 beamercolorthemeOUCSlide.sty)
oucpine 苍松绿 RGB(30, 86, 64) 白字对比度 8.54
oucdusk 暮山紫 RGB(92, 58, 118) 白字对比度 9.04
oucamber 琥珀橙 RGB(196, 82, 16) 白字对比度 4.60
三个都是较深的颜色,与白色文字有足够对比度(WCAG >= 4.5),
可直接作色块底色;各自同样带 10 个色阶(如 oucpine10 ~ oucpine90)。
命名取自中文传统色:「苍松」「暮山紫」「琥珀」。
琥珀橙是高饱和深橘,与低饱和的暗褐「文脉棕」在饱和度上明显区分(0.98 vs 0.61)。
二、要点框自动排布 pointboxgrid(此前仅在 main 上,现同步到本分支)
每行最多 4 个,超过则均匀分成多行(5→3+2;6→3+3;7→4+3;8→4+4;9→3+3+3…),
用法见 README 的「要点框自动排布」一节。
三、验证
本分支已用 TeX Live 2026 重新编译验证:0 错误、0 溢出;
颜色样例页与要点框排布页均正常,三个新颜色在 PDF 中实际生效。
|
2026-10-13 08:46:29 +08:00 |
|
laoyang
|
c0ffa15682
|
目录页改为自适应方框样式,并在 TeX Live 2026 下编译验证
把每一个一级标题放进独立的方框,方框高度与字号随章节数目自动计算,
方框自动均分铺满整页;文字左对齐,左侧只留少量缩进。
新增 \settocstyle{box|solid|bar} 三种方框样式(未知值告警并回退 box),
新增 \toctheme{red|blue} 两种配色(默认海大红,与各章节标题页同色)。
本分支已用 TeX Live 2026 亲自编译验证:0 错误、0 溢出、23 页,
目录页 4 个跳转链接正常,且与本仓库其他分支渲染一致。
|
2026-10-12 11:29:20 +08:00 |
|
laoyang
|
5710554e34
|
修改了一些说明中LaTex的描述。
|
2022-05-14 17:21:41 +08:00 |
|
laoyang
|
64a629cb9d
|
修改了说明文件
|
2022-05-14 13:44:35 +08:00 |
|
laoyang
|
9b63f1b2bd
|
修改了说明文件中的错别字。
|
2022-05-14 13:38:35 +08:00 |
|
laoyang
|
fbd40e3bdc
|
更改了说明文件中的文字
|
2022-05-14 13:34:36 +08:00 |
|
laoyang
|
a4133efb57
|
说明文件中代码库增加了阿里云。
|
2022-05-13 17:40:23 +08:00 |
|
laoyang
|
c0e263f304
|
修改所有链接在新窗口打开页面
|
2022-05-13 17:09:13 +08:00 |
|
laoyang
|
cb79393f92
|
修改在新页面打开链接
|
2022-05-13 17:01:17 +08:00 |
|
laoyang
|
168deb2911
|
修改链接在新页面打开
|
2022-05-13 17:00:20 +08:00 |
|
laoyang
|
e37418815c
|
增加了对headbox和textbox的说明
|
2022-05-13 11:11:18 +08:00 |
|
laoyang
|
6a64c75776
|
修改了说明文件。
|
2022-05-12 17:46:35 +08:00 |
|
laoyang
|
0845b85205
|
增加了说明内容
|
2022-05-12 16:52:16 +08:00 |
|
laoyang
|
05607d8255
|
初始化
|
2022-05-12 12:58:31 +08:00 |
|
杨永全
|
bf99ef7b8f
|
Initial commit
|
2022-05-12 04:56:24 +00:00 |
|