Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

modern-szu-thesis:0.1.0 #1640

Merged
merged 14 commits into from
Feb 3, 2025
Merged
2 changes: 2 additions & 0 deletions packages/preview/modern-szu-thesis/0.1.0/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Ignore all fonts files
fonts/
21 changes: 21 additions & 0 deletions packages/preview/modern-szu-thesis/0.1.0/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2025 yjdyamv

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
21 changes: 21 additions & 0 deletions packages/preview/modern-szu-thesis/0.1.0/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# 深圳大学学位论文 modern-szu-thesis

深圳大学毕业论文(设计)的 Typst 模板,能够简洁、快速、持续生成 PDF 格式的毕业论文,这是基于[modern-nju-thesis](https://typst.app/universe/package/modern-nju-thesis)的深大本科生论文模板。

**此模板非官方模板,有不被接受的可能性**

# 优势
typst
- 编译快
- 制作模板能力强
- 现代的编程语言
- 有强大的控制力,也有标记模式

# 劣势
typst
- 新兴排版语言,积累较少
- 不够稳定,还处于发展状态


# 致谢
感谢 [OrangeX4](https://github.com/OrangeX4) 制作的modern-nju-thesis模板,此模板可使用性很强
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
29 changes: 29 additions & 0 deletions packages/preview/modern-szu-thesis/0.1.0/assets/vi/nju-emblem.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
13 changes: 13 additions & 0 deletions packages/preview/modern-szu-thesis/0.1.0/assets/vi/nju-name.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
189 changes: 189 additions & 0 deletions packages/preview/modern-szu-thesis/0.1.0/assets/vi/szu.eps
Original file line number Diff line number Diff line change
@@ -0,0 +1,189 @@
%!PS-Adobe-3.0 EPSF-3.0
%%Pages: 1
%%BoundingBox: 0 0 588 116
%%DocumentData: Clean7Bit
%%LanguageLevel: 2
%%EndComments
%%Page: 1 1
save 2 dict begin
{/DeviceRGB setcolorspace
/T currentfile/ASCII85Decode filter def
/F T/DCTDecode filter def
<</ImageType 1/Width 588/Height 116/BitsPerComponent
8/ImageMatrix[1 0 0 -1 0 116]/Decode
[0 1 0 1 0 1]/DataSource F>> image F closefile T closefile}
%%BeginData:;
exec
s4IA0!"_al8O`[\!<E1^!0@0\s4[N@!!WQ0"pG,6"pG29#6kG@&./aN#mq@V%h'!c'GqZ''G_H&*@2
dG)^?=<(*G.N,:4ce.Oc5W/MJb)0I8+r.0&$%6NIDs#7:_D'+,'[-lNj>-n$Jl-n$Jl-n$Jl-n$Jl-
n$Jl-n$Jl-n$Jl-n$Jl-n$Jl-n$Jl-n$Jl-n$Jl-n,,2!"fJ:F95,<!?qLF&HMtG!WU(<*rl9A"T\W
)!<E3$z!!!!"!WrQ/"pYD?$4HmP!4<@<!W`B*!X&T/"U"r.!!.KK!WrE*&Hrdj0gQ!W;.0\RE>10ZO
eE%*6F"?A;UOtZ1LbBV#mqFa(`=5<-7:2j.Ps"@2`NfY6UX@47n?3D;cHat='/U/@q9._B4u!oF*)P
JGBeCZK7nr5LPUeEP*;,qQC!u,R\HRQV5C/hWN*81['d?O\@K2f_o0O6a2lBFdaQ^rf%8R-g>V&OjQ
5OekiqC&o(2MHp@n@XqZ"J6*ru?D!<E3%!<E3%!<<*"!!!!"!WrQ/"pYD?$4HmP!4<C=!W`?*"9Sc3
"U"r.!<RHF!<N?8"9fr'"qj4!#@VTc+u4]T'LIqUZ,$_k1K*]W@WKj'(*k`q-1Mcg)&ahL-n-W'2E*
TU3^Z;(7Rp!@8lJ\h<``C+>%;)SAnPdkC3+K>G'A1VH@gd&KnbA=M2II[Pa.Q$R$jD;USO``Vl6SpZ
EppG[^WcW]#)A'`Q#s>ai`&\eCE.%f\,!<j5f=akNM0qo(2MHp@n@XqZ#7L$j-M1!YGMH!'^J[VMZd
p!fAD!!fAD!!fAD!!fAD!!fAD!!fAD!!fAD!!fAD!!fAD!!fAD!!fAD!!fAD!!fAD!!fAD!!fFqdO,
<M4#P`c2=kBg*cXR.[@&99YS-;n4P#(nmB(uVj-\f9XC@_.<;G2ik)4'*p8Yc:cGn2n/)'8DNf$Qo#
!)Z0!!)Z0!!)Z0!!)Z0!!)Z0!!)Z0!!)Z0!!)Z0!!)Z0!!)Z0!!)Z0!!)Z0!!)Z0!!)Z0!!)Z0!!)Z
0!!)['.Vu1`--0L/'F=,OAf&dj/!dg=.5pM#6(/3Y-h67E)nZRh"'_RND^,*7f&&YHC#+KZmg#Tf*M
OU\[HYsgZJ.-]"^`M9-#LJpK`;]f?Bc!maW-G44MWIUaN(t4`oPA.FlWkiuWp0B)P$Vi=f%8K6_Tcp
IaG99gMYTp)n*L&ST_Kbj?1,79WbN=gXbh_C8l.r/q%X/@#$:8(I)i(.^V_.L)TTba&B1V^o.bd"(K
PA0]=:W$8$?/V;>H(Lr?J&CHo\:^G_8<2omJiYg0VRY`(9',%,h#CLYPpq!#/:!!#/:!!&@P-'<8<8
5lla<mpD]U0>p'or%7GVX^r!?/FpW!nQjmUQC97n=G#0Q+J-30JphG,)kaBd^M5jf%dH7mY&?EWHQC
j4$8(j:b[P_;SZU;R:mo?AcT05MI1bsaj7\bubsji8<4)YHf&Rpa?Sd'g":UBFi2_"r:Z+gJ0)_[F;
<'kEr)npC8b"D"[?\_4F4sg83V)24jC$@WQ*SP:,TPtfX62&qo&EK[[_8u3Tt7[pAr9%BY,<D'T`Ve
IM4QK8n`Pk7p$:O7c64?h3>"Zl.Z`_?aYX%kGJbNV,=9nm'g:`>mi^)eHP3U+Lnt!J&9b^"13.>""+
Y?8"BQ8s5MER-hFN#5TuRjq(@+gZR/;]hi-m5+Q1F;V!U*i4prh^rFkGOFUAblTmTI<XPRgRGj$/Q=
)]p#H6h%1c>)MWLrM&+$SHE0>,=OYGNPT/J\G*hA:P/Qmn0`q8Tmu)E&):pRX9p5W"dS$udqM1bD"G
1))!Cu&Fs"[FLmlZ.?#aurAB,B<JsNj-&)G$VYjP)uaZXXr?iU_:^'8t6[.1!23Zj4=LJQOZjb?ao)
me``ITQOLB;+_W?M.Zk&5+9(Up.I$+u!SN3%@E@KBlmAIKdBse9i(*?L!>F:q<f^>D4:)8C=DS4*"+
2!P(W5:]X!!:]X!!:]X!!:]X!!:^%;L;,&9(e28[!P%a4LjLAm_)0Z@_MQ$2-ik,rA^U6ReFU^_)rZ
KVVoQXKsDA$<`T_EC?=FL:OkcUYp3rV;,G'Z*dh\0,VYU-uW>UuUIN%4:U>_"mEZ/U9u61fS'a'$mM
^XB:C]X!rL7m%8%=FEVDYD[m?T+t_cq"dbrq6'R+V$rM(8blk](N=BYPm'sd8"d&mVuWQL-ig!!-j.
bEBJ0nLG_=s.Lh"qGBU6fsn)9CU8J7=dNo9KCn1Ru?"%CaYoM&'i7nC7\cLqIu*76[q;uV*'p%<7j&
+L>1:><be*muD8!'nru;(gos`4'd5)L6g$N6@je^YQ)U!$pJ2RK3:0pc[VPT,@Jad'_X$6$IGX'5SK
okj48DG0*X%mp23!T*hq0n@ulE%qsCog$PmQ9YQ\!bl7\<o/1Z4!)Z0!!)Z0!!)Z0!!)Z0!!)Z0!!)
Z0!!V6!P$h;]aIMMCla+jLDp3T668Bgf@6m[+!coqGI!ek4QSEH@'Hm/AdG_4(KO2X.cSu6Fq1mZ&#
R!\KUI[D3\h#4MW+%ju9ptnf%]O;T1;$oMT30$AnaA__7q-&;59>2MCgI:YpK"A.@Y"Z(ffdq#!aUA
+KFk<n_l47?>VQZ$[!+Iska,N2K$8[*a[.S\\\!SF;T;,!Rf@Z;f;+20!;+20!;+20!;+20!;+20!;
+20!;+20"Q`4cs7[JO9AZ9Ef<gS$4ZJ$2Z<-at\5rh(u:JkAPr%7pK$FdruHkch'pDU,l@ktoPTLf,
/``kIZa'_.p':S`(p9rL`]D0WrDToq=lY%E%Ss`A5O2aOl0>]kKBce$O07PK]3;"+VN-d'/<^2^'!M
AE>3V8@PG_](V&D#J)`Us:%!<+2Xhu:cBG4qOHFFeP,[.-p#9Rhc?CdIta,Q7jNJ$mm[mPI^q%H845
DsY_[<K)HUWB-tY;slm[n!<UL+RjQd2hjFhVX&E1XHs\Y$0+K7<[48$hS5$MI3&2rGksAr-\?I)6S^
FQl30u>3'LS[oA4uT(%T%Deb'l`>>r/`2&Y91o'08ABjC5Qa!B9Hrl`%_LPn#uia%!Bg'r_-\V\?CE
t6jjMr1d!*;n:eoUkLIVVUK$#CJ7AW2$38g"K?-eQ,6Ze0"Gn/UAEO:]X!!:]X:&#c3o=TOa43;lb`
Lfr@5sn=R[$OKhplN0,=eb*bFY8(2S\I.u[YM-_Y+a5WSL"oLA&B@7'6o(g"(?)%;[G5`?)(fAE$4`
ED`rr?Y,L^a/QBh1J$DYX/H28T25nT"%g`%<'8@XcQ9^0SmAnA!-G!0B2^i)f.7;C&NKOg&A()-@l1
3tX_"T"c#S(eaAHgJ*<'eZE`^S))M@RaG6X'MHI*liAB'!8IE'??'=brmfm6[1=$Ug3Ah!d7JJZl-P
eFZpC"D*Q<Rqh3=5cW<\GQ&!2/tdc0b'_Oh`kZc)\^Rl01POf#sC#n$%p0%b&\0W-/mKEIYCo8B4Pk
m,(tflfOpZFA=cYF2CQnk1J]l2n6EUmuIuEKT-9gN_W7Q)B<7#5E,TQR1bEop`Ie/f<r0#DLuD"/.(
L`1N^snd>4T`P*qNXM8Al(W$(pST"F'jU#=Hg-FfH&i3#*0]>Q^K'_gK0KO^pS87@"g!em*KR@k"j/
m)8S^m)rb$pu;Mt\_.mCe6WJJ]M]]uOVi2qQQOYs+5M_5M/'XH6-lLHW48Y2G#&@/0tU]sM\\p>%tT
jedDHn-5A+"jNs!X9A$&b@q&MJiXl++J3`"GLTJT"Vag!"Vag!"Vag!"Vag!"Vb$jHq=42oUcD)qOW
O\TjQ\l(/O$J8F$[QZ(;IXN^mu:=oe9@?WFAY[/$ouCWJ'nTc9erG6k8ERf)@D[BA9ZS)Qqoom7Q=g
In$F0M-jT`]dC=*_&C"RX`8*LqY&-K;k?BIdEF6M1X#(X>#_/=4dDGP'q,*TFEIT>L^;MWQ1rNQdaU
D`X#_?D6*d'5)-elrLJBjhg!2ZHGuM4AVNp#8V#S&fE<!%j6nZA!i,fe",:.XYDr0+)c>5[82T-<c>
22!gMCiI\L7:TmS<quI2njf/q+?/+Rsr;[;49U?ds2fVQ;HnOpL34'o)2:DMKHf[,X;_!Y5<\eCpub
O-SaB52PSA8,iQrA=d&1O7u3ha0u</f>%+Li`;9%mtNWC_b[hP^:0OWqZ,N-\<4:$p#D3*:_gQN^H*
mo/hM3O=2SAUHk@;^g+R*%p,JO$7C\F)A<+P>]DX#$H3!>S5MDICp=b,4Z)?hfp.X.a@n)0foN0gfp
k)o?Y5E"]TA\9"!0$P1:S!QP_f$q)8FG,LN&ksLrou#q:YH&i3a[EMIbI8H,jf9rYtqf?grRaM&Y*t
=62YMYnE$gNY?k=UCJL#E?f"6b%/dhRq#d7^-_F)Z#CAY(5+DF4?#+YCm<@PaH8Q2q-:hQ:8Sn:F><
baCrWq`0YC'F@]nE=*-G<Pf#fpS<1(\ki6XJ7=?.`?UB>Hb3nCF0cCMY=tj-K8a2;EW*nkZeR_u@`#
6L3YXXOtkP/E`MePmRHjZd8s5FAYI,'N%:!'N%:!'N%:!'N%:!'N%:!'N%:!H&q>AWf8Caa,(l_bdi
]b:`fUGKg5A#j7l^=c$b<CD<jE!n>D'6ASa6cgYB"Th2+&]prYfNq"B5%R/N+o;;k:Z=SR`\rGKqVe
8D+=.c!%L$qM<?1#nGa`cJr!I(K*tnFG9+al:Q&M=2B?KC_o.IWa%'+/b\LnLfaZCIYl(ri9\1_RL$
*nqYppAcn;_>1g%&mf7U=;Xe%N/9RL-B1ZNOk!l6V1jSnl@GDIo4_s].FJ&\m.%gX!.%gX!.%gX!.%
gX!.%gX!/&=D5I!AEh?G;!LW+!<i6AE"9DIU#pa;>%tE\ML'%#jAG!-liWLSIG=r)Yq1;rm4eED!Fe
Z3(sd:_cdc/&Tbl0P)L`3<XN/;=SAqLZ@b+%hSNUkncjBHWo33Zo3g=Z&oCP=n@4=60V]W5Ta2-9DJ
JE*E1qh)H5m9iXJBVc6g*2PtF>\.8We&iJT4.g$/6bI$f1)i!O=E?3^1=ikHGTUVlpro%Oh1G:<%??
XKA63:n(Pe,dS@J"upKn^`bu>3YlbLaBF6[6Ycd`<8f5#Q+[rEd8qkf=5O%Zi:#X4;"BK?fI]6;H6S
X%!!1.-i9Y\]TE-n]7]KW>ObMK2hs'QV9jZ3pg6hEoQ0THHIg43X,oD\3FuR9PM[@;!86k&m5<p0.c
CTDp.]SV,C7NG_(It*F9#t=VS95.C%2QupkPUD!,-%%SahfN(:*H]%!s]#4c&%fg_!n_Fm,FtHq/PB
^P^khP/Z<imF6;<&VJ#ab2Gl9^'P32e5-D6KbRBL"`Q[Io_C?tKAJ,fKOr,d9oiu/OT(,Q^9#'`_Cd
r,X2;b)-(N%HeHhfYbPM/JrLS.)NFUnuL$l+e)-5Rqo%cpW,=\U%6!p4G7e4]a`20$G<DhPCK"gg+]
PX<h&FdGeHo\4IE@]-<^foLp&2)?UXcbXp`8Ge$dXXK,]OUZCd3dEC&7!Hb-V_41op=2ukg/<8cf%e
"B)(VdHp,$,8[c$j;V/j%iXg9%&8jdXldH(=F.T,?6hlN.2oQh&\_XIS"PTnoNlhCa_&q'OT6;LWcj
(4Q'Mnr+Zb<KbF%.B-)%6Y1XG`]n?pXW$?DHJOO5<(Imbr?>A%o:1!86.3`Zlrp%A4I0_%k8n,4HSE
&U[or'K=3DQsOs,U@U&T+2a5m,JAHNrK6%/nc&RqPeLe6p2J(6k'pP7pKrWg44Cnepei,J9NHu;0jN
JDb<[NVPpa*&&:9!iFKW?jpY`g(.rU/++1fqZe7@'A\t@9:GE9lO!rsh3i,S%.f:c"A72/Q!72/Q!7
2/Q!72/Q!?4Hd,Hm>-#H?<?bL94s6Ia*&\)Z6^]%q4nlgXHj!"aeK.!Vp5F"LbcP6$!^W1e^d,O\2p
`l3KM(.N83Ip4L`i+)g(cF2WCuO/L1$`G"dFgcSt8dk[2IA9-<J*$!l<HWS#4!VY.3K;)L_T*nk.P2
6JIn#e!M]3k_d.!C,CoMAPKV,mPqp%o1si2s]DMgoSlATt.C&"RPeaGmT<@PYT8;S5ofj*^S#!!fX=
$))&7a[N\lY&Bn[m-;NW2P<pVEG"9q_*.UsK',HjrJ^+s@sjNkNVec(k-_of+q4NsLP2>*](&OTDl_
$cBsQS_*Rp$e&gH6oquJ\IGO4R1hEL_^iZB/qgPG3t#0T""i'k;(E?H8c8<f,rO^B\AhELusX'^Y>"
(9Y:?ebs]P?>JFEY,BTrr=4BEU$6uI+.slhgMikB"3_=QH970r?>9,WuC3:@p]_CWUUbq=.KF`Ufs(
FNfqNT.K9C^I*2!Z!$(=nih%'')W[i,2tns\`_K,T5:ZX7"7WLjIpor)>7VNWYk]T2g''\*,\-iSTr
e<)IbZ`FnJ?oHq^&>irr@I,+8[X&I`/\lrZQ'$+7mfO.K9Br9,[a0fkOmKEPLMCckk/+-iX/j]ik;h
_#FCfT>\d[Z\X+kkPkOa5Ta?172,`!72,`!72,`!72,`!72,`!7;tI04s;Ss?O/9iFQV(!QK9].LWn
D_R9@!T@,M$?[jMjjhc:8H4BnNS2bSQh`-RA#<oZ7DS@jN)$7P"sYSH^fM*G`>)!We;>",$NU^$'5+
duF-(H[-:g@8Hq>h(r&W'1-jW*J69^KGG"/og)2d!H6N"1\-rnK<3OnT7k+[^'(Ner]j%g,U*)_f7!
W*!1.?)9)n.][D[XK$4:J8`0V7%BiP%@IRL??9V?"[C9F+810o(YZ4eTdl$Fj!/DP:($o9.IqP.3.r
PuH5doQ#!@>ID+SeuZ%5@4"f^8TCKBa<$@uXAD$Ang`;1JnETFVh-#OLL0%h)^t?YV06Xm-J%F_dKm
+icno+&7bs=11sp!#/:!!#/:!!#/:!!#/:!!#/:!!,(WoU`(;0W9UjI(=lOTE?WZtU6\$d^GC",?KY
;>m^7uOPMP$L29`dBb-NmA+HK9DH<8T<[Pu,4gE3bH.o6,n(O#+gHRSd:S(K9%ct*MI]FS9FSuPqFW
$Ir7*U!U,?hd9C.!VFq6$]SIdYoY(q-lYB%Mgl=p&d2<:k$\epj9pMCYobP:Bm/`gSfC,ZAd$*S-@\
e2\UamXj)8'n1Wbf\&84G"Bnur&8N(QZg&36k%P+Hbl7Zc1UMTYWAWh1[b^>p?4cW!P^A+\`TtVp*B
,0iT`5#LCjut1!:ua/a+"<k,,.d:_)e0uI32+A@AC^Pd".K[o`u!qid]['`Yse*ha+^"oK."MWJ3Vu
737qjjnt?EKuT)sW^`hUL^L.;8b<_'_^2tD6TQ(GNJ]bN_,_NeBEIn>Y%jF(o3Q4$NRe!Tj3>-"SUg
>MkWO\8mgf,B=7I<kg#tJ6hP51Ljtp,d)&O\cgd('Y5gR,T=4mNQZ;8A$;o:<GpnM2IXY)I=E<WJNN
&ngX0kVN4<H("gF4Pk$?\b8Zp9Uf(-/XZ"^TjPP]4hV/B-[AMSZ2VhNuq1KfmXukcb:(^?\i+@Tpnm
.Df*ecEHp\F-N<KAUF\FFH?I5QY@=5V$7MX!$Djj91jee>GnOchq)*?%HqI$+F&a\"7ARHn!58mBIW
#'IN@",XL?"UA>O#83g%7&&CX^%6m;)SpinTi5foJh6MVA.$\[*IZ!7?=G(#rJGe<W&Ef5M^(D^*>Z
rM;Lrb-_(\Y=ml)(@)n"l;@$<Un;'UfW<,.kLa0k'ERj(`Qs3=h[mFNiSPRK==i1=qGjk-=u-=@"3L
a-PK*)%#X(EijE'ofX5RoF86O\Hd.KIXLB9r:e^7<c%$E?ea6-fRHo:F/LPNSFpiBTiDH>K2dn>M=,
C0Bt!'?C["1^;[\&Vj8(V^S/Nl&dB2#dOd5l8t6Crnd1LQ`]tSeP]DSkg1'nd6o#rr?Y\L(31('eZD
a5Ym0B[o]&<q/.JuXBsq\DeosD'rh(<kZV#Dj,GG`)c!cE>FQ]i<OR`o=+;rZiWg@AH3!PdKg%]7pi
GG,f!NUn>IbdZ[ZW_&fI4tFG*O9]nrA"\Gd"&n-2UPa:JqK@LhuOe=jPrQ^M&:M^mF3`!68m:ItrIU
ei\G\heE'2(@QTcC2WsKUtOlYAPs6&)9\&9%slLj5DAdV$XT;u&F"CbI/a2`-]Eb,G?3qFg_)";oQS
2:/b&c?M;e%g4fm<$!"?0L1:+1]bP.@n't[h=<d.Kq>t8sK4LXtrS]NEX;3^p/3>M1q^sC^]p)E=7&
)mc6T$gL]LK&^D,L?`mnLscF7sp=^#M/NF.1DlK"<KiCZiErl'ED!!'ED!!'ED3oIaW][oacfr/t!3
)'MYTBD]hWK?-<RF[rL0YM06g_lX%bA21F;K7(43UnD:=*9QkV8gUREaR]8Y<pZqJd!V8g?r-RFQ)G
#kID.;Z'@loi#_FB<X67<0O^,'$-?IEr=h.'95_b.;-me1hY*&+'uA*aAI:%4A?AqJp^eG^VqSo,Ef
\6n<(qWd,0J%E:>Ss09IYCV'%i_LP#rL^uRACi:@,e,(00n6k!Jb85S$MVl+\p_?25M>Wrn13BJeu*
e7k"8^*arJLh#@4$\.*l56[IlGMAS\2H`G)7)6YgHKgDho?6p^#:i)f)[`kN2CGdHC9]74lP4Af?H[
Bc"56Q6b:#Ai=^m`'c;^C"[1CYgDdFI5?L?X6*<1#%$UT>NP\VsOQsOmk`VnCaIo,IBj=;8SuK"FW1
\?TrqZIL)-<nT=a[]86E@8Q-T;7h9S)N^)>t8bZf"Y.RK(_;Yt8l?YnP,2W1M94oAf"0#OdELbA\jn
4&`q^:T%UAQ(:SjY(eV`^<I#j2>D?d2GDj'Nj0p]k!4plM'TP22n`Ib4:-5$Wa@o-_,'b@e>gdB+Wh
\'fB!4Z^\C>1u</nLsW6<%&iM'ERb@mCE5s,Mn(Q!+=^_WqA%36S:K6i[Fg,]r.o[;@i;nrO5]H1[t
#4l0LV`)uOH+lr,ggM>F;DUmauLR$o]-]`<JY72/Q!72/Q!72/Q!72/Q!72/Q!=<9Kl[\)SE$X`+$Z
4h(sR,4V#NQ3O7mLBcld^SG5&'^/kh?):k"0P4nCUU=D\G6q5VolMHr(>kjFWKe2YLIE!9!Hl_,dPt
eXm`@Pqp=+f,X_>FpfmH[d!RA&T-(5"i<q<EGuj5Wl7B%%ZFM5/$r/Lg:L&:s!T[8R&+#_RU-$[S`r
7*i%h*>FQNVqq?uT^&fRapp'A-C1;+C.JOi34L3=;d]-&LgcYBbcoJFTOjZjer\Zgd+LVSQbYQI5Z:
hI@_]TPcc$)*#au]`<Ja7=6cg!"C[Q#L*_@l'm15p-Fc&T@UUr%=ZkHN,5KQD[tLV-[BMSBUF/6IDG
j_ha2iW\"^OI_1*K<$0%7A@b&6"D]bgiUqTFHTPTiW5hW>:<Xb[dJu>:_kQ01170"$!70"$!70"$!7
0"$!70%^nqeg(&a058b?WAEjm@)#H%Mb+aY(!*7a8;aHO5N3T^*<?]iN!h14<iuo8-m9e&2FfFNm)r
0pF!q`"C(dhn4!&+402Ah-+0:uI$p<_>Ng*,q_>8krL/0EG`T\t287Z><GN&D6#QDiWjALU<amiEBf
H,Z*8pbN-j/_&`:8&*oR@\@PA*3)Z:i@i#]5Mk.`45W@EO_Y,M*qchRfi@BKAT5WN9AqCLLtLA@"gO
;>j)E!')=_=3&&i5A<i=>Ig?O_8Wcu-k`97!8P^[F3%.OoD[8?HM4o=lbMBa]IC#LqEtn6Y/=g4=AO
Ef^!^2ADjD5k]/[e7mb+e"8M!FYP'b`=7fN!X]6gYLmc*Zrq.XK'aR/XJ-Bc["k4W:"S.a-j;T3-4`
$jnG3tGKp^#=BW?OlCf\ui*BS^#E[H''E&?=[KV2Va7RgY\Ir,JbJ0<V#!:%uiDmBe:1[h!*d[d!Cp
g+hn(C)Yo5E#mVGr)JoJ'U?Hp2L:a88l?YnKGBOcOk!_+>L*+d&5mNKr21E8_rJDOj4p9G*acPc1Hp
5`cVX9#[a1'n&F73I(ciHQL:]X7P(0KB<:rqRq"5Hi=TF]9H!/S?+\F=^$omI23=;sib@qP^"cRAen
MNDVCYIsl8BHMlrr'o.E^=(jgD\:Zr=JUBYiA+2pkI2f]p;uZGq"c(eShG!r6_I*2rC.b%,n]+/D2J
Y9IH0GA3gL!fmm%r]n^BkVO6lQ/ndRA2id31[H[!2a'eQhP")BS4_?k4RR3K;qiEsB]'DU/@.uX:MF
DV[6^"(><?:FkoVJ(6>;has//+39RB^G*D[=i!;@p%6-.)>g^4TKk^n:0GGcba$%hfoCH8u\XjgcT:
l**>,c:3W3:Zu-.cnjZ,aaSi@9SMsaBL4MONIqa<9p2594Bi[[b8&laE9(XdjpYi`!\n$7GdNQlkN.
,(/+Q_N%,l4E!rr?U+/UVt3+$fhE#fkqZXQ/`OO!$ZGd/O)sYHbK`.`5DnP06n3\%T/4n&',^F?b>[
R"&QS(&.Kq>]h5Q7:d-BJpDP^L[P0B3r6"05&U.Vq_)Z0Oco=OpOc,L-RR."ZbV(HDHT3oiUj;je3@
SaM&)6hMaW<e#P#WU%M.LAVt@1,.%h%di0KM/kW]MuI5AjF%]O9'Kg^L9EUGn"YfJ(B#97oilA?tiU
5C?!U5C?!U5C?!XR1@(e,2M->j7^-UfWiu$as/K)%Fk]\0-`^3<X>*1f+E/i4k'H(@Y5E4>EU8fY"j
ZTX9k9oIf454gU%2BVL"ap^6?G%uU%PMYaK.D5H%)T5Kaum'/6q+YH<PFtc3\O9[/2>5S#N!5\.pL,
Ao1#C'^q6dd46CMK>_&bAQ6Q?N!M,lN-AHAX*PYd1YQVY"([p;3D(T?A9fhsTpuO)!c?1&.57n:/?8
B3ioXL3r5D6Q/W++:TNo@K?Vi0g0kbBj#m3dGaU#LNPa(n,5]J[$L-"coR;]W6T&Yi?+&O&n1R##DR
/m\,/(aCMb=5Yp_eBrP4.S8bkpDGoVijS^5sbD_'iVC&\/rX=$gB"i'b7n_I6_j%@iT2#GqLG?0ni&
u#:@<[pW%%=4r=SlgAWdJ!2dg]mV#/cBZS+*pdQ'ED!!'ED!!'ED!!'ED!!'ED4,CL7nU*Mdr*hno,
6R6%FTX=PQS]Q$K_$Eh9s8L*KW'gK_,&`<@ZiHDo8kic4H(mQ:Q1ZasG:G_tO(q8JM(&?Z+jihr7HB
ZK)(-sXDESnMkh4D1'3M6o0%uaj31gc#!A>piZhJ:E/kk]T`>:61;O1Ls_mHsBq\Z4KOHH#<MWD$s<
]9T7^6f"-jr<K"_<N^3d]=F6el=hT:7P,mK0kOm@P#!@S^P+ctY5#=$D#?Akh-\B."u.LJRI8:J<?C
4Y!:R[7*soE64t>gFb8G(I-iH5=gF.Pp58W$nkRDt)4:tgbnQ\JF`5<"DTp<?bf:@9pph:P^D[@@cR
Q7d6`Y2]ST6.:Z/8P7-jQ"aQHfD^gJ3J2Ph>9<:CY&)lrWT`_:Y!r1P/T,:>lOf83[=VrHfM5UH`5T
QBp[<%C,YY;?,4E*L/f_E_m'HCI\g,8r*/qbTR98906j*uemi!il4BoN4Vc$-YHd/3,(Mm?lde6.r+
XbH+5]A"FYqg-LC4,7P`<2k^YXd=\juL@+0QoYplk4)`*X%_0=0uqL[<==K(^1k'7[ULO8C:0gD.]S
#O5'LW*8JtAYo?Yb<;EG9/JCW7n+@$nfk3fOFG>2o%s9\dZS'Dm'BIhPPrlP@JOf]iEj8a"Vag!"Va
g!"Vag!"Vag!"Vag!+"dKH]#F;BhAO`dB9,ft1L*M3OudFe&,W&Wrr@UO(&L"='XR?.NRkZ"4,MEXL
1>-1(@2duDujFmK7t8":.ZgqNddGle*uqci]i'-di"<#7K_gUgb@_JE-OV6Yi,KcW"nk&!.[6XGdlV
N\Ys34g4k;.`SR#+#Q_sbOb_a<!V6_O0Q;90&#\d/B0V/0f)f%%DJfI=*7p?jr<TQq`.&/B1TU9to>
:401$KU)a[TmkUKF"+0ORJgh8gJZJ$!Zr(&b&C(TKs*XiGja>[upf,;[7KZR/fR.Ooq(rrBDRKQPNI
?FPYHA^pC@U1CZl(u,DPN!FC=!!cbO36/N/po@].K$.?ID/A9ID4nD%.&:a^MSoR9l2\#]^LiOZIN.
g\K]gt";$GLf-0rA]#r.Gu78u9/IVu7)YA3m7S<?ZOr=8dtoJY&[&9r*D7,'QLrr?hu,Flor6(af]+
,']=)EsKtUM6rHqG!bDG#mq;-t,rPUZap,I+?q!TE:!!TE:!!TE:!!TE:!!TEs\;3MMZcO^sHf<^mr
8%g3L/?Q"5prLJ=%VtciT]FA7k*>\&:72!bCp8%]g")]>54#a'DGs>ui5TEkAmffV>]E+nnKVRA'RB
GUWO#(h/p)GLS;-g:<:]X!!:]X!!:]X!!:]X!!:]X!!:]X!!:]X!!:]X!!:]X!!:]X!!:^=tS[KhB<
7IcU+-F8Md%:ipWUP-0TKDtq"-jSO^Y-[gYn-_`,f8]6[&hDX<7uj>hI%Qe[5N#kuoM:GD/Yr0^_tP
'-^MW\&.Bn%Y=Vu/s8E`SD!*c9oiD1!KrY=r$QA_M)d9'PKaOIZYaX!$F;Fr/4BEMRu.%gX!.%gX!.
%gX!.%gX!.%gk.ME0[@VF?Xq"^)gV=<=,fg:3WEKO+YgRAH7e>!R8r&cdRT>S#8pW[It0Z1qbcCDI@
ti>i=dkg*fZOnc.<e_8bDB`c1f$uj(Yj[dlNO.[4F'ED!!'ED!!'ELj.dk%nt5'm`BdL45IL=m`@"0
2s+YFYT*q^ZB)f>d!jHGl7W0%k#ER*=d/mP[FBf]VR-9$omDa2;g#g3=FMg4+nEASL25;I3uQ1:o8Q
Cj*oJ"0fSDSr+orU5C?!U5C?!U5C?!U5C?!U5C?!Y;#b!n:sU1P@,[^=R4<\gO%IUmN:5GIhMaU[r?
aZM?*S%n^i@Mrr</dX^U3P5"fP1o&Tsq;ZY\rUOP"i5d"_6;0@jG:Y,16/9QjiC[3uEoJ[A;;tqF5p
#XeTZ_,.)Mo.O&Y$k4K@>aV@L[udP^sE>.56\\#GOYpX[[MS`5PAV=ZX:u_b8_Yq1]?IU#M2*>YL,>
)8>B;I:l'WOWf-o_6!6AenBR$P9eCJU%dDR<(1?PZ'(X*?bYKd9E_/AoblAGT70"$!70"$!70"$!70
"$!70"$!70"$!70"$!70"$!70"$!70"$!70"$!70"$!70"$!70"$!70"$!70"$!70"$!70"$!70"$!
70"$!70"$!70"$!70"$!70"$!70"$!70"$!70"$!70"$!70"$!70"$!70"$!70"$!70"$!70"$!70"
$!70"$!70"$!70"$!70%i;f`~>
%%EndData
end restore showpage
%%Trailer
%%EOF
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
24 changes: 24 additions & 0 deletions packages/preview/modern-szu-thesis/0.1.0/layouts/appendix.typ
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#import "@preview/i-figured:0.2.4"
#import "../utils/custom-numbering.typ": custom-numbering

// 后记,重置 heading 计数器
#let appendix(
numbering: custom-numbering.with(first-level: "", depth: 4, "1.1 "),
// figure 计数
show-figure: i-figured.show-figure.with(numbering: "1.1"),
// equation 计数
show-equation: i-figured.show-equation.with(numbering: "(1.1)"),
// 重置计数
reset-counter: false,
it,
) = {
set heading(numbering: numbering)
if reset-counter {
counter(heading).update(0)
}
// 设置 figure 的编号
show figure: show-figure
// 设置 equation 的编号
show math.equation.where(block: true): show-equation
it
}
34 changes: 34 additions & 0 deletions packages/preview/modern-szu-thesis/0.1.0/layouts/doc.typ
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
// 文稿设置,可以进行一些像页面边距这类的全局设置
#let doc(
// documentclass 传入参数
info: (:),
// 其他参数
fallback: true, // 字体缺失时使用 fallback,不显示豆腐块
lang: "zh",
margin: (x: 89pt),
it,
) = {
// 1. 默认参数
info = (
title: ("基于 Typst 的", "南京大学学位论文"),
author: "张三",
) + info

// 2. 对参数进行处理
// 2.1 如果是字符串,则使用换行符将标题分隔为列表
if type(info.title) == str {
info.title = info.title.split("\n")
}

// 3. 基本的样式设置
set text(fallback: fallback, lang: lang)
set page(margin: margin)

// 4. PDF 元信息
set document(
title: (("",)+ info.title).sum(),
author: info.author,
)

it
}
Loading