Skip to content

Commit 300dfd0

Browse files
authored
Update sourcehantocl.py
Fix font names , issue #21 .
1 parent f774bab commit 300dfd0

File tree

1 file changed

+15
-12
lines changed

1 file changed

+15
-12
lines changed

main/sourcehantocl.py

+15-12
Original file line numberDiff line numberDiff line change
@@ -433,7 +433,8 @@ def creattmp(mch, pun, simp):
433433

434434
elif setname=='2':
435435
fnn='Advocate Ancient'
436-
fnnps='AdvocateAncient'
436+
fnnps=fnn.replace(' ', '')
437+
437438
if 'CFF_' in font:
438439
font['CFF_']['notice']=''
439440
font['CFF_']['fontName']=font['CFF_']['fontName'].replace('SourceHan', fnnps)
@@ -451,40 +452,39 @@ def creattmp(mch, pun, simp):
451452
font['OS_2']['achVendID']=fontid
452453
font['head']['fontRevision']=float(fontver)
453454

454-
enn=['Advocate Ancient Sans', 'Advocate Ancient Serif', 'Advocate Ancient Mono']
455-
ennps=['AdvocateAncientSans', 'AdvocateAncientSerif', 'AdvocateAncientMono']
456455
scn=['尙古黑体', '尙古明体', '尙古等宽']
457456
tcn=['尙古黑體', '尙古明體', '尙古等寬']
458457
locn=""
459458
if mch=='n' and pun=='2'and simp=='2':
460-
locn='SC'
459+
locn=' SC'
461460
elif mch=='n' and pun=='1' and simp=='1':
462-
locn='JP'
461+
locn=' JP'
463462
elif mch=='n' and pun=='3':
464-
locn='TC'
463+
locn=' TC'
464+
locnp=locn.strip()
465465
nname=list()
466466
for nj in font['name']:
467467
if nj['languageID']==1041:
468468
ns=dict(nj)
469469
nt=dict(nj)
470470
nh=dict(nj)
471-
if 'JP'==locn:
471+
if 'JP'==locnp:
472472
njn=dict(nj)
473473
njn['nameString']=njn['nameString'].replace('源ノ', '尙古')
474474
nname.append(njn)
475475
ns['languageID']=2052
476-
ns['nameString']=ns['nameString'].replace('源ノ角ゴシック', scn[0]+locn).replace('源ノ明朝', scn[1]+locn).replace('源ノ等幅', scn[2]+locn)
476+
ns['nameString']=ns['nameString'].replace('源ノ角ゴシック', scn[0]+locnp).replace('源ノ明朝', scn[1]+locnp).replace('源ノ等幅', scn[2]+locnp)
477477
nt['languageID']=1028
478-
nt['nameString']=nt['nameString'].replace('源ノ角ゴシック', tcn[0]+locn).replace('源ノ明朝', tcn[1]+locn).replace('源ノ等幅', tcn[2]+locn)
478+
nt['nameString']=nt['nameString'].replace('源ノ角ゴシック', tcn[0]+locnp).replace('源ノ明朝', tcn[1]+locnp).replace('源ノ等幅', tcn[2]+locnp)
479479
nh['languageID']=3076
480-
nh['nameString']=nh['nameString'].replace('源ノ角ゴシック', tcn[0]+locn).replace('源ノ明朝', tcn[1]+locn).replace('源ノ等幅', tcn[2]+locn)
480+
nh['nameString']=nh['nameString'].replace('源ノ角ゴシック', tcn[0]+locnp).replace('源ノ明朝', tcn[1]+locnp).replace('源ノ等幅', tcn[2]+locnp)
481481
nname.append(ns)
482482
nname.append(nt)
483483
nname.append(nh)
484484
#elif nj['nameID']>0 and nj['nameID']<7:
485485
elif nj['nameID']==3:
486486
ne=dict(nj)
487-
ne['nameString']=fontver+';'+fontid+';'+fpn.replace('SourceHanSans', ennps[0]+locn).replace('SourceHanSerif', ennps[1]+locn).replace('SourceHanMono', ennps[2]+locn)
487+
ne['nameString']=fontver+';'+fontid+';'+fpn.replace('SourceHan', fnnps).replace('Sans', 'Sans'+locnp).replace('Serif', 'Serif'+locnp).replace('Mono', 'Mono'+locnp)
488488
nname.append(ne)
489489
elif nj['nameID']==5:
490490
ne=dict(nj)
@@ -497,7 +497,10 @@ def creattmp(mch, pun, simp):
497497
elif nj['nameID']!=0 and nj['nameID']!=7 and nj['nameID']!=8:
498498
#else:
499499
ne=dict(nj)
500-
ne['nameString']=ne['nameString'].replace('Source Han Sans', enn[0]+' '+locn).replace('Source Han Serif', enn[1]+' '+locn).replace('Source Han Mono', enn[2]+' '+locn).replace('SourceHanSans', ennps[0]+locn).replace('SourceHanSerif', ennps[1]+locn).replace('SourceHanMono', ennps[2]+locn)
500+
if 'Source Han' in ne['nameString']:
501+
ne['nameString']=ne['nameString'].replace('Source Han', fnn).replace('Sans', 'Sans'+locn).replace('Serif', 'Serif'+locn).replace('Mono', 'Mono'+locn)
502+
elif 'SourceHan' in ne['nameString']:
503+
ne['nameString']=ne['nameString'].replace('SourceHan', fnnps).replace('Sans', 'Sans'+locnp).replace('Serif', 'Serif'+locnp).replace('Mono', 'Mono'+locnp)
501504
nname.append(ne)
502505
font['name']=nname
503506

0 commit comments

Comments
 (0)