|
136 | 136 | % |
137 | 137 | % \begin{macro}[added=2023-05-06,updated=2023-07-04]{\@@_secret_info:nn,\@@_secret_info:N,\@@_secret_info:n} |
138 | 138 | % 普通模式下显示参数一,盲审模式下显示参数二。 |
| 139 | +% 无参数二时,替换为等量 |\g_@@_const_substitute_symbol_tl|,换行也会被替换。 |
139 | 140 | % \begin{macrocode} |
140 | 141 | \cs_new:Npn \@@_hide:n #1 { |
141 | 142 | \g_@@_const_substitute_symbol_tl |
|
156 | 157 | \@@_secret_info:nn {#1} {\tl_map_function:NN {#1} \@@_hide:n } |
157 | 158 | } |
158 | 159 | % \end{macrocode} |
| 160 | +% \end{macro} |
| 161 | +% |
| 162 | +% \begin{macro}[added=2025-04-30]{\@@_secret_info_fixed:Nn} |
| 163 | +% 普通模式下显示参数一,盲审模式下显示参数二个数的 |\g_@@_const_substitute_symbol_tl|。 |
| 164 | +% 例外:若参数一为空,也输出空。这样允许 |\@@_render_cover_entry:nn| 隐藏此项。 |
| 165 | +% 为了实现例外,参数一必须是 N 而非 n,不然难以检测是否真正为空。 |
159 | 166 | % |
| 167 | +% \begin{macrocode} |
| 168 | +\cs_new:Npn \@@_secret_info_fixed:Nn #1 #2 { |
| 169 | + \tl_if_blank:VF #1 { |
| 170 | + \@@_secret_info:nn {#1} { |
| 171 | + \prg_replicate:nn {#2} {\g_@@_const_substitute_symbol_tl} |
| 172 | + } |
| 173 | + } |
| 174 | +} |
| 175 | +% \end{macrocode} |
160 | 176 | % \end{macro} |
161 | 177 | % |
162 | 178 | % \begin{macro}[added=2023-03-16, updated=2025-04-04]{\@@_get_const:n} 获取标题、章节、表格、图形等的常量名称。 |
|
2152 | 2168 | { |
2153 | 2169 | % 渲染信息。 |
2154 | 2170 | \clist_set:Nn \l_@@_input_clist { |
2155 | | - {姓名:} {\@@_secret_info:nn{\l_@@_value_author_tl}{\g_@@_const_substitute_symbol_tl\g_@@_const_substitute_symbol_tl\g_@@_const_substitute_symbol_tl}}, |
| 2171 | + {姓名:} {\@@_secret_info_fixed:Nn \l_@@_value_author_tl {3}}, |
2156 | 2172 | {学号:} {\@@_secret_info:N \l_@@_value_student_id_tl}, |
2157 | 2173 | {学院:} {\l_@@_value_school_tl}, |
2158 | 2174 | } |
|
2302 | 2318 | } |
2303 | 2319 |
|
2304 | 2320 | % 渲染信息。 |
| 2321 | + % 此处必须限制盲审模式替换符号数量,不然会泄露信息,还可能导致行溢出 |
2305 | 2322 | \clist_set:Nn \l_@@_input_clist { |
2306 | | - {\c_@@_graduate_label_author_tl} {\@@_secret_info:nn{\l_@@_value_author_tl}{\g_@@_const_substitute_symbol_tl\g_@@_const_substitute_symbol_tl\g_@@_const_substitute_symbol_tl}}, |
| 2323 | + {\c_@@_graduate_label_author_tl} {\@@_secret_info_fixed:Nn \l_@@_value_author_tl {3}}, |
2307 | 2324 | {\c_@@_graduate_label_school_tl} {\l_@@_value_school_tl}, |
2308 | | - {\c_@@_graduate_label_supervisor_tl} {\@@_secret_info:N{\l_@@_value_supervisor_tl}}, |
2309 | | - {\c_@@_graduate_label_industrial_mentor_tl} {\@@_secret_info:N{\l_@@_value_industrial_mentor_tl}}, |
2310 | | - {\c_@@_graduate_label_chairman_tl} {\@@_secret_info:N{\l_@@_value_chairman_tl}}, |
| 2325 | + {\c_@@_graduate_label_supervisor_tl} {\@@_secret_info_fixed:Nn \l_@@_value_supervisor_tl {5}}, |
| 2326 | + {\c_@@_graduate_label_industrial_mentor_tl} {\@@_secret_info_fixed:Nn \l_@@_value_industrial_mentor_tl {5}}, |
| 2327 | + {\c_@@_graduate_label_chairman_tl} {\@@_secret_info_fixed:Nn \l_@@_value_chairman_tl {5}}, |
2311 | 2328 | {\g_@@_const_info_degree_tl} {\l_@@_value_degree_tl}, |
2312 | 2329 | {\g_@@_const_info_major_tl} {\l_@@_value_major_tl}, |
2313 | 2330 | {\c_@@_graduate_label_institute_tl} {\l_@@_value_institute_tl}, |
|
2364 | 2381 | } |
2365 | 2382 |
|
2366 | 2383 | % 渲染信息。 |
| 2384 | + % 此处必须限制盲审模式替换符号数量,不然会泄露信息,还可能导致行溢出 |
2367 | 2385 | \clist_set:Nn \l_@@_input_clist { |
2368 | | - {\c_@@_graduate_label_author_en_tl} {\@@_secret_info:N{\l_@@_value_author_en_tl}}, |
| 2386 | + {\c_@@_graduate_label_author_en_tl} {\@@_secret_info_fixed:Nn \l_@@_value_author_en_tl {9}}, |
2369 | 2387 | {\c_@@_graduate_label_school_en_tl} {\l_@@_value_school_en_tl}, |
2370 | | - {\c_@@_graduate_label_supervisor_en_tl} {\@@_secret_info:N{\l_@@_value_supervisor_en_tl}}, |
2371 | | - {\c_@@_graduate_label_industrial_mentor_en_tl} {\@@_secret_info:N{\l_@@_value_industrial_mentor_en_tl}}, |
2372 | | - {\c_@@_graduate_label_chairman_en_tl} {\@@_secret_info:N{\l_@@_value_chairman_en_tl}}, |
| 2388 | + {\c_@@_graduate_label_supervisor_en_tl} {\@@_secret_info_fixed:Nn \l_@@_value_supervisor_en_tl {12}}, |
| 2389 | + {\c_@@_graduate_label_industrial_mentor_en_tl} {\@@_secret_info_fixed:Nn \l_@@_value_industrial_mentor_en_tl {12}}, |
| 2390 | + {\c_@@_graduate_label_chairman_en_tl} {\@@_secret_info_fixed:Nn \l_@@_value_chairman_en_tl {12}}, |
2373 | 2391 | {\c_@@_graduate_label_degree_en_tl} {\l_@@_value_degree_en_tl}, |
2374 | 2392 | {\c_@@_graduate_label_major_en_tl} {\l_@@_value_major_en_tl}, |
2375 | 2393 | {\c_@@_graduate_label_institute_en_tl} {\l_@@_value_institute_en_tl}, |
|
2623 | 2641 | } |
2624 | 2642 | } |
2625 | 2643 |
|
| 2644 | + % 此处必须限制盲审模式替换符号数量,不然会泄露信息,还可能导致行溢出 |
2626 | 2645 | \clist_set:Nn \l_@@_input_clist { |
2627 | 2646 | {\c_@@_label_semester_tl} {\l_@@_value_semester_tl}, |
2628 | 2647 | {\c_@@_label_school_tl} {\l_@@_value_school_tl}, |
2629 | 2648 | {\g_@@_const_info_major_tl} {\l_@@_value_major_tl}, |
2630 | 2649 | {\c_@@_label_class_tl} {\@@_secret_info:N \l_@@_value_class_tl}, |
2631 | | - {\c_@@_label_author_tl} {\@@_secret_info:N \l_@@_value_author_tl}, |
| 2650 | + {\c_@@_label_author_tl} {\@@_secret_info_fixed:Nn \l_@@_value_author_tl {3}}, |
2632 | 2651 | {\c_@@_label_student_id_tl} {\@@_secret_info:N \l_@@_value_student_id_tl}, |
2633 | 2652 | {\c_@@_label_course_tl} {\l_@@_value_course_tl}, |
2634 | | - {\c_@@_label_supervisor_tl} {\@@_secret_info:N \l_@@_value_supervisor_tl}, |
2635 | | - {\c_@@_label_co_supervisor_tl} {\@@_secret_info:N \l_@@_value_external_supervisor_tl}, |
| 2653 | + {\c_@@_label_supervisor_tl} {\@@_secret_info_fixed:Nn \l_@@_value_supervisor_tl {5}}, |
| 2654 | + {\c_@@_label_co_supervisor_tl} {\@@_secret_info_fixed:Nn \l_@@_value_external_supervisor_tl {5}}, |
2636 | 2655 | {\c_@@_label_teacher_tl} {\l_@@_value_teacher_tl}, |
2637 | 2656 | } |
2638 | 2657 |
|
|
2728 | 2747 |
|
2729 | 2748 | \zihao{3} |
2730 | 2749 |
|
2731 | | - % 渲染信息。 |
| 2750 | + % 渲染信息。 |
| 2751 | + % 此处必须限制盲审模式替换符号数量,不然会泄露信息,还可能导致行溢出 |
2732 | 2752 | \clist_set:Nn \l_@@_input_clist { |
2733 | 2753 | {\c_@@_label_school_tl} {\l_@@_value_school_tl}, |
2734 | 2754 | {\c_@@_label_major_tl} {\l_@@_value_major_tl}, |
2735 | 2755 | {\c_@@_label_class_tl} {\@@_secret_info:N \l_@@_value_class_tl}, |
2736 | | - {\c_@@_label_author_tl} {\@@_secret_info:N \l_@@_value_author_tl}, |
| 2756 | + {\c_@@_label_author_tl} {\@@_secret_info_fixed:Nn \l_@@_value_author_tl {3}}, |
2737 | 2757 | {\c_@@_label_student_id_tl} {\@@_secret_info:N \l_@@_value_student_id_tl}, |
2738 | | - {\c_@@_label_supervisor_tl} {\@@_secret_info:N \l_@@_value_supervisor_tl}, |
| 2758 | + {\c_@@_label_supervisor_tl} {\@@_secret_info_fixed:Nn \l_@@_value_supervisor_tl {5}}, |
| 2759 | + % co-supervisor 并非所有人都有,由最终作者自行处理 |
2739 | 2760 | {\c_@@_label_co_supervisor_tl} {\@@_secret_info:N \l_@@_value_external_supervisor_tl}, |
2740 | 2761 | } |
2741 | 2762 |
|
|
0 commit comments