Hi Werner!
I have finally been able to concentrate on the creation of the Korean
fonts, and *think* to have managed to get them working. I'm not
familiar with Korean Jamo and Hangul as of yet, but it looks okay.
1)
A question about the bold and light fonts though.
Some fonts from HLaTeX have extra bold (dinaru/udnb, gothic/ugtb,
gothic/wgtb, graphic/ugrb, myoungjo/umjb, myoungjo/wmjb, pilgi/upgb)
or even a light (dinaru/udnl, which is bold by nature according to
Koaunghi Un) version. How would the .fd file look like? For example,
your UTF8/c70mj.fd file makes use of poor man's bold font with the
line
"\DeclareFontShape{C70}{mj}{b}{n}{<-> CJKb * uwmj}{\CJKbold}".
Do I need to use `sfd2uni.pl' and `hlatex2agl.pl' on e.g. umjb/wmjb
just as I did for umj/wmj? Or do I better replace the
"\DeclareFontShape{C70}{mj}{b}{n}{<-> CJKb * uwmj}{\CJKbold}"
line with "uwmjb"? If I choose the first option, wouldn't I also
create fonts that are "double bold fonts"?
I have included a so far *incomplete* Makefile that I intend to use in
my Debian packages.
2)
Is it possible to change the line
"read_sfdfile("UKS-HLaTeX.sfd", [EMAIL PROTECTED], [EMAIL PROTECTED]);"
in hlatex2agl.pl to
"my $sfdfile = $ARGV[0];"
or something similar, just like in sfd2uni.pl and the other Perl
scripts?
3)
When creating the Myoungjo fonts, I encounter a warning somewhere:
"Creating virtual property list file `wmj04.vf.vpl'...
Bad VF file: Character 251 in font 0 will be ignored
Bad VF file: Character 252 in font 0 will be ignored
Bad VF file: Character 253 in font 0 will be ignored
Bad VF file: Character 254 in font 0 will be ignored
Reading `wmj04.vf.vpl'..."
With the Gothic fonts, there are even more warnings:
"Creating virtual property list file `wgt04.vf.vpl'...
Bad VF file: Character 251 in font 0 will be ignored
Bad VF file: Character 252 in font 0 will be ignored
Bad VF file: Character 253 in font 0 will be ignored
Bad VF file: Character 254 in font 0 will be ignored
Reading `wgt04.vf.vpl'...
Creating virtual property list file `wgt05.vf.vpl'...
Use of uninitialized value in concatenation (.) or string at hlatex2agl.pl
line 251, <VPL> line 675.
Use of uninitialized value in concatenation (.) or string at hlatex2agl.pl
line 251, <VPL> line 684.
Use of uninitialized value in concatenation (.) or string at hlatex2agl.pl
line 251, <VPL> line 769.
[...]
Use of uninitialized value in concatenation (.) or string at hlatex2agl.pl
line 251, <VPL> line 907.
Reading `wgt06.vf.vpl'..."
What does this mean? Are these important warnings, or can I just
leave them? I use HLaTeX version 1.0.1 from 14 Dec 2005 and teTeX3.
Best regards
Danai SAE-HAN
韓達耐
--
题目:《秋日》
作者:程颢(1032-1085)
闲来无事不从容,睡觉东窗日已红。
万物静观皆自得,四时佳兴与人同。
道通天地有形外,思入风云变态中。
富贵不淫贫贱乐,男儿到此是豪雄。
#!/usr/bin/make -f
# -*- makefile -*-
# ls /usr/share/texmf/fonts/tfm/uhc/*/*10* | cut -c 32- | sed 's/10\.tfm$//'
# fonts: bom/ubm, dinaru/udn, gothic/ugt, gothic/wgt, graphic/ugr, gungseo/ugs,
gungseo/wgs, jamo/jgt, jamo/jmj, jamo/jnv, jamo/jsr, myoungjo/umj,
myoungjo/wmj, pen/uph, pen/upn, pilgia/upga, pilgi/upg, shinmun/ush,
shinmun/wsh, taza/utt, taza/wtt, vada/uvd, yetgul/uyt, yetgul/wyt
# bold version: dinaru/udnb, gothic/ugtb, gothic/wgtb, graphic/ugrb,
myoungjo/umjb, myoungjo/wmjb, pilgi/upgb,
# l? version: dinaru/udnl
fonts = mj gt
# Font options
mj_fontname = myoungjo
mj_namestem = mj
mj_virtual_namestem = wmj
mj_real_namestem = umj
mj_variants = o c co x xo u uo
mj_bold = yes
#mj_light = no
gt_fontname = gothic
gt_namestem = gt
gt_virtual_namestem = wgt
gt_real_namestem = ugt
gt_variants = o c co x xo u uo
gt_bold = yes
#gt_light = no
# Many more fonts to come
# Variable substitutions
fontname = $($(abbrev)_fontname)
namestem = $($(abbrev)_namestem)
virtual_namestem = $($(abbrev)_virtual_namestem)
real_namestem = $($(abbrev)_real_namestem)
variants = $($(abbrev)_variants)
bold = $($(abbrev)_bold)
build-stamp_fonts = $(addprefix build-stamp.,$(fonts))
clean_fonts = $(addprefix clean_,$(fonts))
fdfile_fonts = $(addprefix fdfile_,$(fonts))
# General variables
texmf = /usr/share/texmf
sfd = /usr/share/texmf/fonts/sfd/UKS-HLaTeX.sfd
fdfile = $(fontname)/c70$(abbrev).fd
clean: $(clean_fonts)
rm -f build-stamp
$(clean_fonts): abbrev = $(patsubst clean_%,%,$@)
$(clean_fonts):
rm -rf $(fontname)/
build: build-stamp
build-stamp: $(build-stamp_fonts)
#-# dh_testdir
# Add here commands to compile the package.
touch build-stamp
$(build-stamp_fonts): abbrev = $(patsubst build-stamp.%,%,$@)
$(build-stamp_fonts):
mkdir $(fontname)
cp $(texmf)/fonts/{afm,tfm,type1}/uhc/$(fontname)/$(real_namestem)*
$(fontname)/
cp $(texmf)/fonts/{tfm,vf}/uhc/$(fontname)/$(virtual_namestem)*
$(fontname)/
cp latex-cjk/{sfd2uni.pl,hlatex2agl.pl,aglfn13.txt} $(sfd) $(fontname)/
cd $(fontname);\
perl sfd2uni.pl $(sfd) $(virtual_namestem) u$(virtual_namestem) HLATEX
&> log
cd $(fontname);\
for i in $(variants);\
do perl sfd2uni.pl $(sfd) $(virtual_namestem)$$i
u$(virtual_namestem)$$i HLATEX >> log 2>&1; done
cd $(fontname);\
perl hlatex2agl.pl $(virtual_namestem) $(real_namestem) >> log 2>&1
# Temporary target
fdfile: $(fdfile_fonts)
$(fdfile_fonts): abbrev = $(patsubst fdfile_%,%,$@)
$(fdfile_fonts):
@echo "Create $(fontname)/c70$(namestem).fd"
@echo -e "% This is the file c70$(namestem).fd of the CJK package\n\
% for using Asian logographs (Chinese/Japanese/Korean) with LaTeX2e\n\
%\n\
% created by Werner Lemberg <[EMAIL PROTECTED]>\n\
%\n\
% Version 4.6.0 (11-Aug-2005)\n\n\
\\def\\\\fileversion{4.6.0}\n\
\\def\\\\filedate{2005/08/11}\n\
\\ProvidesFile{c70$(namestem).fd}[\\\\filedate\\space\\\\fileversion]\n\n\n\
% character set: KS X 1001\n\
% font encoding: Unicode\n\n\
\\DeclareFontFamily{C70}{$(namestem)}{\\hyphenchar [EMAIL PROTECTED]" >
$(fdfile)
@echo "\\DeclareFontShape{C70}{$(namestem)}{m}{n}{<-> CJK *
u$(virtual_namestem)}{}" >> $(fdfile)
@if [[ $(bold) = "yes" ]]; then echo
"\\DeclareFontShape{C70}{$(namestem)}{b}{n}{<-> CJKb *
u$(virtual_namestem)}{\\CJKbold}" >> $(fdfile); fi
@for i in $(variants); \
do case $$i in \
"o") echo "\DeclareFontShape{C70}{$(namestem)}{m}{sl}{<-> CJK *
u$(virtual_namestem)o}{}" >> $(fdfile); \
if [[ $(bold) = "yes" ]]; then \
echo "\DeclareFontShape{C70}{$(namestem)}{b}{sl}{<->
CJKb * u$(virtual_namestem)o}{\CJKbold}" >> $(fdfile); \
fi; \
echo "\DeclareFontShape{C70}{$(namestem)}{m}{it}{<->
CJKssub * $(namestem)/m/sl}{}" >> $(fdfile); \
echo "\DeclareFontShape{C70}{$(namestem)}{b}{it}{<->
CJKssub * $(namestem)/b/sl}{}" >> $(fdfile); \
echo >> $(fdfile) ;; \
"c") echo "\DeclareFontShape{C70}{$(namestem)}{c}{n}{<-> CJK *
u$(virtual_namestem)c}{}" >> $(fdfile); \
if [[ $(bold) = "yes" ]]; then \
echo "\DeclareFontShape{C70}{$(namestem)}{bc}{n}{<->
CJKb * u$(virtual_namestem)c}{\CJKbold}" >> $(fdfile); \
fi ;; \
"co") echo "\DeclareFontShape{C70}{$(namestem)}{c}{sl}{<-> CJK
* u$(virtual_namestem)co}{}" >> $(fdfile); \
if [[ $(bold) = "yes" ]]; then \
echo "\DeclareFontShape{C70}{$(namestem)}{bc}{sl}{<->
CJKb * u$(virtual_namestem)co}{\CJKbold}" >> $(fdfile); \
fi; \
echo "\DeclareFontShape{C70}{$(namestem)}{c}{it}{<->
CJKssub * $(namestem)/c/sl}{}" >> $(fdfile); \
echo "\DeclareFontShape{C70}{$(namestem)}{bc}{it}{<->
CJKssub * $(namestem)/bc/sl}{}" >> $(fdfile); \
echo >> $(fdfile) ;; \
"x") echo "\DeclareFontShape{C70}{$(namestem)}{x}{n}{<-> CJK *
u$(virtual_namestem)x}{}" >> $(fdfile); \
if [[ $bold = "yes" ]]; then \
echo "\DeclareFontShape{C70}{$(namestem)}{bx}{n}{<->
CJKb * u$(virtual_namestem)x}{\CJKbold}" >> $(fdfile); \
fi ;; \
"xo") \
echo "\DeclareFontShape{C70}{$(namestem)}{x}{sl}{<-> CJK *
u$(virtual_namestem)xo}{}" >> $(fdfile); \
if [[ $(bold) = "yes" ]]; then \
echo "\DeclareFontShape{C70}{$(namestem)}{bx}{sl}{<->
CJKb * u$(virtual_namestem)xo}{\CJKbold}" >> $(fdfile); \
fi; \
echo "\DeclareFontShape{C70}{$(namestem)}{x}{it}{<->
CJKssub * $(namestem)/x/sl}{}" >> $(fdfile); \
echo "\DeclareFontShape{C70}{$(namestem)}{bx}{it}{<->
CJKssub * $(namestem)/bx/sl}{}" >> $(fdfile); \
echo >> $(fdfile) ;; \
"u") \
echo "\DeclareFontShape{C70}{$(namestem)}{ux}{n}{<-> CJK *
u$(virtual_namestem)u}{}" >> $(fdfile); \
if [[ $(bold) = "yes" ]]; then \
echo "\DeclareFontShape{C70}{$(namestem)}{bux}{n}{<->
CJKb * u$(virtual_namestem)u}{\CJKbold}" >> $(fdfile); \
fi ;; \
"uo") \
echo "\DeclareFontShape{C70}{$(namestem)}{ux}{sl}{<-> CJK *
u$(virtual_namestem)uo}{}" >> $(fdfile); \
if [[ $(bold) = "yes" ]]; then \
echo "\DeclareFontShape{C70}{$(namestem)}{bux}{sl}{<->
CJKb * u$(virtual_namestem)uo}{\CJKbold}" >> $(fdfile); \
fi; \
echo "\DeclareFontShape{C70}{$(namestem)}{ux}{it}{<->
CJKssub * $(namestem)/ux/sl}{}" >> $(fdfile); \
echo "\DeclareFontShape{C70}{$(namestem)}{bux}{it}{<->
CJKssub * $(namestem)/bux/sl}{}" >> $(fdfile); \
echo >> $(fdfile) ;; \
"l") \
*) \
echo "Oops, don't know this variant" ;; \
esac; \
done
@echo "\endinput" >> $(fdfile)
# Temporary target
install:
mkdir $(fontname)/{afm,tfm,type1,vf}
mv $(fontname)/*.afm $(fontname)/afm/
mv $(fontname)/u$(virtual_namestem)*.tfm $(fontname)/tfm/
mv $(fontname)/*.pfb $(fontname)/type1/
mv $(fontname)/u$(virtual_namestem)*.vf $(fontname)/vf/
.PHONY: build clean install
_______________________________________________
Cjk maillist - [email protected]
http://lists.ffii.org/mailman/listinfo/cjk