diff options
Diffstat (limited to 'Build')
-rw-r--r-- | Build/source/texk/dvipsk/ChangeLog | 6 | ||||
-rw-r--r-- | Build/source/texk/dvipsk/virtualfont.c | 7 |
2 files changed, 11 insertions, 2 deletions
diff --git a/Build/source/texk/dvipsk/ChangeLog b/Build/source/texk/dvipsk/ChangeLog index 6f428e1668e..f3b566aaeea 100644 --- a/Build/source/texk/dvipsk/ChangeLog +++ b/Build/source/texk/dvipsk/ChangeLog @@ -1,3 +1,9 @@ +2020-11-28 TANAKA Takuji <ttk@t-lab.opal.ne.jp> + + * virtualfont.c: + Accept Japanese virtual fonts without character definitions. + https://github.com/texjporg/tex-jp-build/issues/99 + 2020-05-20 Karl Berry <karl@freefriends.org> * dvips.texi (Virtual fonts): add brief mention of this new vf/jfm diff --git a/Build/source/texk/dvipsk/virtualfont.c b/Build/source/texk/dvipsk/virtualfont.c index 6afc4683670..9675a3e467e 100644 --- a/Build/source/texk/dvipsk/virtualfont.c +++ b/Build/source/texk/dvipsk/virtualfont.c @@ -213,7 +213,10 @@ virtualfont(register fontdesctype *curfnt) * Now we look for font definitions. */ fm = NULL; + id = 0; while ((cmd=vfbyte())>=243) { + if (cmd==248 && (id == 9 || id == 11)) /* parent is jfm and no character definitions */ + goto close_vf; if (cmd>246) badvf("unexpected command in preamble"); newf = vfontdef(scaledsize, cmd-242); @@ -221,8 +224,7 @@ virtualfont(register fontdesctype *curfnt) fm->next = newf; else { curfnt->localfonts = newf; - id = 0; - if (!noptex) { + if (!noptex && id==0) { tfmopen(curfnt->localfonts->desc); /* We check if parent is jfm or not. */ id = tfm16(); fclose(tfmfile); @@ -307,6 +309,7 @@ virtualfont(register fontdesctype *curfnt) } while (cmd < 243); if (cmd != 248) badvf("missing postamble"); + close_vf: fclose(vffile); curfnt->loaded = 2; if (maxcc+1<no_of_chars) { |