adjust resume sidebar and text spacing

This commit is contained in:
2026-05-18 22:11:18 +08:00
parent 37131e1123
commit 1460b71915
3 changed files with 90 additions and 39 deletions

View File

@@ -39,8 +39,10 @@ function replaceRegexOnce(source, regex, to, label) {
function patchSsr(source) {
source = source
.replace(/metrics\.gapY\(3\.5\)/g, "metrics.gapY(2.2)")
.replace(/metrics\.gapY\(2\.6\)/g, "metrics.gapY(2.2)");
.replace(/const sideMargin = bodyLineHeight \* \.(?:2|08);/, "const sideMargin = bodyLineHeight * .08;")
.replace(/metrics\.gapY\(3\.5\)/g, "metrics.gapY(3.0)")
.replace(/metrics\.gapY\(2\.6\)/g, "metrics.gapY(3.0)")
.replace(/metrics\.gapY\(2\.2\)/g, "metrics.gapY(3.0)");
source = source
.replace(
@@ -51,15 +53,25 @@ function patchSsr(source) {
/style: composeStyles\(styles\.mainContent, \{ rowGap: metrics\.sectionGap \}\),/g,
"style: composeStyles(styles.mainContent, { rowGap: metrics.gapY(2.2) }),",
);
source = replaceRegexOnce(
source,
/sectionHeading: \{\s*borderBottomWidth: 1,\s*borderBottomColor: primary\s*\},/,
source = source.replace(
/sectionHeading: \{\s*borderBottomWidth: 1,\s*borderBottomColor: primary(?:,\s*paddingBottom: 1(?:\.3)?)?\s*\},/,
`sectionHeading: {
\t\t\t\t\tborderBottomWidth: 1,
\t\t\t\t\tborderBottomColor: primary,
\t\t\t\t\tpaddingBottom: 1
\t\t\t\t\tpaddingBottom: 1.3
\t\t\t\t},`,
"SSR Glalie heading underline padding",
);
source = replaceRegexOnce(
source,
/sectionHeading: \{\s*borderBottomWidth: 1,\s*borderBottomColor: primary,\s*paddingBottom: 1(?:\.3)?\s*\},\s*item: \{ rowGap: metrics\.gapY\(\.125\) \},/,
`sectionHeading: {
\t\t\t\t\tborderBottomWidth: 1,
\t\t\t\t\tborderBottomColor: primary,
\t\t\t\t\tpaddingBottom: 1.3
\t\t\t\t},
\t\t\t\tsectionItems: { paddingTop: metrics.gapY(.55) },
\t\t\t\titem: { rowGap: metrics.gapY(.2) },`,
"SSR Glalie section item spacing",
);
source = replaceRegexOnce(
source,
@@ -70,7 +82,7 @@ function patchSsr(source) {
\t\t\t\t\tpaddingHorizontal: metrics.page.paddingHorizontal,
\t\t\t\t\tpaddingTop: metrics.page.paddingVertical,
\t\t\t\t\tpaddingBottom: metrics.page.paddingVertical,
\t\t\t\t\trowGap: metrics.gapY(2.2)
\t\t\t\t\trowGap: metrics.gapY(3.0)
\t\t\t\t},`,
"SSR Glalie sidebar bottom padding",
);
@@ -85,30 +97,38 @@ function patchSsr(source) {
"SSR Glalie main bottom padding",
);
return source
.replace(/metrics\.gapY\(3\.5\)/g, "metrics.gapY(2.2)")
.replace(/metrics\.gapY\(2\.6\)/g, "metrics.gapY(2.2)");
.replace(/const sideMargin = bodyLineHeight \* \.(?:2|08);/, "const sideMargin = bodyLineHeight * .08;")
.replace(/metrics\.gapY\(3\.5\)/g, "metrics.gapY(3.0)")
.replace(/metrics\.gapY\(2\.6\)/g, "metrics.gapY(3.0)")
.replace(/metrics\.gapY\(2\.2\)/g, "metrics.gapY(3.0)");
}
function patchPublic(source) {
source = source
.replace(/o\.gapY\(3\.5\)/g, "o.gapY(2.2)")
.replace(/c\.gapY\(3\.5\)/g, "c.gapY(2.2)")
.replace(/o\.gapY\(2\.6\)/g, "o.gapY(2.2)")
.replace(/c\.gapY\(2\.6\)/g, "c.gapY(2.2)");
.replace(/([A-Za-z_$][\w$]*)=([A-Za-z_$][\w$]*)\*\.(?:2|08);return\{paragraph:\{marginTop:\1,marginBottom:\1\},listItem:\{marginTop:\1,marginBottom:\1\}\}/,
"$1=$2*.08;return{paragraph:{marginTop:$1,marginBottom:$1},listItem:{marginTop:$1,marginBottom:$1}}")
.replace(/o\.gapY\(3\.5\)/g, "o.gapY(3.0)")
.replace(/c\.gapY\(3\.5\)/g, "c.gapY(3.0)")
.replace(/o\.gapY\(2\.6\)/g, "o.gapY(3.0)")
.replace(/c\.gapY\(2\.6\)/g, "c.gapY(3.0)")
.replace(/o\.gapY\(2\.2\)/g, "o.gapY(3.0)")
.replace(/c\.gapY\(2\.2\)/g, "c.gapY(3.0)");
source = source
.replace(/style:\$\(a\.sidebarContent,\{rowGap:o\.sectionGap\}\)/g, "style:$(a.sidebarContent,{rowGap:o.gapY(2.2)})")
.replace(/style:\$\(a\.mainContent,\{rowGap:o\.sectionGap\}\)/g, "style:$(a.mainContent,{rowGap:o.gapY(2.2)})");
source = replaceOnce(
source,
"sectionHeading:{borderBottomWidth:1,borderBottomColor:a}",
"sectionHeading:{borderBottomWidth:1,borderBottomColor:a,paddingBottom:1}",
"public Glalie heading underline padding",
.replace(/style:\$\(a\.sidebarContent,\{rowGap:o\.sectionGap\}\)/g, "style:$(a.sidebarContent,{rowGap:o.gapY(3.0)})")
.replace(/style:\$\(a\.mainContent,\{rowGap:o\.sectionGap\}\)/g, "style:$(a.mainContent,{rowGap:o.gapY(3.0)})");
source = source.replace(
/sectionHeading:\{borderBottomWidth:1,borderBottomColor:a(?:,paddingBottom:1(?:\.3)?)?\}/,
"sectionHeading:{borderBottomWidth:1,borderBottomColor:a,paddingBottom:1.3}",
);
source = source.replace(
/sectionHeading:\{borderBottomWidth:1,borderBottomColor:a,paddingBottom:1(?:\.3)?\},item:\{rowGap:([a-zA-Z_$][\w$]*)\.gapY\(\.125\)\}/,
"sectionHeading:{borderBottomWidth:1,borderBottomColor:a,paddingBottom:1.3},sectionItems:{paddingTop:$1.gapY(.55)},item:{rowGap:$1.gapY(.2)}",
);
source = replaceOnce(
source,
"sidebarColumn:{zIndex:1,backgroundColor:o,paddingHorizontal:c.page.paddingHorizontal,paddingTop:c.page.paddingVertical,rowGap:c.sectionGap}",
"sidebarColumn:{zIndex:1,backgroundColor:o,paddingHorizontal:c.page.paddingHorizontal,paddingTop:c.page.paddingVertical,paddingBottom:c.page.paddingVertical,rowGap:c.gapY(2.2)}",
"sidebarColumn:{zIndex:1,backgroundColor:o,paddingHorizontal:c.page.paddingHorizontal,paddingTop:c.page.paddingVertical,paddingBottom:c.page.paddingVertical,rowGap:c.gapY(3.0)}",
"public Glalie sidebar bottom padding",
);
source = replaceOnce(
@@ -118,10 +138,14 @@ function patchPublic(source) {
"public Glalie main bottom padding",
);
return source
.replace(/o\.gapY\(3\.5\)/g, "o.gapY(2.2)")
.replace(/c\.gapY\(3\.5\)/g, "c.gapY(2.2)")
.replace(/o\.gapY\(2\.6\)/g, "o.gapY(2.2)")
.replace(/c\.gapY\(2\.6\)/g, "c.gapY(2.2)");
.replace(/([A-Za-z_$][\w$]*)=([A-Za-z_$][\w$]*)\*\.(?:2|08);return\{paragraph:\{marginTop:\1,marginBottom:\1\},listItem:\{marginTop:\1,marginBottom:\1\}\}/,
"$1=$2*.08;return{paragraph:{marginTop:$1,marginBottom:$1},listItem:{marginTop:$1,marginBottom:$1}}")
.replace(/o\.gapY\(3\.5\)/g, "o.gapY(3.0)")
.replace(/c\.gapY\(3\.5\)/g, "c.gapY(3.0)")
.replace(/o\.gapY\(2\.6\)/g, "o.gapY(3.0)")
.replace(/c\.gapY\(2\.6\)/g, "c.gapY(3.0)")
.replace(/o\.gapY\(2\.2\)/g, "o.gapY(3.0)")
.replace(/c\.gapY\(2\.2\)/g, "c.gapY(3.0)");
}
function patchImporters() {

File diff suppressed because one or more lines are too long

View File

@@ -51,14 +51,14 @@
"metadata": {
"page": {
"gapX": 3.8,
"gapY": 0.62,
"gapY": 0.56,
"format": "a4",
"locale": "zh-CN",
"marginX": 8.4,
"marginY": 8.5,
"marginY": 8.8,
"hideIcons": false
},
"notes": "Design direction: refined clinical-tech academic profile. Glalie two-column layout with CJK-safe line height, slightly larger body type, compact and even section rhythm, period-under-organization sidebar roles, and concise volunteer/social activity evidence.",
"notes": "Design direction: refined clinical-tech academic profile. Glalie two-column layout with CJK-safe line height, balanced list rhythm, moderate section spacing, a continued second-page sidebar, and split volunteer/social activity evidence.",
"design": {
"level": {
"icon": "star",
@@ -100,7 +100,7 @@
"559335bd-99c4-44c2-97b6-420b011415f7"
],
"sidebar": [],
"fullWidth": true
"fullWidth": false
}
],
"sidebarWidth": 29.2
@@ -108,9 +108,9 @@
"template": "glalie",
"typography": {
"body": {
"fontSize": 6.95,
"fontSize": 6.9,
"fontFamily": "Noto Sans SC",
"lineHeight": 1.21,
"lineHeight": 1.34,
"fontWeights": [
"400",
"500",
@@ -120,7 +120,7 @@
"heading": {
"fontSize": 9.15,
"fontFamily": "Noto Serif SC",
"lineHeight": 1.19,
"lineHeight": 1.28,
"fontWeights": [
"600",
"700"
@@ -1188,9 +1188,6 @@
{
"id": "4a9c2385-2f79-4d50-99cf-6d2aaef0b6c6",
"type": "volunteer",
"title": "志愿及社会活动",
"hidden": false,
"columns": 1,
"items": [
{
"id": "fc2f36e5-6737-4c77-a6e7-9d9a4f9f7250",
@@ -1206,7 +1203,7 @@
"description": "<p>2024<br/>科技副校长聘任 / 中学宣讲与科普服务</p>"
},
{
"id": "09e05a88-e3b4-4d33-b467-3b7f4555a9ea",
"id": "ce1f0d77-245c-4145-9b30-0ff274b31834",
"hidden": false,
"period": "",
"website": {
@@ -1216,9 +1213,38 @@
},
"location": "",
"organization": "无偿献血",
"description": "<p>2022 - 2024<br/>累计全血 600ml、成分血 2 治疗量</p>"
}
]
"description": "<p>2022.12.30<br/>全血 400ml</p>"
},
{
"id": "a8b80562-00fc-42bb-ad5a-d8a0cd10bbbf",
"hidden": false,
"period": "",
"website": {
"url": "",
"label": "",
"inlineLink": false
},
"location": "",
"organization": "无偿献血",
"description": "<p>2023.06.03<br/>成分血 2 治疗量</p>"
},
{
"id": "215ce4ab-7703-4d6e-9396-513c64877ead",
"hidden": false,
"period": "",
"website": {
"url": "",
"label": "",
"inlineLink": false
},
"location": "",
"organization": "无偿献血",
"description": "<p>2024.10.12<br/>全血 200ml</p>"
}
],
"title": "志愿及社会活动",
"hidden": false,
"columns": 1
}
]
}