mirror of
https://github.com/ValveSoftware/Proton.git
synced 2024-12-26 14:45:48 +03:00
Build Source Han Sans SC Regular as if it were YaHei
This commit is contained in:
parent
6c8d80c176
commit
da43c48f3d
5
Vagrantfile
vendored
5
Vagrantfile
vendored
@ -80,9 +80,12 @@ Vagrant.configure(2) do |config|
|
|||||||
|
|
||||||
#install host build-time dependencies
|
#install host build-time dependencies
|
||||||
apt-get update
|
apt-get update
|
||||||
apt-get install -y gpgv2 gnupg2 g++ g++-6-multilib git docker-ce fontforge-nox python-debian schroot
|
apt-get install -y gpgv2 gnupg2 g++ g++-6-multilib git docker-ce fontforge-nox python-debian schroot python-pip
|
||||||
apt-get -y -t stretch-backports install meson
|
apt-get -y -t stretch-backports install meson
|
||||||
|
|
||||||
|
#install adobe font devkit to build source san hans
|
||||||
|
pip install afdko
|
||||||
|
|
||||||
#winehq-devel is installed to pull in dependencies to run Wine
|
#winehq-devel is installed to pull in dependencies to run Wine
|
||||||
apt-get install -y --install-recommends winehq-devel
|
apt-get install -y --install-recommends winehq-devel
|
||||||
|
|
||||||
|
@ -410,6 +410,7 @@ $(DIST_WINEMONO): | $(DIST_WINEMONO_DIR)
|
|||||||
$(DIST_FONTS): fonts
|
$(DIST_FONTS): fonts
|
||||||
mkdir -p $@
|
mkdir -p $@
|
||||||
cp $(FONTS_OBJ)/*.ttf "$@"
|
cp $(FONTS_OBJ)/*.ttf "$@"
|
||||||
|
cp $(FONTS_OBJ)/*.otf "$@"
|
||||||
|
|
||||||
.PHONY: dist
|
.PHONY: dist
|
||||||
|
|
||||||
@ -425,10 +426,12 @@ dist: $(DIST_TARGETS) wine vrclient lsteamclient steam dxvk d9vk | $(DST_DIR)
|
|||||||
ln -s $(FONTLINKPATH)/LiberationSans-Regular.ttf $(abspath $(DIST_PREFIX))/drive_c/windows/Fonts/arial.ttf && \
|
ln -s $(FONTLINKPATH)/LiberationSans-Regular.ttf $(abspath $(DIST_PREFIX))/drive_c/windows/Fonts/arial.ttf && \
|
||||||
ln -s $(FONTLINKPATH)/LiberationSans-Bold.ttf $(abspath $(DIST_PREFIX))/drive_c/windows/Fonts/arialbd.ttf && \
|
ln -s $(FONTLINKPATH)/LiberationSans-Bold.ttf $(abspath $(DIST_PREFIX))/drive_c/windows/Fonts/arialbd.ttf && \
|
||||||
ln -s $(FONTLINKPATH)/LiberationSerif-Regular.ttf $(abspath $(DIST_PREFIX))/drive_c/windows/Fonts/times.ttf && \
|
ln -s $(FONTLINKPATH)/LiberationSerif-Regular.ttf $(abspath $(DIST_PREFIX))/drive_c/windows/Fonts/times.ttf && \
|
||||||
ln -s $(FONTLINKPATH)/LiberationMono-Regular.ttf $(abspath $(DIST_PREFIX))/drive_c/windows/Fonts/cour.ttf
|
ln -s $(FONTLINKPATH)/LiberationMono-Regular.ttf $(abspath $(DIST_PREFIX))/drive_c/windows/Fonts/cour.ttf && \
|
||||||
|
ln -s $(FONTLINKPATH)/SourceHanSansSCRegular.otf $(abspath $(DIST_PREFIX))/drive_c/windows/Fonts/msyh.ttf
|
||||||
#The use of "arial" here is for compatibility with programs that require that exact string. These links do not point to Arial.
|
#The use of "arial" here is for compatibility with programs that require that exact string. These links do not point to Arial.
|
||||||
#The use of "times" here is for compatibility with programs that require that exact string. This link does not point to Times New Roman.
|
#The use of "times" here is for compatibility with programs that require that exact string. This link does not point to Times New Roman.
|
||||||
#The use of "cour" here is for compatibility with programs that require that exact string. This link does not point to Courier New.
|
#The use of "cour" here is for compatibility with programs that require that exact string. This link does not point to Courier New.
|
||||||
|
#The use of "msyh" here is for compatibility with programs that require that exact string. This link does not point to Microsoft YaHei.
|
||||||
|
|
||||||
deploy: dist | $(filter-out dist deploy install,$(MAKECMDGOALS))
|
deploy: dist | $(filter-out dist deploy install,$(MAKECMDGOALS))
|
||||||
mkdir -p $(DEPLOY_DIR) && \
|
mkdir -p $(DEPLOY_DIR) && \
|
||||||
@ -1223,16 +1226,25 @@ FONTSCRIPT = $(FONTS)/scripts/generatefont.pe
|
|||||||
FONTLINKPATH = ../../../../fonts
|
FONTLINKPATH = ../../../../fonts
|
||||||
|
|
||||||
LIBERATION_SRCDIR = $(FONTS)/liberation-fonts/src
|
LIBERATION_SRCDIR = $(FONTS)/liberation-fonts/src
|
||||||
|
SOURCE_HAN_SANS_SRCDIR =$(FONTS)/source-han-sans
|
||||||
|
|
||||||
LIBERATION_SANS_REGULAR_SFD = LiberationSans-Regular.sfd
|
LIBERATION_SANS_REGULAR_SFD = LiberationSans-Regular.sfd
|
||||||
LIBERATION_SANS_BOLD_SFD = LiberationSans-Bold.sfd
|
LIBERATION_SANS_BOLD_SFD = LiberationSans-Bold.sfd
|
||||||
LIBERATION_SERIF_REGULAR_SFD = LiberationSerif-Regular.sfd
|
LIBERATION_SERIF_REGULAR_SFD = LiberationSerif-Regular.sfd
|
||||||
LIBERATION_MONO_REGULAR_SFD = LiberationMono-Regular.sfd
|
LIBERATION_MONO_REGULAR_SFD = LiberationMono-Regular.sfd
|
||||||
|
|
||||||
|
SOURCE_HAN_SANS_REGULAR_CIDFONTINFO = $(SOURCE_HAN_SANS_SRCDIR)/cidfontinfo.OTC.SC
|
||||||
|
SOURCE_HAN_SANS_REGULAR_CIDFONT = $(SOURCE_HAN_SANS_SRCDIR)/cidfont.ps.OTC.SC
|
||||||
|
SOURCE_HAN_SANS_REGULAR_FEATURES = $(SOURCE_HAN_SANS_SRCDIR)/features.OTC.SC
|
||||||
|
SOURCE_HAN_SANS_REGULAR_SEQUENCES = $(SOURCE_HAN_SANS_SRCDIR)/SourceHanSans_CN_sequences.txt
|
||||||
|
SOURCE_HAN_SANS_REGULAR_UNISOURCE = $(SOURCE_HAN_SANS_SRCDIR)/UniSourceHanSansCN-UTF32-H
|
||||||
|
YAHEI_MENUNAMEDB = $(FONTS)/patches/YaHei-FontMenuNameDB
|
||||||
|
|
||||||
LIBERATION_SANS_REGULAR_TTF = $(addprefix $(FONTS_OBJ)/, $(LIBERATION_SANS_REGULAR_SFD:.sfd=.ttf))
|
LIBERATION_SANS_REGULAR_TTF = $(addprefix $(FONTS_OBJ)/, $(LIBERATION_SANS_REGULAR_SFD:.sfd=.ttf))
|
||||||
LIBERATION_SANS_BOLD_TTF = $(addprefix $(FONTS_OBJ)/, $(LIBERATION_SANS_BOLD_SFD:.sfd=.ttf))
|
LIBERATION_SANS_BOLD_TTF = $(addprefix $(FONTS_OBJ)/, $(LIBERATION_SANS_BOLD_SFD:.sfd=.ttf))
|
||||||
LIBERATION_SERIF_REGULAR_TTF = $(addprefix $(FONTS_OBJ)/, $(LIBERATION_SERIF_REGULAR_SFD:.sfd=.ttf))
|
LIBERATION_SERIF_REGULAR_TTF = $(addprefix $(FONTS_OBJ)/, $(LIBERATION_SERIF_REGULAR_SFD:.sfd=.ttf))
|
||||||
LIBERATION_MONO_REGULAR_TTF = $(addprefix $(FONTS_OBJ)/, $(LIBERATION_MONO_REGULAR_SFD:.sfd=.ttf))
|
LIBERATION_MONO_REGULAR_TTF = $(addprefix $(FONTS_OBJ)/, $(LIBERATION_MONO_REGULAR_SFD:.sfd=.ttf))
|
||||||
|
SOURCE_HAN_SANS_REGULAR_OTF = $(FONTS_OBJ)/SourceHanSansSCRegular.otf
|
||||||
|
|
||||||
LIBERATION_SFDS = $(LIBERATION_SANS_REGULAR_SFD) $(LIBERATION_SANS_BOLD_SFD) $(LIBERATION_SERIF_REGULAR_SFD) $(LIBERATION_MONO_REGULAR_SFD)
|
LIBERATION_SFDS = $(LIBERATION_SANS_REGULAR_SFD) $(LIBERATION_SANS_BOLD_SFD) $(LIBERATION_SERIF_REGULAR_SFD) $(LIBERATION_MONO_REGULAR_SFD)
|
||||||
FONT_TTFS = $(LIBERATION_SANS_REGULAR_TTF) $(LIBERATION_SANS_BOLD_TTF) \
|
FONT_TTFS = $(LIBERATION_SANS_REGULAR_TTF) $(LIBERATION_SANS_BOLD_TTF) \
|
||||||
@ -1256,6 +1268,15 @@ $(LIBERATION_MONO_REGULAR_TTF): $(FONTS_SRC) $(FONTSCRIPT)
|
|||||||
patch $(@:.ttf=.sfd) $(FONTS)/patches/$(LIBERATION_MONO_REGULAR_SFD:.sfd=.patch)
|
patch $(@:.ttf=.sfd) $(FONTS)/patches/$(LIBERATION_MONO_REGULAR_SFD:.sfd=.patch)
|
||||||
$(FONTFORGE) -script $(FONTSCRIPT) $(@:.ttf=.sfd) "CourierNew" "Courier New" "Courier New"
|
$(FONTFORGE) -script $(FONTSCRIPT) $(@:.ttf=.sfd) "CourierNew" "Courier New" "Courier New"
|
||||||
|
|
||||||
|
#The use of "YaHei" for compatibility with programs that require that exact string. This font is not Microsoft YaHei.
|
||||||
|
$(SOURCE_HAN_SANS_REGULAR_OTF): $(SOURCE_HAN_SANS_REGULAR_CIDFONTINFO) $(SOURCE_HAN_SANS_REGULAR_CIDFONT) \
|
||||||
|
$(SOURCE_HAN_SANS_REGULAR_FEATURES) $(SOURCE_HAN_SANS_REGULAR_SEQUENCES) $(SOURCE_HAN_SANS_REGULAR_UNISOURCE) $(YAHEI_MENUNAMEDB)
|
||||||
|
makeotf -f $(SOURCE_HAN_SANS_REGULAR_CIDFONT) -omitMacNames -ff $(SOURCE_HAN_SANS_REGULAR_FEATURES) \
|
||||||
|
-fi $(SOURCE_HAN_SANS_REGULAR_CIDFONTINFO) -mf $(YAHEI_MENUNAMEDB) -r -nS -cs 25 -ch $(SOURCE_HAN_SANS_REGULAR_UNISOURCE) \
|
||||||
|
-ci $(SOURCE_HAN_SANS_REGULAR_SEQUENCES) -o $(SOURCE_HAN_SANS_REGULAR_OTF)
|
||||||
|
tx -cff +S -no_futile $(SOURCE_HAN_SANS_REGULAR_CIDFONT) $(FONTS_OBJ)/CFF.OTC.SC
|
||||||
|
sfntedit -a CFF=$(FONTS_OBJ)/CFF.OTC.SC $(SOURCE_HAN_SANS_REGULAR_OTF)
|
||||||
|
|
||||||
$(FONTS_OBJ):
|
$(FONTS_OBJ):
|
||||||
mkdir -p $@
|
mkdir -p $@
|
||||||
|
|
||||||
@ -1263,7 +1284,8 @@ $(FONTS_SRC): $(FONTS_OBJ)
|
|||||||
cp -n $(addprefix $(LIBERATION_SRCDIR)/, $(LIBERATION_SFDS)) $<
|
cp -n $(addprefix $(LIBERATION_SRCDIR)/, $(LIBERATION_SFDS)) $<
|
||||||
|
|
||||||
fonts: $(LIBERATION_SANS_REGULAR_TTF) $(LIBERATION_SANS_BOLD_TTF) \
|
fonts: $(LIBERATION_SANS_REGULAR_TTF) $(LIBERATION_SANS_BOLD_TTF) \
|
||||||
$(LIBERATION_SERIF_REGULAR_TTF) $(LIBERATION_MONO_REGULAR_TTF) | $(FONTS_SRC)
|
$(LIBERATION_SERIF_REGULAR_TTF) $(LIBERATION_MONO_REGULAR_TTF) \
|
||||||
|
$(SOURCE_HAN_SANS_REGULAR_OTF) | $(FONTS_SRC)
|
||||||
|
|
||||||
##
|
##
|
||||||
## Targets
|
## Targets
|
||||||
|
5
fonts/patches/YaHei-FontMenuNameDB
Normal file
5
fonts/patches/YaHei-FontMenuNameDB
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
[SourceHanSansSC-Regular]
|
||||||
|
f=3,1,0x804,\5FAE\8F6F\96C5\9ED1
|
||||||
|
s=3,1,0x804,Regular
|
||||||
|
f=Microsoft YaHei
|
||||||
|
s=Regular
|
1
proton
1
proton
@ -270,6 +270,7 @@ class CompatData:
|
|||||||
( "LiberationSans-Bold.ttf", "arialbd.ttf" ),
|
( "LiberationSans-Bold.ttf", "arialbd.ttf" ),
|
||||||
( "LiberationSerif-Regular.ttf", "times.ttf" ),
|
( "LiberationSerif-Regular.ttf", "times.ttf" ),
|
||||||
( "LiberationMono-Regular.ttf", "cour.ttf" ),
|
( "LiberationMono-Regular.ttf", "cour.ttf" ),
|
||||||
|
( "SourceHanSansSCRegular.otf", "msyh.ttf" ),
|
||||||
]
|
]
|
||||||
|
|
||||||
windowsfonts = self.prefix_dir + "/drive_c/windows/Fonts"
|
windowsfonts = self.prefix_dir + "/drive_c/windows/Fonts"
|
||||||
|
Loading…
Reference in New Issue
Block a user