summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2022-02-18 22:31:49 +0000
committerKarl Berry <karl@freefriends.org>2022-02-18 22:31:49 +0000
commit8b9b189c69bebe3c33a73417347e6c97b8ee1220 (patch)
tree02ae7ee7b39e173c092d63fb61ea7a25110ae872 /Master/texmf-dist/source
parent45c6e09eb8045e03b06158780f9fde21742d4cb3 (diff)
rm japanese-otf-uptex, merged into japanese-otf
git-svn-id: svn://tug.org/texlive/trunk@62077 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source')
-rw-r--r--Master/texmf-dist/source/fonts/japanese-otf-uptex/basepl/ubase-h.pl192
-rw-r--r--Master/texmf-dist/source/fonts/japanese-otf-uptex/basepl/ubase-v.pl156
-rw-r--r--Master/texmf-dist/source/fonts/japanese-otf-uptex/basepl/ubrsg-h.pl167
-rw-r--r--Master/texmf-dist/source/fonts/japanese-otf-uptex/basepl/ubrsg-v.pl142
-rw-r--r--Master/texmf-dist/source/fonts/japanese-otf-uptex/script/CheckDVICode.pm287
-rw-r--r--Master/texmf-dist/source/fonts/japanese-otf-uptex/script/MakeSPList.pm71
-rwxr-xr-xMaster/texmf-dist/source/fonts/japanese-otf-uptex/script/mktfm_sp.pl220
-rwxr-xr-xMaster/texmf-dist/source/fonts/japanese-otf-uptex/script/mkutf32list.pl162
-rwxr-xr-xMaster/texmf-dist/source/fonts/japanese-otf-uptex/script/mkutfvf_sp.pl209
-rw-r--r--Master/texmf-dist/source/fonts/japanese-otf-uptex/script/sp_list_c.txt17
-rw-r--r--Master/texmf-dist/source/fonts/japanese-otf-uptex/script/sp_list_j.txt75
-rw-r--r--Master/texmf-dist/source/fonts/japanese-otf-uptex/script/sp_list_k.txt14
-rw-r--r--Master/texmf-dist/source/fonts/japanese-otf-uptex/script/sp_list_t.txt204
-rwxr-xr-xMaster/texmf-dist/source/fonts/japanese-otf-uptex/script/umkpkana.pl602
-rwxr-xr-xMaster/texmf-dist/source/fonts/japanese-otf-uptex/script/umkvpkana.pl569
-rwxr-xr-xMaster/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf78
-rwxr-xr-xMaster/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf_brsg65
-rwxr-xr-xMaster/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf_jis04112
-rw-r--r--Master/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf_pre12
-rwxr-xr-xMaster/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf_prop38
-rwxr-xr-xMaster/texmf-dist/source/fonts/japanese-otf-uptex/umkjvf962
21 files changed, 0 insertions, 4354 deletions
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/basepl/ubase-h.pl b/Master/texmf-dist/source/fonts/japanese-otf-uptex/basepl/ubase-h.pl
deleted file mode 100644
index b0db092336d..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/basepl/ubase-h.pl
+++ /dev/null
@@ -1,192 +0,0 @@
-(COMMENT THIS IS A KANJI FORMAT FILE)
-(FAMILY OTF KANJI)
-(FACE F MRR)
-(CODINGSCHEME TEX KANJI TEXT)
-(DESIGNSIZE R 10.0)
-(COMMENT DESIGNSIZE IS IN POINTS)
-(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
-(CHECKSUM O 0)
-(SEVENBITSAFEFLAG TRUE)
-(FONTDIMEN
- (SLANT R 0.0)
- (SPACE R 0.0)
- (STRETCH R 0.1)
- (SHRINK R 0.0)
- (XHEIGHT R 1.0)
- (QUAD R 1.0)
- (EXTRASPACE R 0.25)
- (EXTRASTRETCH R 0.2)
- (EXTRASHRINK R 0.125)
- )
-(GLUEKERN
- (LABEL O 0)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (STOP)
- (LABEL O 1)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (STOP)
- (LABEL O 2)
- (GLUE O 0 R 0.5 R 0.0 R 0.5)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (GLUE O 5 R 0.5 R 0.0 R 0.5)
- (GLUE O 6 R 0.5 R 0.0 R 0.5)
- (GLUE O 7 R 0.5 R 0.0 R 0.5)
- (STOP)
- (LABEL O 3)
- (GLUE O 0 R 0.25 R 0.0 R 0.25)
- (GLUE O 1 R 0.25 R 0.0 R 0.25)
- (GLUE O 2 R 0.25 R 0.0 R 0.25)
- (GLUE O 3 R 0.5 R 0.0 R 0.25)
- (GLUE O 4 R 0.25 R 0.0 R 0.25)
- (GLUE O 5 R 0.25 R 0.0 R 0.25)
- (GLUE O 6 R 0.25 R 0.0 R 0.25)
- (GLUE O 7 R 0.25 R 0.0 R 0.25)
- (STOP)
- (LABEL O 4)
- (GLUE O 0 R 0.5 R 0.0 R 0.0)
- (GLUE O 1 R 0.5 R 0.0 R 0.0)
- (GLUE O 3 R 0.75 R 0.0 R 0.25)
- (GLUE O 5 R 0.5 R 0.0 R 0.0)
- (GLUE O 6 R 0.5 R 0.0 R 0.0)
- (GLUE O 7 R 0.5 R 0.0 R 0.0)
- (STOP)
- (LABEL O 5)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (KRN O 5 R 0.0)
- (STOP)
- (LABEL O 6)
- (GLUE O 0 R 0.5 R 0.0 R 0.5)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (GLUE O 7 R 0.5 R 0.0 R 0.5)
- (STOP)
- (LABEL O 7)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (STOP)
- )
-(CHARSINTYPE O 1
- ‘ “ ( 〔 [ { 〈 《 「 『 【
- UFF5F U3018 U3016 U301D U00AB
- U2329 U301A
- )
-(CHARSINTYPE O 2
- 、 , ’ ” ) 〕 ] } 〉 》 」 』 】
- UFF60 U3019 U3017 U301F U00BB
- U232A U301B U301E
- )
-(CHARSINTYPE O 3
- ・ : ;
- U00B7
- )
-(CHARSINTYPE O 4
- 。 .
- )
-(CHARSINTYPE O 5
- — ― … ‥
- )
-(CHARSINTYPE O 6
- ? !
- U203C U2047 U2048 U2049
- )
-(CHARSINTYPE O 7
- UFF61 UFF62 UFF63 UFF64 UFF65 UFF66 UFF67
- UFF68 UFF69 UFF6A UFF6B UFF6C UFF6D UFF6E UFF6F
- UFF70 UFF71 UFF72 UFF73 UFF74 UFF75 UFF76 UFF77
- UFF78 UFF79 UFF7A UFF7B UFF7C UFF7D UFF7E UFF7F
- UFF80 UFF81 UFF82 UFF83 UFF84 UFF85 UFF86 UFF87
- UFF88 UFF89 UFF8A UFF8B UFF8C UFF8D UFF8E UFF8F
- UFF90 UFF91 UFF92 UFF93 UFF94 UFF95 UFF96 UFF97
- UFF98 UFF99 UFF9A UFF9B UFF9C UFF9D UFF9E UFF9F
- )
-(TYPE O 0
- (CHARWD R 1.0)
- (CHARHT R 0.88)
- (CHARDP R 0.12)
- (COMMENT
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- )
- )
-(TYPE O 1
- (CHARWD R 0.5)
- (CHARHT R 0.88)
- (CHARDP R 0.12)
- (COMMENT
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- )
- )
-(TYPE O 2
- (CHARWD R 0.5)
- (CHARHT R 0.88)
- (CHARDP R 0.12)
- (COMMENT
- (GLUE O 0 R 0.5 R 0.0 R 0.5)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (GLUE O 5 R 0.5 R 0.0 R 0.5)
- (GLUE O 6 R 0.5 R 0.0 R 0.5)
- (GLUE O 7 R 0.5 R 0.0 R 0.5)
- )
- )
-(TYPE O 3
- (CHARWD R 0.5)
- (CHARHT R 0.88)
- (CHARDP R 0.12)
- (COMMENT
- (GLUE O 0 R 0.25 R 0.0 R 0.25)
- (GLUE O 1 R 0.25 R 0.0 R 0.25)
- (GLUE O 2 R 0.25 R 0.0 R 0.25)
- (GLUE O 3 R 0.5 R 0.0 R 0.25)
- (GLUE O 4 R 0.25 R 0.0 R 0.25)
- (GLUE O 5 R 0.25 R 0.0 R 0.25)
- (GLUE O 6 R 0.25 R 0.0 R 0.25)
- (GLUE O 7 R 0.25 R 0.0 R 0.25)
- )
- )
-(TYPE O 4
- (CHARWD R 0.5)
- (CHARHT R 0.88)
- (CHARDP R 0.12)
- (COMMENT
- (GLUE O 0 R 0.5 R 0.0 R 0.0)
- (GLUE O 1 R 0.5 R 0.0 R 0.0)
- (GLUE O 3 R 0.75 R 0.0 R 0.25)
- (GLUE O 5 R 0.5 R 0.0 R 0.0)
- (GLUE O 6 R 0.5 R 0.0 R 0.0)
- (GLUE O 7 R 0.5 R 0.0 R 0.0)
- )
- )
-(TYPE O 5
- (CHARWD R 1.0)
- (CHARHT R 0.88)
- (CHARDP R 0.12)
- (COMMENT
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (KRN O 5 R 0.0)
- )
- )
-(TYPE O 6
- (CHARWD R 1.0)
- (CHARHT R 0.88)
- (CHARDP R 0.12)
- (COMMENT
- (GLUE O 0 R 0.5 R 0.0 R 0.5)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (GLUE O 7 R 0.5 R 0.0 R 0.5)
- )
- )
-(TYPE O 7
- (CHARWD R 0.5)
- (CHARHT R 0.88)
- (CHARDP R 0.12)
- (COMMENT
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- )
- )
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/basepl/ubase-v.pl b/Master/texmf-dist/source/fonts/japanese-otf-uptex/basepl/ubase-v.pl
deleted file mode 100644
index 48ef4396428..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/basepl/ubase-v.pl
+++ /dev/null
@@ -1,156 +0,0 @@
-(COMMENT THIS IS A KANJI FORMAT FILE)
-(DIRECTION TATE)
-(FAMILY OTF KANJI)
-(FACE F MRR)
-(CODINGSCHEME TEX KANJI TEXT)
-(DESIGNSIZE R 10.0)
-(COMMENT DESIGNSIZE IS IN POINTS)
-(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
-(CHECKSUM O 0)
-(SEVENBITSAFEFLAG TRUE)
-(FONTDIMEN
- (SLANT R 0.0)
- (SPACE R 0.0)
- (STRETCH R 0.1)
- (SHRINK R 0.0)
- (XHEIGHT R 1.0)
- (QUAD R 1.0)
- (EXTRASPACE R 0.25)
- (EXTRASTRETCH R 0.2)
- (EXTRASHRINK R 0.125)
- )
-(GLUEKERN
- (LABEL O 0)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (STOP)
- (LABEL O 1)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (STOP)
- (LABEL O 2)
- (GLUE O 0 R 0.5 R 0.0 R 0.5)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (GLUE O 5 R 0.5 R 0.0 R 0.5)
- (STOP)
- (LABEL O 3)
- (GLUE O 0 R 0.25 R 0.0 R 0.25)
- (GLUE O 1 R 0.25 R 0.0 R 0.25)
- (GLUE O 2 R 0.25 R 0.0 R 0.25)
- (GLUE O 3 R 0.5 R 0.0 R 0.25)
- (GLUE O 4 R 0.25 R 0.0 R 0.25)
- (GLUE O 5 R 0.25 R 0.0 R 0.25)
- (STOP)
- (LABEL O 4)
- (GLUE O 0 R 0.5 R 0.0 R 0.0)
- (GLUE O 1 R 0.5 R 0.0 R 0.0)
- (GLUE O 3 R 0.75 R 0.0 R 0.25)
- (GLUE O 5 R 0.5 R 0.0 R 0.0)
- (STOP)
- (LABEL O 5)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (KRN O 5 R 0.0)
- (STOP)
- (LABEL O 6)
- (GLUE O 0 R 1.0 R 0.0 R 0.5)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (STOP)
- )
-(CHARSINTYPE O 1
- ‘ “ ( 〔 [ { 〈 《 「 『 【
- UFF5F U3018 U3016 U301D U00AB
- U2329 U301A
- )
-(CHARSINTYPE O 2
- 、 , ’ ” ) 〕 ] } 〉 》 」 』 】
- UFF60 U3019 U3017 U301F U00BB
- U232A U301B U301E
- )
-(CHARSINTYPE O 3
- ・ : ;
- U00B7
- )
-(CHARSINTYPE O 4
- 。 .
- )
-(CHARSINTYPE O 5
- — ― … ‥
- )
-(CHARSINTYPE O 6
- ? !
- U203C U2047 U2048 U2049
- )
-(TYPE O 0
- (CHARWD R 1.0)
- (CHARHT R 0.5)
- (CHARDP R 0.5)
- (COMMENT
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- )
- )
-(TYPE O 1
- (CHARWD R 0.5)
- (CHARHT R 0.5)
- (CHARDP R 0.5)
- (COMMENT
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- )
- )
-(TYPE O 2
- (CHARWD R 0.5)
- (CHARHT R 0.5)
- (CHARDP R 0.5)
- (COMMENT
- (GLUE O 0 R 0.5 R 0.0 R 0.5)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (GLUE O 5 R 0.5 R 0.0 R 0.5)
- )
- )
-(TYPE O 3
- (CHARWD R 0.5)
- (CHARHT R 0.5)
- (CHARDP R 0.5)
- (COMMENT
- (GLUE O 0 R 0.25 R 0.0 R 0.25)
- (GLUE O 1 R 0.25 R 0.0 R 0.25)
- (GLUE O 2 R 0.25 R 0.0 R 0.25)
- (GLUE O 3 R 0.5 R 0.0 R 0.25)
- (GLUE O 4 R 0.25 R 0.0 R 0.25)
- (GLUE O 5 R 0.25 R 0.0 R 0.25)
- )
- )
-(TYPE O 4
- (CHARWD R 0.5)
- (CHARHT R 0.5)
- (CHARDP R 0.5)
- (COMMENT
- (GLUE O 0 R 0.5 R 0.0 R 0.0)
- (GLUE O 1 R 0.5 R 0.0 R 0.0)
- (GLUE O 3 R 0.75 R 0.0 R 0.25)
- (GLUE O 5 R 0.5 R 0.0 R 0.0)
- )
- )
-(TYPE O 5
- (CHARWD R 1.0)
- (CHARHT R 0.5)
- (CHARDP R 0.5)
- (COMMENT
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (KRN O 5 R 0.0)
- )
- )
-(TYPE O 6
- (CHARWD R 1.0)
- (CHARHT R 0.5)
- (CHARDP R 0.5)
- (COMMENT
- (GLUE O 0 R 1.0 R 0.0 R 0.5)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- )
- )
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/basepl/ubrsg-h.pl b/Master/texmf-dist/source/fonts/japanese-otf-uptex/basepl/ubrsg-h.pl
deleted file mode 100644
index 787bf0a3e51..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/basepl/ubrsg-h.pl
+++ /dev/null
@@ -1,167 +0,0 @@
-(COMMENT THIS IS A KANJI FORMAT FILE)
-(FAMILY OTF KANJI)
-(FACE F MRR)
-(CODINGSCHEME TEX KANJI TEXT)
-(DESIGNSIZE R 10.0)
-(COMMENT DESIGNSIZE IS IN POINTS)
-(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
-(CHECKSUM O 0)
-(SEVENBITSAFEFLAG TRUE)
-(FONTDIMEN
- (SLANT R 0.0)
- (SPACE R 0.0)
- (STRETCH R 0.1)
- (SHRINK R 0.0)
- (XHEIGHT R 1.0)
- (QUAD R 1.0)
- (EXTRASPACE R 0.25)
- (EXTRASTRETCH R 0.2)
- (EXTRASHRINK R 0.125)
- )
-(GLUEKERN
- (LABEL O 0)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (STOP)
- (LABEL O 1)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (STOP)
- (LABEL O 2)
- (GLUE O 0 R 0.5 R 0.0 R 0.5)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (GLUE O 5 R 0.5 R 0.0 R 0.5)
- (GLUE O 6 R 0.5 R 0.0 R 0.5)
- (GLUE O 7 R 0.5 R 0.0 R 0.5)
- (STOP)
- (LABEL O 3)
- (GLUE O 0 R 0.25 R 0.0 R 0.25)
- (GLUE O 1 R 0.25 R 0.0 R 0.25)
- (GLUE O 2 R 0.25 R 0.0 R 0.25)
- (GLUE O 3 R 0.5 R 0.0 R 0.25)
- (GLUE O 4 R 0.25 R 0.0 R 0.25)
- (GLUE O 5 R 0.25 R 0.0 R 0.25)
- (GLUE O 6 R 0.25 R 0.0 R 0.25)
- (GLUE O 7 R 0.25 R 0.0 R 0.25)
- (GLUE D 8 R 0.25 R 0.0 R 0.25)
- (STOP)
- (LABEL O 4)
- (GLUE O 0 R 1.0 R 0.0 R 0.0)
- (GLUE O 1 R 1.0 R 0.0 R 0.0)
- (GLUE O 2 R 0.5 R 0.0 R 0.0)
- (GLUE O 3 R 1.25 R 0.0 R 0.75)
- (GLUE O 4 R 1.0 R 0.0 R 0.5)
- (GLUE O 5 R 1.0 R 0.0 R 0.0)
- (GLUE O 6 R 1.0 R 0.0 R 0.0)
- (GLUE O 7 R 0.5 R 0.0 R 0.0)
- (GLUE D 8 R 1.0 R 0.0 R 0.5)
- (STOP)
- (LABEL O 5)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (KRN O 5 R 0.0)
- (STOP)
- (LABEL O 6)
- (GLUE O 0 R 0.5 R 0.0 R 0.5)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (GLUE O 7 R 0.5 R 0.0 R 0.5)
- (STOP)
- (LABEL O 7)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (STOP)
- (LABEL D 8)
- (GLUE O 0 R 1.0 R 0.0 R 0.5)
- (GLUE O 1 R 1.0 R 0.0 R 0.5)
- (GLUE O 2 R 0.5 R 0.0 R 0.0)
- (GLUE O 3 R 1.25 R 0.0 R 0.75)
- (GLUE O 4 R 1.0 R 0.0 R 0.5)
- (GLUE O 5 R 1.0 R 0.0 R 0.5)
- (GLUE O 6 R 1.0 R 0.0 R 0.5)
- (GLUE O 7 R 0.5 R 0.0 R 0.0)
- (GLUE D 8 R 1.0 R 0.0 R 0.5)
- (STOP)
- )
-(CHARSINTYPE O 1
- ‘ “ ( 〔 [ { 〈 《 「 『 【
- UFF5F U3018 U3016 U301D U00AB
- U2329 U301A
- )
-(CHARSINTYPE O 2
- ’ ” ) 〕 ] } 〉 》 」 』 】
- UFF60 U3019 U3017 U301F U00BB
- U232A U301B U301E
- )
-(CHARSINTYPE O 3
- ・ : ;
- U00B7
- )
-(CHARSINTYPE O 4
- 。 .
- )
-(CHARSINTYPE O 5
- — ― … ‥
- )
-(CHARSINTYPE O 6
- ? !
- U203C U2047 U2048 U2049
- )
-(CHARSINTYPE O 7
- UFF61 UFF62 UFF63 UFF64 UFF65 UFF66 UFF67
- UFF68 UFF69 UFF6A UFF6B UFF6C UFF6D UFF6E UFF6F
- UFF70 UFF71 UFF72 UFF73 UFF74 UFF75 UFF76 UFF77
- UFF78 UFF79 UFF7A UFF7B UFF7C UFF7D UFF7E UFF7F
- UFF80 UFF81 UFF82 UFF83 UFF84 UFF85 UFF86 UFF87
- UFF88 UFF89 UFF8A UFF8B UFF8C UFF8D UFF8E UFF8F
- UFF90 UFF91 UFF92 UFF93 UFF94 UFF95 UFF96 UFF97
- UFF98 UFF99 UFF9A UFF9B UFF9C UFF9D UFF9E UFF9F
- )
-(CHARSINTYPE D 8
- 、 ,
- )
-(TYPE O 0
- (CHARWD R 1.0)
- (CHARHT R 0.88)
- (CHARDP R 0.12)
- )
-(TYPE O 1
- (CHARWD R 0.5)
- (CHARHT R 0.88)
- (CHARDP R 0.12)
- )
-(TYPE O 2
- (CHARWD R 0.5)
- (CHARHT R 0.88)
- (CHARDP R 0.12)
- )
-(TYPE O 3
- (CHARWD R 0.5)
- (CHARHT R 0.88)
- (CHARDP R 0.12)
- )
-(TYPE O 4
- (CHARWD R 0)
- (CHARHT R 0.88)
- (CHARDP R 0.12)
- )
-(TYPE O 5
- (CHARWD R 1.0)
- (CHARHT R 0.88)
- (CHARDP R 0.12)
- )
-(TYPE O 6
- (CHARWD R 1.0)
- (CHARHT R 0.88)
- (CHARDP R 0.12)
- )
-(TYPE O 7
- (CHARWD R 0.5)
- (CHARHT R 0.88)
- (CHARDP R 0.12)
- )
-(TYPE D 8
- (CHARWD R 0)
- (CHARHT R 0.88)
- (CHARDP R 0.12)
- )
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/basepl/ubrsg-v.pl b/Master/texmf-dist/source/fonts/japanese-otf-uptex/basepl/ubrsg-v.pl
deleted file mode 100644
index 7a5afbf9e35..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/basepl/ubrsg-v.pl
+++ /dev/null
@@ -1,142 +0,0 @@
-(COMMENT THIS IS A KANJI FORMAT FILE)
-(DIRECTION TATE)
-(FAMILY OTF KANJI)
-(FACE F MRR)
-(CODINGSCHEME TEX KANJI TEXT)
-(DESIGNSIZE R 10.0)
-(COMMENT DESIGNSIZE IS IN POINTS)
-(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
-(CHECKSUM O 0)
-(SEVENBITSAFEFLAG TRUE)
-(FONTDIMEN
- (SLANT R 0.0)
- (SPACE R 0.0)
- (STRETCH R 0.1)
- (SHRINK R 0.0)
- (XHEIGHT R 1.0)
- (QUAD R 1.0)
- (EXTRASPACE R 0.25)
- (EXTRASTRETCH R 0.2)
- (EXTRASHRINK R 0.125)
- )
-(GLUEKERN
- (LABEL O 0)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (STOP)
- (LABEL O 1)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (STOP)
- (LABEL O 2)
- (GLUE O 0 R 0.5 R 0.0 R 0.5)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (GLUE O 5 R 0.5 R 0.0 R 0.5)
- (STOP)
- (LABEL O 3)
- (GLUE O 0 R 0.25 R 0.0 R 0.25)
- (GLUE O 1 R 0.25 R 0.0 R 0.25)
- (GLUE O 2 R 0.25 R 0.0 R 0.25)
- (GLUE O 3 R 0.5 R 0.0 R 0.25)
- (GLUE O 4 R 0.25 R 0.0 R 0.25)
- (GLUE O 5 R 0.25 R 0.0 R 0.25)
- (GLUE O 7 R 0.25 R 0.0 R 0.25)
- (STOP)
- (LABEL O 4)
- (GLUE O 0 R 1.0 R 0.0 R 0.0)
- (GLUE O 1 R 1.0 R 0.0 R 0.0)
- (GLUE O 2 R 0.5 R 0.0 R 0.0)
- (GLUE O 3 R 1.25 R 0.0 R 0.75)
- (GLUE O 4 R 1.0 R 0.0 R 0.5)
- (GLUE O 5 R 1.0 R 0.0 R 0.0)
- (GLUE O 6 R 1.0 R 0.0 R 0.0)
- (GLUE O 7 R 1.0 R 0.0 R 0.5)
- (STOP)
- (LABEL O 5)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (KRN O 5 R 0.0)
- (STOP)
- (LABEL O 6)
- (GLUE O 0 R 1.0 R 0.0 R 0.5)
- (GLUE O 1 R 0.5 R 0.0 R 0.5)
- (GLUE O 3 R 0.25 R 0.0 R 0.25)
- (STOP)
- (LABEL O 7)
- (GLUE O 0 R 1.0 R 0.0 R 0.5)
- (GLUE O 1 R 1.0 R 0.0 R 0.5)
- (GLUE O 2 R 0.5 R 0.0 R 0.0)
- (GLUE O 3 R 1.25 R 0.0 R 0.75)
- (GLUE O 4 R 1.0 R 0.0 R 0.5)
- (GLUE O 5 R 1.0 R 0.0 R 0.5)
- (GLUE O 6 R 1.0 R 0.0 R 0.5)
- (GLUE O 7 R 1.0 R 0.0 R 0.5)
- (STOP)
- )
-(CHARSINTYPE O 1
- ‘ “ ( 〔 [ { 〈 《 「 『 【
- UFF5F U3018 U3016 U301D U00AB
- U2329 U301A
- )
-(CHARSINTYPE O 2
- ’ ” ) 〕 ] } 〉 》 」 』 】
- UFF60 U3019 U3017 U301F U00BB
- U232A U301B U301E
- )
-(CHARSINTYPE O 3
- ・ : ;
- U00B7
- )
-(CHARSINTYPE O 4
- 。 .
- )
-(CHARSINTYPE O 5
- — ― … ‥
- )
-(CHARSINTYPE O 6
- ? !
- U203C U2047 U2048 U2049
- )
-(CHARSINTYPE O 7
- 、 ,
- )
-(TYPE O 0
- (CHARWD R 1.0)
- (CHARHT R 0.5)
- (CHARDP R 0.5)
- )
-(TYPE O 1
- (CHARWD R 0.5)
- (CHARHT R 0.5)
- (CHARDP R 0.5)
- )
-(TYPE O 2
- (CHARWD R 0.5)
- (CHARHT R 0.5)
- (CHARDP R 0.5)
- )
-(TYPE O 3
- (CHARWD R 0.5)
- (CHARHT R 0.5)
- (CHARDP R 0.5)
- )
-(TYPE O 4
- (CHARWD R 0)
- (CHARHT R 0.5)
- (CHARDP R 0.5)
- )
-(TYPE O 5
- (CHARWD R 1.0)
- (CHARHT R 0.5)
- (CHARDP R 0.5)
- )
-(TYPE O 6
- (CHARWD R 1.0)
- (CHARHT R 0.5)
- (CHARDP R 0.5)
- )
-(TYPE O 7
- (CHARWD R 0)
- (CHARHT R 0.5)
- (CHARDP R 0.5)
- )
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/CheckDVICode.pm b/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/CheckDVICode.pm
deleted file mode 100644
index 3af7198b944..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/CheckDVICode.pm
+++ /dev/null
@@ -1,287 +0,0 @@
-package CheckDVICode;
-
-use strict;
-use Exporter;
-our @ISA = qw(Exporter);
-our @EXPORT = qw(is_dvicode is_ucs_open is_ucs_kigo is_ucs_hira
- is_ucs_kata is_ucs_hankana is_ucs_jpn_range);
-
-=head1 NAME
-
-CheckDVICode.pm
-
-=head1 NOTE
-
-This software is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
-
-=cut
-
-our ($dvicode, $is_ucs);
-
-sub is_dvicode($){
- my ($key)=@_;
- my ($code)=($dvicode);
-
- if (!$is_ucs) {
- if ($key eq 'hira-a') { return ($code == 0x2421);}
- if ($key eq 'hira-i') { return ($code == 0x2423);}
- if ($key eq 'hira-u') { return ($code == 0x2425);}
- if ($key eq 'hira-e') { return ($code == 0x2427);}
- if ($key eq 'hira-o') { return ($code == 0x2429);}
- if ($key eq 'hira-tsu') { return ($code == 0x2443);}
- if ($key eq 'hira-ya') { return ($code == 0x2463);}
- if ($key eq 'hira-yu') { return ($code == 0x2465);}
- if ($key eq 'hira-yo') { return ($code == 0x2467);}
- if ($key eq 'hira-wa') { return ($code == 0x246E);}
- if ($key eq 'hira-Vu') { return 0; } # large JIS X 0213
- if ($key eq 'hira-ka') { return 0; } # small JIS X 0213
- if ($key eq 'hira-ke') { return 0; } # small JIS X 0213
- if ($key eq 'kata-a') { return ($code == 0x2521);}
- if ($key eq 'kata-i') { return ($code == 0x2523);}
- if ($key eq 'kata-u') { return ($code == 0x2525);}
- if ($key eq 'kata-e') { return ($code == 0x2527);}
- if ($key eq 'kata-o') { return ($code == 0x2529);}
- if ($key eq 'kata-tsu') { return ($code == 0x2543);}
- if ($key eq 'kata-ya') { return ($code == 0x2563);}
- if ($key eq 'kata-yu') { return ($code == 0x2565);}
- if ($key eq 'kata-yo') { return ($code == 0x2567);}
- if ($key eq 'kata-wa') { return ($code == 0x256E);}
- if ($key eq 'kata-ka') { return ($code == 0x2575);}
- if ($key eq 'kata-ke') { return ($code == 0x2576);}
- if ($key eq 'kata-Va') { return 0; } # large JIS X 0213
- if ($key eq 'kata-Vi') { return 0; } # : JIS X 0213
- if ($key eq 'kata-Ve') { return 0; } # : JIS X 0213
- if ($key eq 'kata-Vo') { return 0; } # large JIS X 0213
- if ($key eq 'kata-ku') { return 0; } # small JIS X 0213
- if ($key eq 'kata-mu') { return 0; } # small JIS X 0213
- if ($key eq 'kata-ku..ro') { return 0; } # small JIS X 0213
- if ($key eq 'comma') { return ($code == 0x2124);}
- if ($key eq 'period') { return ($code == 0x2125);}
- if ($key eq 'odoriji') { return
- ((0x2133 <= $code && $code <= 0x2136) || $code == 0x213C);}
- if ($key eq 'hira-odoriji') { return
- ($code == 0x2135 || $code == 0x2136);}
- if ($key eq 'kutouten') { return
- ($code>=0x2122 && $code<=0x2128);}
- if ($key eq 'burasage') { return
- ($code>=0x2122 && $code<=0x2125);}
- if ($key eq 'nakaten' ) { return ($code == 0x2126);}
- if ($key eq 'colon' ) { return ($code == 0x2127);}
- if ($key eq 'semicolon') { return ($code == 0x2128);}
- if ($key eq 'quote') { return
- ($code >= 0x2146 && $code <= 0x2149);}
- if ($key eq 's-quote') { return
- ($code == 0x2146 || $code == 0x2147);}
- if ($key eq 'd-quote') { return
- ($code == 0x2148 || $code == 0x2149);}
- if ($key eq 'kakko') { return
- (0x214A <= $code && $code <= 0x215B);}
- if ($key eq 'open') { return ($code%2==0);}
- if ($key eq 'close') { return ($code%2==1);}
-
- die "illegal keyname ($key)\n";
- } else { # ucs
- if ($key eq 'hira-a') { return ($code == 0x3041);} # small
- if ($key eq 'hira-i') { return ($code == 0x3043);} # :
- if ($key eq 'hira-u') { return ($code == 0x3045);} # :
- if ($key eq 'hira-e') { return ($code == 0x3047);} # :
- if ($key eq 'hira-o') { return ($code == 0x3049);} # :
- if ($key eq 'hira-tsu') { return ($code == 0x3063);} # :
- if ($key eq 'hira-ya') { return ($code == 0x3083);} # :
- if ($key eq 'hira-yu') { return ($code == 0x3085);} # :
- if ($key eq 'hira-yo') { return ($code == 0x3087);} # :
- if ($key eq 'hira-wa') { return ($code == 0x308E);} # small
- if ($key eq 'hira-Vu') { return ($code == 0x3094);} # large JIS X 0213
- if ($key eq 'hira-ka') { return ($code == 0x3095);} # small JIS X 0213
- if ($key eq 'hira-ke') { return ($code == 0x3096);} # small JIS X 0213
- if ($key eq 'kata-a') { return ($code == 0x30A1);} # small
- if ($key eq 'kata-i') { return ($code == 0x30A3);} # :
- if ($key eq 'kata-u') { return ($code == 0x30A5);} # :
- if ($key eq 'kata-e') { return ($code == 0x30A7);} # :
- if ($key eq 'kata-o') { return ($code == 0x30A9);} # :
- if ($key eq 'kata-tsu') { return ($code == 0x30C3);} # :
- if ($key eq 'kata-ya') { return ($code == 0x30E3);} # :
- if ($key eq 'kata-yu') { return ($code == 0x30E5);} # :
- if ($key eq 'kata-yo') { return ($code == 0x30E7);} # :
- if ($key eq 'kata-wa') { return ($code == 0x30EE);} # :
- if ($key eq 'kata-ka') { return ($code == 0x30F5);} # :
- if ($key eq 'kata-ke') { return ($code == 0x30F6);} # small
- if ($key eq 'kata-Va') { return ($code == 0x30F7);} # large JIS X 0213
- if ($key eq 'kata-Vi') { return ($code == 0x30F8);} # : JIS X 0213
- if ($key eq 'kata-Ve') { return ($code == 0x30F9);} # : JIS X 0213
- if ($key eq 'kata-Vo') { return ($code == 0x30FA);} # large JIS X 0213
- if ($key eq 'kata-ku') { return ($code == 0x31F0);} # small JIS X 0213
- if ($key eq 'kata-mu') { return ($code == 0x31FA);} # small JIS X 0213
- if ($key eq 'kata-ku..ro') { return
- ($code >= 0x31F0 && $code <= 0x31FF);} # small JIS X 0213
- if ($key eq 'comma') { return ($code == 0xFF0C);}
- if ($key eq 'period') { return ($code == 0xFF0E);}
- if ($key eq 'odoriji') { return
- ($code == 0x30FD || $code == 0x30FE ||
- $code == 0x309D || $code == 0x309E ||
- $code == 0x30FC);}
- if ($key eq 'hira-odoriji') { return
- ($code == 0x309D || $code == 0x309E);}
- if ($key eq 'kutouten') { return
- ($code == 0x3001 || $code == 0x3002 ||
- $code == 0xFF0C || $code == 0xFF0E ||
- $code == 0x30FB || $code == 0x00B7 ||
- $code == 0xFF1A || $code == 0xFF1B);}
- if ($key eq 'burasage') { return
- ($code == 0x3001 || $code == 0x3002 ||
- $code == 0xFF0C || $code == 0xFF0E);}
- if ($key eq 'nakaten' ) { return
- ($code == 0x30FB || $code == 0x00B7);}
- if ($key eq 'colon' ) { return ($code == 0xFF1A);}
- if ($key eq 'semicolon') { return ($code == 0xFF1B);}
- if ($key eq 'quote') { return
- ($code == 0x2018 || $code == 0x2019 ||
- $code == 0x201C || $code == 0x201D);}
- if ($key eq 's-quote') { return
- ($code == 0x2018 || $code == 0x2019);}
- if ($key eq 'd-quote') { return
- ($code == 0x201C || $code == 0x201D);}
- if ($key eq 'kakko') { return
- ((0x3008 <= $code && $code <= 0x3011) ||
- $code == 0x3014 || $code == 0x3015 ||
- $code == 0xFF08 || $code == 0xFF09 ||
- $code == 0xFF3B || $code == 0xFF3D ||
- $code == 0xFF5B || $code == 0xFF5D ||
- $code == 0xFF5F || $code == 0xFF60 || # X0213 1-02-54,55
- $code == 0x3018 || $code == 0x3019 || # X0213 1-02-56,57
- $code == 0x3016 || $code == 0x3017 || # X0213 1-02-58,59
- $code == 0x301D || $code == 0x301F || # X0213 1-13-64,65
- $code == 0x00AB || $code == 0x00BB || # X0213 1-09-08,18
- $code == 0x2329 || $code == 0x232A ||
- $code == 0x301A || $code == 0x301B ||
- $code == 0x301E
- );}
- if ($key eq 'open') { return &is_ucs_open; }
- if ($key eq 'close') { return (!&is_ucs_open); }
-
- # ucs only
- if ($key eq 'hira-yori'){ return ($code == 0x309F);} # yori
- if ($key eq 'kata-koto'){ return ($code == 0x30FF);} # koto
-
- die "illegal keyname ($key)\n";
- }
-}
-
-sub is_ucs_open{
- if ($dvicode == 0x00AB || $dvicode == 0x2329
- || $dvicode == 0x301D
- || $dvicode == 0xFF3B || $dvicode == 0xFF5B
- || $dvicode == 0xFF5F) { return 1;}
- if ($dvicode == 0x00BB || $dvicode == 0x232A
- || $dvicode == 0x301E || $dvicode == 0x301F
- || $dvicode == 0xFF3D || $dvicode == 0xFF5D
- || $dvicode == 0xFF60) { return 0;}
- return ($dvicode%2==0);
-}
-
-sub is_ucs_kigo{
- return 1 if ($dvicode==0x00AB || $dvicode==0x00BB);
- return 1 if ($dvicode==0x00B7);
- return 1 if ($dvicode>=0x2018 && $dvicode<=0x2019);
- return 1 if ($dvicode>=0x201C && $dvicode<=0x201D);
- return 1 if ($dvicode>=0x2329 && $dvicode<=0x232A);
- return 1 if ($dvicode>=0x3001 && $dvicode<=0x301F);
- return 1 if ($dvicode>=0x3097 && $dvicode<=0x309E);
- return 1 if ($dvicode>=0x30FB && $dvicode<=0x30FE);
- return 1 if ($dvicode>=0xFF08 && $dvicode<=0xFF60);
-
- return 0;
-}
-
-sub is_ucs_hira{
- return 1 if ($dvicode>=0x3041 && $dvicode<=0x3093);
- return 1 if ($dvicode>=0x3094 && $dvicode<=0x3096); # Vu, small Ka, small Ke
-# return 1 if ($dvicode==0x309F); # Yori :: It is omitted because it is not included in "Tuned" in AJ1-6
- return 0;
-}
-
-sub is_ucs_kata{
- return 1 if ($dvicode>=0x30A1 && $dvicode<=0x30F6);
- return 1 if ($dvicode>=0x30F7 && $dvicode<=0x30FA); # Va, Vi, Ve, Vo
- return 1 if ($dvicode>=0x31F0 && $dvicode<=0x31FF); # small Ku, small Shi, ... , Small Re, Small Ro
-# return 1 if ($dvicode==0x30FF); # Koto :: It is omitted because it is not included in "Tuned" in AJ1-6
- return 0;
-}
-
-sub is_ucs_hankana{
- return 1 if ($dvicode>=0xFF61 && $dvicode<=0xFF9F);
- return 0;
-}
-
-# Reference:
-# http://www.unicode.org/Public/UNIDATA/Blocks.txt
-# Blocks-12.0.0.txt
-# Date: 2018-07-30, 19:40:00 GMT [KW]
-sub is_ucs_jpn_range{
- return 1 if ($dvicode<=0x04FF); # Cyrillic
-
- return 0 if ($dvicode< 0x1E00);
- return 1 if ($dvicode<=0x243F); # Control Pictures
-
- return 0 if ($dvicode< 0x2460);
- return 1 if ($dvicode<=0x27BF); # Dingbats
-
- return 0 if ($dvicode< 0x2900);
- return 1 if ($dvicode<=0x29FF); # Miscellaneous Mathematical Symbols-B
-
- return 0 if ($dvicode< 0x2B00);
- return 1 if ($dvicode<=0x2BFF); # Miscellaneous Symbols and Arrows
-
- return 0 if ($dvicode< 0x2E80);
- return 1 if ($dvicode<=0x2FDF); # Kangxi Radicals
-
- return 0 if ($dvicode< 0x3000);
- return 1 if ($dvicode<=0x30FF); # Katakana
-
- return 0 if ($dvicode< 0x3190);
- return 1 if ($dvicode<=0x319F); # Kanbun
-
- return 0 if ($dvicode< 0x31F0);
- return 1 if ($dvicode<=0x4DBF); # CJK Unified Ideographs Extension A
-
- return 0 if ($dvicode< 0x4E00);
- return 1 if ($dvicode<=0x9FFF); # CJK Unified Ideographs
-
- return 0 if ($dvicode< 0xE000);
- return 1 if ($dvicode<=0xFB4F); # Alphabetic Presentation Forms
-
- return 0 if ($dvicode< 0xFE10);
- return 1 if ($dvicode<=0xFE1F); # Vertical Forms
-
- return 0 if ($dvicode< 0xFE30);
- return 1 if ($dvicode<=0xFE4F); # CJK Compatibility Forms
-
- return 0 if ($dvicode< 0xFF00);
- return 1 if ($dvicode<=0xFFEF); # Halfwidth and Fullwidth Forms
-
- return 0 if ($dvicode< 0x1B000);
- return 1 if ($dvicode<=0x1B0FF); # Kana Supplement
- return 1 if ($dvicode<=0x1B12F); # Kana Extended-A
- return 1 if ($dvicode<=0x1B16F); # Small Kana Extension
-
- return 0 if ($dvicode< 0x1F100);
- return 1 if ($dvicode<=0x1F1FF); # Enclosed Alphanumeric Supplement
- return 1 if ($dvicode<=0x1F2FF); # Enclosed Ideographic Supplement
-
- return 0 if ($dvicode< 0x1F780);
- return 1 if ($dvicode<=0x1F7FF); # Geometric Shapes Extended
-
- return 0 if ($dvicode< 0x20000);
- return 1 if ($dvicode<=0x2A6DF); # CJK Unified Ideographs Extension B
- return 1 if ($dvicode<=0x2B73F); # CJK Unified Ideographs Extension C
- return 1 if ($dvicode<=0x2B81F); # CJK Unified Ideographs Extension D
- return 1 if ($dvicode<=0x2CEAF); # CJK Unified Ideographs Extension E
- return 1 if ($dvicode<=0x2EBEF); # CJK Unified Ideographs Extension F
-
- return 0 if ($dvicode< 0x2F800);
- return 1 if ($dvicode<=0x2FA1F); # CJK Compatibility Ideographs Supplement
-
- return 0;
-}
-
-1;
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/MakeSPList.pm b/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/MakeSPList.pm
deleted file mode 100644
index 8dc9ce0e3a8..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/MakeSPList.pm
+++ /dev/null
@@ -1,71 +0,0 @@
-package MakeSPList;
-
-use strict;
-use Exporter;
-use File::Basename qw/dirname/;
-our @ISA = qw(Exporter);
-our @EXPORT = qw(make_sp_char_list);
-
-=head1 NAME
-
-MakeSPList.pm
-
-=head1 NOTE
-
-This software is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
-
-=cut
-
-our ($r_exist_head, $r_exist_char);
-
-my $num = '[12][0-9A-F]{4}';
-
-sub make_sp_char_list(@) {
- my (@lang)=@_;
- my (@exist_head_mul, %exist_char_mul)=();
- my ($lang, $first_hex);
-
- my $moduledir=dirname(__FILE__);
-
- foreach $lang (@lang) {
- open(LIST, "$moduledir/sp_list_$lang.txt") || die "$!";
- my (@exist_head_each, %exist_char_each)=();
- while (<LIST>) {
- chomp;
- s/\s+//g;
- next if (/^[#%]/);
- s/[#%].*$//;
- s/,$//;
- my @tmp;
- foreach $_ (split ',', $_) {
- if (/^($num)$/io) {
- @tmp = (hex($1));
- } elsif (/^($num)-($num)$/io) {
- @tmp = (hex($1)..hex($2));
- } else {
- die "input [$_] is not expected\n";
- }
- foreach $_ (@tmp) {
- my $HEX=sprintf("%X",$_);
- $first_hex=int($_/0x1000);
- $exist_head_each[$first_hex]++;
- $exist_char_each{$HEX}=1;
- if ($exist_char_mul{$HEX} eq '' && $exist_head_mul[$first_hex]!~/$lang/) {
- $exist_head_mul[$first_hex].=$lang;
- }
- $exist_char_mul{$HEX}.=$lang;
-# warn "$HEX $first_hex ",sprintf("%X",$first_hex),"\n";
- }
- }
- }
- @{$r_exist_head->{$lang}}=@exist_head_each;
- %{$r_exist_char->{$lang}}=%exist_char_each;
- }
- if (@lang>1) {
- $lang = join ',', @lang;
- @{$r_exist_head->{$lang}}=@exist_head_mul;
- %{$r_exist_char->{$lang}}=%exist_char_mul;
- }
-}
-
-1;
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/mktfm_sp.pl b/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/mktfm_sp.pl
deleted file mode 100755
index 90f464d13ad..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/mktfm_sp.pl
+++ /dev/null
@@ -1,220 +0,0 @@
-#!/usr/bin/perl
-
-=head1 NAME
-
-mktfm_sp.pl
-
-=head1 USAGE
-
-script/mktfm_sp.pl
-
-=head1 NOTE
-
-This software is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
-
-=cut
-
-use FindBin;
-use lib "$FindBin::Bin";
-use MakeSPList;
-
-$multi=3;
-@tex_tfm_h=(0x00, 0x0B, 0x00, 0x01, 0x00, 0x2B, 0x00, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x0E, 0x54, 0x45, 0x58, 0x20, 0x4B, 0x41, 0x4E, 0x4A, 0x49, 0x20, 0x54, 0x45, 0x58, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x4F, 0x54, 0x46, 0x20, 0x4B, 0x41, 0x4E, 0x4A, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x14, 0x7B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xEB, 0x85, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x99, 0x9A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x03, 0x33, 0x33, 0x00, 0x02, 0x00, 0x00);
-@tex_tfm_v=(0x00, 0x09, 0x00, 0x01, 0x00, 0x2B, 0x00, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x0E, 0x54, 0x45, 0x58, 0x20, 0x4B, 0x41, 0x4E, 0x4A, 0x49, 0x20, 0x54, 0x45, 0x58, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x4F, 0x54, 0x46, 0x20, 0x4B, 0x41, 0x4E, 0x4A, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x99, 0x9A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x03, 0x33, 0x33, 0x00, 0x02, 0x00, 0x00);
-@dvips_tfm_h=(0x00, 0x0B, 0x00, 0x01, 0x00, 0x1B, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x14, 0x7B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xEB, 0x85, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00);
-@dvips_tfm_v=(0x00, 0x09, 0x00, 0x01, 0x00, 0x1B, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00);
-
-@tex_tfm_ucs_h=map{ hex($_) } qw/
- 00 0b 00 40 00 6c 00 12 00 00 00 01 00 03 00 02
- 00 02 00 01 00 00 00 00 00 00 00 09 00 00 00 00
- 00 a0 00 00 0e 54 45 58 20 4b 41 4e 4a 49 20 54
- 45 58 54 00 00 00 00 00 00 00 00 00 00 00 00 00
- 00 00 00 00 00 00 00 00 00 00 00 00 09 4f 54 46
- 20 4b 41 4e 4a 49 00 00 00 00 00 00 00 00 00 00
- 80 00 00 00 00 00 00 00 ff 61 00 01 ff 62 00 01
- ff 63 00 01 ff 64 00 01 ff 65 00 01 ff 66 00 01
- ff 67 00 01 ff 68 00 01 ff 69 00 01 ff 6a 00 01
- ff 6b 00 01 ff 6c 00 01 ff 6d 00 01 ff 6e 00 01
- ff 6f 00 01 ff 70 00 01 ff 71 00 01 ff 72 00 01
- ff 73 00 01 ff 74 00 01 ff 75 00 01 ff 76 00 01
- ff 77 00 01 ff 78 00 01 ff 79 00 01 ff 7a 00 01
- ff 7b 00 01 ff 7c 00 01 ff 7d 00 01 ff 7e 00 01
- ff 7f 00 01 ff 80 00 01 ff 81 00 01 ff 82 00 01
- ff 83 00 01 ff 84 00 01 ff 85 00 01 ff 86 00 01
- ff 87 00 01 ff 88 00 01 ff 89 00 01 ff 8a 00 01
- ff 8b 00 01 ff 8c 00 01 ff 8d 00 01 ff 8e 00 01
- ff 8f 00 01 ff 90 00 01 ff 91 00 01 ff 92 00 01
- ff 93 00 01 ff 94 00 01 ff 95 00 01 ff 96 00 01
- ff 97 00 01 ff 98 00 01 ff 99 00 01 ff 9a 00 01
- ff 9b 00 01 ff 9c 00 01 ff 9d 00 01 ff 9e 00 01
- ff 9f 00 01 02 11 00 00 01 11 00 00 00 00 00 00
- 00 08 00 00 00 10 00 00 00 00 00 00 00 0e 14 7b
- 00 00 00 00 00 01 eb 85 00 00 00 00 00 00 00 00
- 00 00 00 00 00 01 99 9a 00 00 00 00 00 10 00 00
- 00 10 00 00 00 04 00 00 00 03 33 33 00 02 00 00
-/;
-@dvips_tfm_ucs_h=map{ hex($_) } qw/
- 00 0b 00 40 00 5c 00 02 00 00 00 01 00 03 00 02
- 00 02 00 01 00 00 00 00 00 00 00 09 00 00 00 00
- 00 a0 00 00 00 00 00 00 ff 61 00 01 ff 62 00 01
- ff 63 00 01 ff 64 00 01 ff 65 00 01 ff 66 00 01
- ff 67 00 01 ff 68 00 01 ff 69 00 01 ff 6a 00 01
- ff 6b 00 01 ff 6c 00 01 ff 6d 00 01 ff 6e 00 01
- ff 6f 00 01 ff 70 00 01 ff 71 00 01 ff 72 00 01
- ff 73 00 01 ff 74 00 01 ff 75 00 01 ff 76 00 01
- ff 77 00 01 ff 78 00 01 ff 79 00 01 ff 7a 00 01
- ff 7b 00 01 ff 7c 00 01 ff 7d 00 01 ff 7e 00 01
- ff 7f 00 01 ff 80 00 01 ff 81 00 01 ff 82 00 01
- ff 83 00 01 ff 84 00 01 ff 85 00 01 ff 86 00 01
- ff 87 00 01 ff 88 00 01 ff 89 00 01 ff 8a 00 01
- ff 8b 00 01 ff 8c 00 01 ff 8d 00 01 ff 8e 00 01
- ff 8f 00 01 ff 90 00 01 ff 91 00 01 ff 92 00 01
- ff 93 00 01 ff 94 00 01 ff 95 00 01 ff 96 00 01
- ff 97 00 01 ff 98 00 01 ff 99 00 01 ff 9a 00 01
- ff 9b 00 01 ff 9c 00 01 ff 9d 00 01 ff 9e 00 01
- ff 9f 00 01 02 11 00 00 01 11 00 00 00 00 00 00
- 00 08 00 00 00 10 00 00 00 00 00 00 00 0e 14 7b
- 00 00 00 00 00 01 eb 85 00 00 00 00 00 00 00 00
- 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 00
- 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-/;
-
-opendir(TFM, "tfm") || mkdir("tfm",0755) || die "cannot mkdir tfm";
-
-my @face = qw/mr gr mb gb mgr ml ge/;
-my @lang = qw/j t c k/;
-my @dir = qw/h v/;
-my %font_id = qw/1b g 1d h 1e i 1f j
- 20 k 21 l 22 m 23 n 24 o 25 p 26 q 27 r
- 28 s 29 t 2a u 2b v 2c w 2d x 2e y 2f z/;
-
-&MakeSPList::make_sp_char_list(@lang);
-
-&make_utf_tfm;
-&make_multi_utf_tfm;
-&make_unified_utf_tfm;
-
-sub make_utf_tfm {
- foreach $lang ($lang[0]){ #language, japanase
- foreach $newjis ('', 'n') {
- foreach $face (@face){ #face
- $face0 = $face.$newjis;
- foreach $dir (@dir){ #direction
- &make_dvipstfm_body($face0, $dir, $lang) if ($dir=='h');
- &make_ucs_tfm_body($face0, $dir, $lang);
- }
- }
- }
- foreach $face (@face){ #face
- foreach $dir (@dir){ #direction
- &maketfm_body($face, $dir, $lang);
- }
- }
- }
-}
-sub make_multi_utf_tfm {
- foreach $lang (@lang[1..$multi]){ #language, t c k
- foreach $face (@face){ #face
- foreach $dir (@dir){ #direction
- &make_dvipstfm_body($face, $dir, $lang);
- &make_ucs_tfm_body($face, $dir, $lang);
- }
- }
- foreach $face (@face[0..1]){ #face
- foreach $dir (@dir){ #direction
- &maketfm_body($face, $dir, $lang);
- }
- }
- }
-}
-sub make_unified_utf_tfm {
- foreach $face (@face[0..1]){ #face
- foreach $dir (@dir){ #direction
- &maketfm_body($face, $dir, @lang);
- }
- }
-}
-
-sub maketfm_body {
- my ($face, $dir, @ln)=@_;
-=comment
- ## mktfm.pl does same procedure.
- $filename="utf$lang$face".sprintf("%x",$first_hex)."-$dir";
- open(TEXTFM,">tfm/$filename.tfm") || die "Can't make \'tfm/$filename.tfm\'!\n";
- binmode(TEXTFM);
- if ($i==0) {
- foreach $binary(@tex_tfm_h) {$_ = pack("C", $binary);print TEXTFM "$_";}
- }elsif ($i==1){
- foreach $binary(@tex_tfm_v) {$_ = pack("C", $binary);print TEXTFM "$_";}
- }
- close(TEXTFM);
-=cut
- my $lang = join ',', @ln;
- my @exist_head=@{$MakeSPList::r_exist_head->{$lang}};
-
- foreach $first_hex (0x1b, 0x1d .. 0x2f) { # U+1Cxxx : not defined yet
- next if (!$exist_head[$first_hex]);
-
- $id = $font_id{sprintf("%02x", $first_hex)};
- $filename= (@ln>1) ? "utf$face$id-$dir" : "utf$lang$face$id-$dir";
- open(TEXTFM,">tfm/$filename.tfm") || die "Can't make \'tfm/$filename.tfm\'!\n";
- binmode(TEXTFM);
- if ($dir eq 'h') {
- foreach $binary(@tex_tfm_h) {$_ = pack("C", $binary);print TEXTFM "$_";}
- }elsif ($dir eq 'v'){
- foreach $binary(@tex_tfm_v) {$_ = pack("C", $binary);print TEXTFM "$_";}
- }
- close(TEXTFM);
- }
-}
-
-sub make_ucs_tfm_body {
- my ($face, $dir, $lang)=@_;
-
- {
- $id = '-';
- $filename="utf$lang$face$id-$dir";
- open(TEXTFM,">tfm/$filename.tfm") || die "Can't make \'tfm/$filename.tfm\'!\n";
- binmode(TEXTFM);
- if ($dir eq 'h') {
- if ($lang eq 'j') {
- @tex_tfm = @tex_tfm_ucs_h;
- } else {
- @tex_tfm = @tex_tfm_h;
- }
- foreach $binary(@tex_tfm ) {$_ = pack("C", $binary);print TEXTFM "$_";}
- }elsif ($dir eq 'v'){
- foreach $binary(@tex_tfm_v) {$_ = pack("C", $binary);print TEXTFM "$_";}
- }
- close(TEXTFM);
- }
-}
-
-sub make_dvipstfm_body {
- my ($face, $dir, $lang)=@_;
-=comment
- ## mktfm.pl does similar procedure.
- $varfilename="otf-u$lang$face-$dir";
- open(DVIPSTFM,">tfm/$varfilename.tfm") || die "Can't make \'tfm/$varfilename.tfm\'!\n";
- if ($i==0) {
- foreach $binary(@dvips_tfm_h) {$_ = pack("C", $binary);print DVIPSTFM "$_";}
- }elsif ($i==1){
- foreach $binary(@dvips_tfm_v) {$_ = pack("C", $binary);print DVIPSTFM "$_";}
- }
- close(DVIPSTFM);
-=cut
- $varfilename= "otf-u$lang$face-$dir";
- open(DVIPSTFM,">tfm/$varfilename.tfm") || die "Can't make \'tfm/$varfilename.tfm\'!\n";
- binmode(DVIPSTFM);
- if ($dir eq 'h') {
- if ($lang eq 'j') {
- @dvips_tfm = @dvips_tfm_ucs_h;
- } else {
- @dvips_tfm = @dvips_tfm_h;
- }
- foreach $binary(@dvips_tfm ) {$_ = pack("C", $binary);print DVIPSTFM "$_";}
- }elsif ($dir eq 'v'){
- foreach $binary(@dvips_tfm_v) {$_ = pack("C", $binary);print DVIPSTFM "$_";}
- }
- close(DVIPSTFM);
-}
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/mkutf32list.pl b/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/mkutf32list.pl
deleted file mode 100755
index 377659d3983..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/mkutf32list.pl
+++ /dev/null
@@ -1,162 +0,0 @@
-#!/usr/bin/perl -n -s
-
-=head1 NAME
-
-mkutf32list.pl
-
-=head1 USAGE
-
-mkutf32list.pl cid2code.txt > sp_jp_text.tex
-mkutf32list.pl -style=utf cid2code.txt > sp_jp_utf.tex
-mkutf32list.pl -style=kchar cid2code.txt > sp_jp_kchar.tex
-mkutf32list.pl -style=list cid2code.txt > sp_list_j.txt
-mkutf32list.pl -style=list-wo-collec cid2code.txt > sp_list_ja.txt
-mkutf32list.pl -allrange cid2code.txt > sp_jp_text.tex
-
-=head1 AUTHOR
-
-Takuji Tanaka
-
-=head1 NOTE
-
-This software is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
-
-=cut
-
-use strict;
-binmode(STDOUT, ":utf8");
-
-our ($style, $allrange);
-our (@count, %reset_ch, $icollec, $cid2code, $line);
-our ($col_utf32, @out);
-our (@cid_max, $collection_n, $collection, $utfmac, $cmap, $source);
-
-BEGIN{
- $line = 0;
- @count = ();
- %reset_ch = ();
- $icollec = 0;
- @out = ();
-}
-
-if (/cid2code/) {
- chomp;
- s/^# /# in /;
- $cid2code=$_;
- $cid2code=~s/^#/%/;
-}
-
-if ($.<8 && /((Adobe-(?:Japan|CNS|GB|Korea).*)-\d)\s/) {
- $collection_n=$1;
- $collection=$2;
- if ($collection =~ /cns/i) {
- @cid_max = qw/-1 14098 17407 17600 18845 18964 19087 19155 19178/;
- $utfmac="UTFT"; $cmap="UniCNS-UTF32";
- $source="Adobe-CNS1-7/cid2code.txt"; }
- elsif ($collection =~ /gb/i) {
- @cid_max = qw/-1 7716 9896 22126 22352 29063 30283/;
- $utfmac="UTFC"; $cmap="UniGB-UTF32";
- $source="Adobe-GB1-5/cid2code.txt"; }
- elsif ($collection =~ /kor/i) {
- @cid_max = qw/-1 9332 18154 18351/;
- $utfmac="UTFK"; $cmap="UniKS-UTF32";
- $source="Adobe-Korea1-2/cid2code.txt"; }
- else {
- @cid_max = qw/-1 8283 8358 8719 9353 15443 20316 23057 23059/;
- $utfmac="UTF"; $cmap="UniJIS-UTF32";
- $source="Adobe-Japan1-7/cid2code.txt"; }
-}
-
-next if (/^#/);
-$line++;
-if ($line == 1) {
- print <<END;
-%
-% This file is generated from the data of $cmap
-$cid2code
-% for $collection_n
-%
-% Reference:
-% https://github.com/adobe-type-tools/cmap-resources/
-% $source
-%
-% A newer CMap may be required for some code points.
-%
-END
-}
-if (/^CID/) {
- my @header = split;
- my $i=0;
- foreach (@header) {
- if (/^Uni(JIS|KS|CNS|GB)-UTF32$/) {
- $col_utf32 = $i;
- last;
- }
- $i++
- }
- next;
-}
-
-my @list = split;
-my $cid = $list[0];
-my @utf32 = split ',', $list[$col_utf32];
-
-foreach (@utf32) {
- s/^0+//;
-
- next if ($_ eq '*');
- next if ($_ =~ '^[1-7][0-9a-f]$|^.$');
- next if ($_ =~ 'v');
- tr/a-z/A-Z/;
- my $ch=hex($_);
- next if ($ch < 0x10000 && !$allrange);
-
- while(!($cid_max[$icollec+1]>=$cid && $cid>$cid_max[$icollec])) {
- $icollec++;
- if ($icollec>@cid_max) {
- die "CID:$cid (Character $_) is out of range!!\n";
- }
- }
- if ($count[$icollec]==0) {
- $reset_ch{$ch}=$icollec;
- }
- $count[$icollec]++;
- push @out, $ch;
-}
-
-
-END {
- my ($i, $out, $ch);
-
- if ($style eq "list-wo-collec") { @out = sort(@out); }
-
- foreach $ch (@out) {
- if ($style eq "list-wo-collec") {}
- elsif (defined($reset_ch{$ch})) {
- $i=0;
- print "\n\n";
- print "%" if ($style =~ /list/);
- print "$collection-$reset_ch{$ch}";
- print "\\\\" if ($style !~ 'list');
- print "\n";
- }
-
- $i++;
- if ($style =~ /utf/) { $out=sprintf "\\${utfmac}{%X}", $ch; }
- elsif ($style =~ /kchar/) { $out=sprintf "\\kchar\"%X", $ch; }
- elsif ($style =~ /list/) { $out=sprintf "%X", $ch; }
- else { $out=chr($ch); }
- my ($newline);
- $newline = $allrange ? 25 : 10;
- if ($i % $newline != 1) {
- print "," if ($style =~ /list/);
- }
- print $out;
- if ($i % $newline == 0) {
- print "%" if ($style =~ /utf/);
- print "\n" ;
- }
- }
-
- print "\n\n% end\n";
-}
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/mkutfvf_sp.pl b/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/mkutfvf_sp.pl
deleted file mode 100755
index 97ea89f2af1..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/mkutfvf_sp.pl
+++ /dev/null
@@ -1,209 +0,0 @@
-#!/usr/bin/perl -s
-
-=head1 NAME
-
-mkutfvf_sp.pl
-
-=head1 USAGE
-
-script/mkutfvf_sp.pl
-script/mkutfvf_sp.pl -debug
-script/mkutfvf_sp.pl -ovp2ovf='wovp2ovf'
-
-=head1 NOTE
-
-This software is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
-
-=cut
-
-use FindBin;
-use lib "$FindBin::Bin";
-use MakeSPList;
-
-if (!defined($ovp2ovf)) { ## check option '-ovp2ovf=????'
- $ovp2ovf = defined($ENV{'OVP2OVF'}) ? $ENV{'OVP2OVF'} : 'ovp2ovf';
-}
-
-$multi=3;
-opendir(OVP, "ovp") || mkdir("ovp",0755) || die "cannot mkdir ovp";
-opendir(VF, "vf") || mkdir("vf",0755) || die "cannot mkdir vf";
-
-my @face = qw/mr gr mb gb mgr ml ge/;
-my @lang = qw/j t c k/; ## priority: j > t > c > k
-my %lang_id; foreach $_ (0..$#lang) { $lang_id{$lang[$_]}=$_; }
-my @dir = qw/h v/;
-my %font_id = qw/1b g 1d h 1e i 1f j
- 20 k 21 l 22 m 23 n 24 o 25 p 26 q 27 r
- 28 s 29 t 2a u 2b v 2c w 2d x 2e y 2f z/;
-
-&MakeSPList::make_sp_char_list(@lang);
-
-&makejvf;
-&makemlvf;
-&makeunivf;
-
-sub makejvf {
- foreach $lang ($lang[0]){ #language, japanase
- foreach $newjis ('', 'n') {
- foreach $face (@face){ #face
- $face0 = $face.$newjis;
- foreach $dir (@dir){ #direction
- &make_ucs_vf_body($face0, $dir, $lang);
- }
- }
- }
- foreach $face (@face){ #face
- foreach $dir (@dir){ #direction
- &makevf_body($face, $dir, $lang);
- }
- }
- }
-}
-sub makemlvf {
- foreach $lang (@lang[1..$multi]){ #language, t c k
- foreach $face (@face){ #face
- foreach $dir (@dir){ #direction
- &make_ucs_vf_body($face, $dir, $lang);
- }
- }
- foreach $face (@face[0..1]){ #face
- foreach $dir (@dir){ #direction
- &makevf_body($face, $dir, $lang);
- }
- }
- }
-}
-sub makeunivf {
- foreach $face (@face[0..1]){ #face
- foreach $dir (@dir){ #direction
- &make_uni_vf_body($face, $dir, @lang);
- }
- }
-}
-
-sub makevf_body {
- my ($face, $dir, $lang)=@_;
-
- my @exist_head=@{$MakeSPList::r_exist_head->{$lang}};
- foreach $first_hex (0x1b, 0x1d .. 0x2f) { # U+1Cxxx : not defined yet
- next if (!$exist_head[$first_hex]);
-
- $HEX = sprintf("%02X", $first_hex);
- $id = $font_id{sprintf("%02x", $first_hex)};
- warn "now processing (face:$face, dir:$dir, lang:$lang, first_hex:$HEX, ID:$id) ...\n";
- $filename="utf$lang$face$id-$dir";
- open(OUT, ">ovp/$filename.ovp")||die "$!";
- &fonthead;
- print OUT "(MAPFONT D 0\n (FONTNAME otf-u$lang$face-$dir)\n";
- &fontfoot;
- &writechar($first_hex, $lang);
- close(OUT);
- unless ($debug){
- system("$ovp2ovf ovp/$filename.ovp vf/$filename.vf vf/$filename.ofm");
- unlink "vf/$filename.ofm";
- }
- }
-}
-
-sub make_uni_vf_body {
- my ($face, $dir, @ln)=@_;
- my $lang = join ',', @ln;
-
- my @exist_head=@{$MakeSPList::r_exist_head->{$lang}};
- foreach $first_hex (0x1b, 0x1d .. 0x2f) { # U+1Cxxx : not defined yet
- next if (!$exist_head[$first_hex]);
-
- $HEX = sprintf("%02X", $first_hex);
- $id = $font_id{sprintf("%02x", $first_hex)};
- warn "now processing (face:$face, dir:$dir, lang:MULTI, first_hex:$HEX, ID:$id) ...\n";
- $filename="utf$face$id-$dir";
- open(OUT, ">ovp/$filename.ovp")||die "$!";
- &fonthead;
- foreach $l (0 .. $#ln){
- next if ($exist_head[$first_hex]!~/$ln[$l]/);
- print OUT "(MAPFONT D $l\n (FONTNAME otf-u$lang[$l]$face-$dir)\n";
- &fontfoot;
- }
- &writechar($first_hex, @ln);
- close(OUT);
- unless ($debug){
- system("$ovp2ovf ovp/$filename.ovp vf/$filename.vf vf/$filename.ofm");
- unlink "vf/$filename.ofm";
- }
- }
-}
-
-sub make_ucs_vf_body {
- my ($face, $dir, $lang)=@_;
-
- {
- $id = '-';
- warn "now processing (face:$face, dir:$dir, lang:$lang, ucs vf, ID:$id) ...\n";
- $filename="utf$lang$face$id-$dir";
- open(OUT, ">ovp/$filename.ovp")||die "$!";
- &fonthead;
- print OUT "(MAPFONT D 0\n (FONTNAME otf-u$lang$face-$dir)\n";
- &fontfoot;
- &writechar_ucs($dir) if ($lang eq 'j');
- close(OUT);
- unless ($debug){
- system("$ovp2ovf ovp/$filename.ovp vf/$filename.vf vf/$filename.ofm");
- unlink "vf/$filename.ofm";
- }
- }
-}
-
-sub fonthead {
-print OUT <<END_OF_DATA;
-(VTITLE JVF for UTF16)
-(OFMLEVEL D 0)
-(DESIGNSIZE R 10.000000)
-(CHECKSUM O 0)
-END_OF_DATA
-}
-
-sub fontfoot {
-print OUT <<END_OF_DATA;
- (FONTCHECKSUM O 0)
- (FONTAT R 1.0)
- (FONTDSIZE R 10.000000)
- )
-END_OF_DATA
-}
-
-sub writechar {
- my ($hex, @ln) = @_;
- my $lang = join ',', @ln;
- my %exist_char=%{$MakeSPList::r_exist_char->{$lang}};
-
- foreach $ku (16 .. 79){
- foreach $ten (16 .. 79){
- $jis=sprintf("%X", $ku*256 + $ten + 0x2020);
- $uni=sprintf("%X", $hex*0x1000 + ($ku-16)*64 + ($ten-16));
- my $echr=$exist_char{$uni};
- if ($echr) {
- #warn("lang: $lang, jis: $jis, uni: $uni\n");
- print OUT "(CHARACTER H $jis (CHARWD R 1.0) (MAP \n";
- if (@ln>1 && $echr !~ $ln[0]) {
- foreach $l (1 .. $#ln) {
- if ($echr =~ /$ln[$l]/){
- print OUT " (SELECTFONT D $lang_id{$ln[$l]})\n";
- last;
- }
- }
- }
- print OUT " (SETCHAR H $uni)))\n";
- }
- }
- }
-}
-
-sub writechar_ucs {
- my ($dir) = @_;
- my $wd = $dir eq 'h' ? '0.5' : '1.0';
- foreach $uni (0xFF61 .. 0xFF9F){
- my $uniX = sprintf("%X", $uni);
- print OUT "(CHARACTER H $uniX (CHARWD R $wd) (MAP \n";
- print OUT " (SETCHAR H $uniX)))\n";
- }
-}
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/sp_list_c.txt b/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/sp_list_c.txt
deleted file mode 100644
index a4699d6ea82..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/sp_list_c.txt
+++ /dev/null
@@ -1,17 +0,0 @@
-%
-% This file is generated from the data of UniGB-UTF32
-% in cid2code.txt (Version 12/05/2017)
-% for Adobe-GB1-5
-%
-% Reference:
-% https://github.com/adobe-type-tools/cmap-resources/
-% Adobe-GB1-5/cid2code.txt
-%
-% A newer CMap may be required for some code points.
-%
-
-
-%Adobe-GB1-2
-20087,20089,200CC,215D7,2298F,20509,2099D,241FE
-
-% end
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/sp_list_j.txt b/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/sp_list_j.txt
deleted file mode 100644
index 2092c5767a7..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/sp_list_j.txt
+++ /dev/null
@@ -1,75 +0,0 @@
-%
-% This file is generated from the data of UniJIS-UTF32
-% in cid2code.txt (Version 07/30/2019)
-% for Adobe-Japan1-7
-%
-% Reference:
-% https://github.com/adobe-type-tools/cmap-resources/
-% Adobe-Japan1-7/cid2code.txt
-%
-% A newer CMap may be required for some code points.
-%
-
-
-%Adobe-Japan1-0
-28CDD,2F8ED,25874,28EF6,2F8DC,2F884,2F877,2F80F,2F8D3,2F818
-21A1A,243D0,2F920,1F100
-
-%Adobe-Japan1-4
-1F110,1F111,1F112,1F113,1F114,1F115,1F116,1F117,1F118,1F119
-1F11A,1F11B,1F11C,1F11D,1F11E,1F11F,1F120,1F121,1F122,1F123
-1F124,1F125,1F126,1F127,1F128,1F129,1F150,1F151,1F152,1F153
-1F154,1F155,1F156,1F157,1F158,1F159,1F15A,1F15B,1F15C,1F15D
-1F15E,1F15F,1F160,1F161,1F162,1F163,1F164,1F165,1F166,1F167
-1F168,1F169,1F130,1F131,1F132,1F133,1F134,1F135,1F136,1F137
-1F138,1F139,1F13A,1F13B,1F13C,1F13D,1F13E,1F13F,1F140,1F141
-1F142,1F143,1F144,1F145,1F146,1F147,1F148,1F149,1F202,1F237
-1F170,1F171,1F172,1F173,1F174,1F175,1F176,1F177,1F178,1F179
-1F17A,1F17B,1F17C,1F17D,1F17E,1F17F,1F180,1F181,1F182,1F183
-1F184,1F185,1F186,1F187,1F188,1F189,1F79C,2F945,2090E,26951
-2B7D8,2F8FC,2F995,2F8EA,2F822,26222,20BB7,29D4B,2F833,2B78E
-2F8AC,20A64,2F903,2B746,2B777,2F90B,20B9F,2F828,2F921,2F83F
-2F873,2D544,2000B,2F852,2967F,2F947,201A2,2E569,2B751,2F8B2
-27FB7,23CFE,2F91A,25AD7,2F89A,2F90F,2123D,2F81A,24D14,2F862
-2B789,2F9D0,2F9DF,2567F,266B0,20628,2008A,20984,2F82C,2F86D
-2F8B6,26999,233CC,2F8DB,2A9E6,2B7BD,2F96C,2E278,2053F,2626A
-200B0,2E6EA,28987,28E17,2B81A,242EE,2F8E1,23CBE,20611,2F9F4
-2F804,2363A,233FE,22609
-
-%Adobe-Japan1-5
-2131B,2146E,218BD,216B4,21E34,231C4,235C4,2373F,23763,247F1
-2548E,2550E,25771,259C4,25DA1,26AFF,26E40,270F4,27684,28277
-283CD,2A190,20089,200A2,200A4,20213,2032B,20381,20371,203F9
-2044A,20509,205D6,2074F,20807,2083A,208B9,2097C,2099D,20AD3
-20B1D,20D45,20DE1,20E95,20E6D,20E64,20F5F,21201,21255,2127B
-21274,212E4,212D7,212FD,21336,21344,213C4,2146D,215D7,26C29
-21647,21706,21742,219C3,21C56,21D2D,21D45,21D78,21D62,21DA1
-21D9C,21D92,21DB7,21DE0,21E33,21F1E,21F76,21FFA,2217B,2231E
-223AD,226F3,2285B,228AB,2298F,22AB8,22B4F,22B50,22B46,22C1D
-22BA6,22C24,22DE1,231C3,231F5,231B6,23372,233D3,233D2,233D0
-233E4,233D5,233DA,233DF,2344A,23451,2344B,23465,234E4,2355A
-23594,23639,23647,23638,2371C,2370C,23764,237FF,237E7,23824
-2383D,23A98,23C7F,23D00,23D40,23DFA,23DF9,23DD3,23F7E,24096
-24103,241C6,241FE,243BC,24629,246A5,24896,24A4D,24B56,24B6F
-24C16,24E0E,24E37,24E6A,24E8B,2504A,25055,25122,251A9,251E5
-251CD,2521E,2524C,2542E,254D9,255A7,257A9,257B4,259D4,25AE4
-25AE3,25AF1,25BB2,25C4B,25C64,25E2E,25E56,25E65,25E62,25ED8
-25EC2,25EE8,25F23,25F5C,25FE0,25FD4,2600C,25FFB,26017,26060
-260ED,26270,26286,23D0E,26402,2667E,2671D,268DD,268EA,2696F
-269DD,26A1E,26A58,26A8C,26AB7,26C73,26CDD,26E65,26F94,26FF8
-26FF6,26FF7,2710D,27139,273DB,273DA,273FE,27410,27449,27615
-27614,27631,27693,2770E,27723,27752,27985,27A84,27BB3,27BBE
-27BC7,27CB8,27DA0,27E10,2808A,280BB,28282,282F3,2840C,28455
-2856B,285C8,285C9,286D7,286FA,28949,28946,2896B,28988,289BA
-289BB,28A1E,28A29,28A71,28A43,28A99,28ACD,28AE4,28ADD,28BC1
-28BEF,28D10,28D71,28DFB,28E1F,28E36,28E89,28EEB,28F32,28FF8
-292A0,292B1,29490,295CF,296F0,29719,29750,298C6,29A72,29DDB
-29E15,29E8A,29E49,29EC4,29EE9,29EDB,29FCE,29FD7,2A02F,2A01A
-2A0F9,2A082,22218,2A38C,2A437,2A5F1,2A602,2A6B2,200F5,24E04
-24FF2,27D73,2F815,2F846,2F899,2F8A6,2F8E5,2F9DE,2A2B2,20158
-205B1,206EC,2B753,20D58,2B75A,2B75C,259CC,2B776,22E42,2B77C
-207C8,22FEB,279B4,2B782,2B78B,237F1,2B794,2404B,2B7AC,2B7AF
-2B7C9,2B7CF,2B7D2,26C9E,27C3C,2B7F0,2B765,2B80D,2B817,2634C
-29E3D,2A61A
-
-% end
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/sp_list_k.txt b/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/sp_list_k.txt
deleted file mode 100644
index 6af3e290ff3..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/sp_list_k.txt
+++ /dev/null
@@ -1,14 +0,0 @@
-%
-% This file is generated from the data of UniKS-UTF32
-% in cid2code.txt (Version 01/31/2012)
-% for Adobe-Korea1-2
-%
-% Reference:
-% https://github.com/adobe-type-tools/cmap-resources/
-% Adobe-Korea1-2/cid2code.txt
-%
-% A newer CMap may be required for some code points.
-%
-
-
-% end
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/sp_list_t.txt b/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/sp_list_t.txt
deleted file mode 100644
index 084eac51871..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/sp_list_t.txt
+++ /dev/null
@@ -1,204 +0,0 @@
-%
-% This file is generated from the data of UniCNS-UTF32
-% in cid2code.txt (Version 10/24/2017)
-% for Adobe-CNS1-7
-%
-% Reference:
-% https://github.com/adobe-type-tools/cmap-resources/
-% Adobe-CNS1-7/cid2code.txt
-%
-% A newer CMap may be required for some code points.
-%
-
-
-%Adobe-CNS1-0
-200CC,2008A,27607
-
-%Adobe-CNS1-1
-23ED7,26ED3,257E0,28BE9,258E1,294D9,259AC,2648D,25C01,2530E
-25CFE,25BB4,26C7F,25D20,25CC1,24882,24578,26E44,26ED6,24057
-26029,217F9,2836D,26121,2615A,262D0,26351,21661,20068,23766
-2833A,26489,2A087,26CC3,22714,26626,23DE3,266E8,28A48,226F6
-26498,2148A,2185E,24A65,24A95,26A52,23D7E,214FD,2F98F,249A7
-23530,21773,23DF8,2F994,20E16,217B4,2317D,2355A,23E8B,26DA3
-26B05,26B97,235CE,26DA5,26ED4,26E42,25BE4,26B96,26E77,26E43
-25C91,25CC0,28625,2863B,27088,21582,270CD,270F0,2F9B2,218A2
-2739A,2A0F8,22C27,275E0,23DB9,275E4,2770F,28A25,27924,27ABD
-27A59,27B3A,27B38,25430,25565,24A7A,216DF,27D54,27D8F,2F9D4
-27D53,27D98,27DBD,21910,2F9D7,28002,21014,2498A,281BC,2710C
-28365,28412,2A29F,20A50,289DE,2853D,23DBB,23262,22325,26ED7
-2853C,27ABE,2856C,2860B,28713,286E6,28933,21E89,255B9,28AC6
-23C9B,28B0C,255DB,20D31,28AE1,28BEB,28AE2,28AE5,28BEC,28C39
-28BFF,286D8,2127C,23E2E,26ED5,28AE0,26CB8,20274,26410,290AF
-290E5,24AD1,21915,2330A,24AE9,291D5,291EB,230B7,230BC,2546C
-29433,2941D,2797A,27175,20630,2415C,25706,26D27,216D3,24A29
-29857,29905,25725,290B1,29BD5,29B05,28600,2307D,29D3E,21863
-29E68,29FB7,2A192,2A1AB,2A0E1,2A123,2A1DF,2A134,2A193,2A220
-2193B,2A233,2A0B9,2A2B4,24364,2A3ED,28C2B,26DA2,2FA1B,2908B
-24975,249BB,249F8,24348,24A51,28BDA,218FA,2897E,28E36,28A44
-2896C,244B9,24473,243F8,217EF,218BE,23599,21885,2542F,217F8
-216FB,21839,21774,218D1,25F4B,216C0,24A25,213FE,212A8,213C6
-214B6,236A6,24994,27165,23E31,2555C,23EFB,27052,236EE,2999D
-26F26,21922,2373F,240E1,2408B,2410F,26C21,266B1,20FDF,20BA8
-20E0D,28B13,24436,20465,25651,201AB,203CB,2030A,20414,202C0
-28EB3,20275,2020C,24A0E,23E8A,23595,23E39,23EBF,21884,23E89
-205E0,204A3,20492,20491,28A9C,2070E,20873,2438C,20C20,249AC
-210E4,20E1D,24ABC,2408D,240C9,20345,20BC6,28A46,216FA,2176F
-21710,25946,219F3,21861,24295,25E83,28BD7,20413,21303,289FB
-21996,2197C,23AEE,21903,21904,218A0,216FE,28A47,21DBA,23472
-289A8,21927,217AB,2173B,275FD,22860,2262B,225AF,225BE,29088
-26F73,2003E,20046,2261B,22C9B,22D07,246D4,2914D,24665,22B6A
-22B22,23450,298EA,22E78,249E3,22D67,22CA1,2308E,232AD,24989
-232AB,232E0,218D9,2943F,23289,231B3,25584,28B22,2558F,216FC
-2555B,25425,23103,2182A,23234,2320F,23182,242C9,26D24,27870
-21DEB,232D2,232E1,25872,2383A,237BC,237A2,233FE,2462A,237D5
-24487,21912,23FC0,23C9A,28BEA,28ACB,2801E,289DC,23F7F,2403C
-2431A,24276,2478F,24725,24AA4,205EB,23EF8,2365F,24A4A,24917
-25FE1,24ADF,28C23,23F35,26DEA,24CD9,24D06,2A5C6,28ACC,249AB
-2498E,24A4E,249C5,248F3,28AE3,21864,25221,251E7,23232,24697
-23781,248F0,24ABA,24AC7,24A96,261AE,25581,27741,256E3,23EFA
-216E6,20D4C,2498C,20299,23DBA,2176E,201D4,20C0D,226F5,25AAF
-25A9C,2025B,25BC6,25BB3,25EBC,25EA6,249F9,217B0,26261,2615C
-27B48,25E82,26B75,20916,2004E,235CF,26412,263F8,2082C,25AE9
-25D43,25E0E,2343F,249F7,265AD,265A0,27127,26CD1,267B4,26A42
-26A51,26DA7,2721B,21840,218A1,218D8,2F9BC,23D8F,27422,25683
-27785,27784,28BF5,28BD9,28B9C,289F9,29448,24284,21845,27DDC
-24C09,22321,217DA,2492F,28A4B,28AFC,28C1D,28C3B,28D34,248FF
-24A42,243EA,23225,28EE7,28E66,28E65,249ED,24A78,23FEE,290B0
-29093,257DF,28989,28C26,28B2F,263BE,2421B,20F26,28BC5,24AB2
-294DA,295D7,28B50,24A67,28B64,28A45,27B06,28B65,258C8,298F1
-29948,21302,249B8,214E8,2271F,23DB8,22781,2296B,29E2D,2A1F5
-2A0FE,24104,2A1B4,2A0ED,2A0F3,2992F,26E12,26FDF,26B82,26DA4
-26E84,26DF0,26E00,237D7,26064,2359C,23640,249DE,202BF,2555D
-21757,231C9,24941,241B5,241AC,26C40,24F97,217B5,28A49,24488
-289FC,218D6,20F1D,26CC0,21413,242FA,22C26,243C1,23DB7,26741
-2615B,260A4,249B9,2498B,289FA,28B63,2189F,24AB3,24A3E,24A94
-217D9,24A66,203A7,21424,249E5,24916,24976,204FE,28ACE,28A16
-28BE7,255D5,28A82,24943,20CFF,2061A,20BEB,20CB8,217FA,216C2
-24A50,21852,28AC0,249AD,218BF,21883,27484,23D5B,28A81,21862
-20AB4,2139C,28218,290E4,27E4F,23FED,23E2D,203F5,28C1C,26BC0
-21452,24362,24A71,22FE3,212B0,223BD,21398,234E5,27BF4,236DF
-28A83,237D6,233FA,24C9F,236AD,26CB7,26D26,26D51,26C82,26FDE
-2173A,26C80,27053,217DB,217B3,21905,241FC,2173C,242A5,24293
-23EF9,27736,2445B,242CA,24259,289E1,26D28,244CE,27E4D,243BD
-24256,21304,243E9,2F825,23300,27AF4,256F6,27B18,27A79,249BA
-20346,27657,25FE2,275FE,2209A,28A9A,2403B,24A45,205CA,20611
-21EA8,23CFF,285E8,299C9,221C3,28B4E,20C78,20779,23F4A,24AA7
-26B52,27632,2493F,233CC,28948,21D90,27C12,24F9A,26BF7,2191C
-249F6,23FEF,2271B,257E1,2F8CD,2F806,24521,24934,26CBD,26411
-290C0,20A11,26469,20021,23519,2258D,2217A,249D0,20EF8,22926
-28473,217B1,24A2A,21820,29CAD,298A4,2160A,2372F,280E8,213C5
-291A8,270AF,289AB,2417A,2A2DF,28318,26E07,2816F,269B5,213ED
-2322F,28C30,28949,24988,24AA5,23F81,21FA1,295E9,2789D,28024
-27A3E,23CB7,26258,29D98,23D40,20E9D,282E2,20C41,20C96,20E76
-22C62,20EA2,21075,22B43,22EB3,20DA7,2688A,20EF9,27FF9,247E0
-29D7C,275A3,26048,24618,29EAC,29FDE,272B2,2048E,20EB6,27F2E
-2A434,243F2,29E06,294D0,26335,20D28,20D71,21F0F,21DD1,2176D
-2B473,28E97,25C21,20CD4,201F2,2A64A,2837D,2A2B2,24ABB,26E05
-2AE67,2251B,2DF3C,28E39,20F3B,25F1A,27486,267CC,24011,2F922
-20547,205DF,23FC5,24942,289E4,219DB,23CC8,24933,289AA,202A0
-26BB3,21305,224ED,26D29,27A84,23600,24AB1,22513,2037E,20380
-20347,2041F,249A4,20487,233B4,20BFF,220FC,202E5,22530,2058E
-23233,21983,205B3,23C99,24AA6,2372D,26B13,2F829,28ADE,23F80
-20954,23FEC,20BE2,21726,216E8,286AB,2F832,21596,21613,28A9B
-25772,20B8F,23FEB,22DA3,20C77,26B53,20D74,2170D,20EDD,20D4D
-289BC,22698,218D7,2403A,24435,210B4,2328A,28B66,2124F,241A5
-26C7E,21416,21454,24363,24BF5,2123C,2A150,24278,2163E,21692
-20D4E,26C81,26D2A,217DC,217FB,217B2,26DA6,21828,216D5,26E45
-249A9,26FA1,22554,21911,216B8,27A0E,20204,21A34,259CC,205A5
-21B44,21CA5,26B28,21DF9,21E37,21EA4,24901,22049,22173,244BC
-20CD3,21771,28482,201C1,2F894,2133A,26888,223D0,22471,26E6E
-28A36,25250,21F6A,270F8,22668,2029E,28A29,227B4,24982,2498F
-27A53,2F8A6,26ED2,20656,23FB7,2285F,28B9D,2995D,22980,228C1
-20118,21770,22E0D,249DF,2138E,217FC,22E36,2571D,24A28,24A23
-24940,21829,23400,231F7,231F8,231A4,231A5,20E75,251E6,23231
-285F4,231C8,25313,228F7,2439C,24A21,237C2,2F8DB,241CD,290ED
-233E6,26DA0,2346F,28ADF,235CD,2363C,28A4A,203C9,23659,2212A
-23703,2919C,20923,227CD,23ADB,21958,23B5A,23EFC,2248B,248F1
-26B51,23DBC,23DBD,241A4,2490C,24900,23CC9,20D32,231F9,22491
-26D25,26DA1,26DEB,2497F,24085,26E72,26F74,28B21,2F908,23E2F
-23F82,2304B,23E30,21497,2403D,29170,24144,24091,24155,24039
-23FF0,23FB4,2413F,24156,24157,24140,261DD,24277,24365,242C1
-2445A,24A27,24A22,28BE8,25605,24974,23044,24823,2882B,28804
-20C3A,26A2E,241E2,216E7,24A24,249B7,2498D,249FB,24A26,2F92F
-228AD,28EB2,24A8C,2415F,24A79,28B8F,28C03,2189E,21988,28ED9
-21A4B,28EAC,24F82,24D13,263F5,26911,2690E,26F9F,2509D,2517D
-21E1C,25220,232AC,28964,28968,216C1,255E0,2760C,2261C,25857
-27B39,27126,2910D,20C42,20D15,2512B,22CC6,20341,24DB8,294E5
-280BE,22C38,2815D,269F2,24DEA,20D7C,20FB4,20CD5,2BAB3,20E96
-20F64,22CA9,28256,244D3,20D46,29A4D,280E9,24EA7,22CC2,295F4
-252C7,297D4,22D44,2BCD7,22BCA,2B977,266DA,26716,279A0,25052
-20C43,28B4C,20731,201A9,22D8D,245C8,204FC,26097,20F4C,22A66
-2109D,20D9C,22775,2A601,20E09,22ACF,2C5F8,210C8,239C2,2829B
-25E49,220C7,22CB2,29720,24E3B,2C9A0,27574,22E8B,22208,2A65B
-28CCD,20E7A,20C34,27639,22BCE,22C51,210C7,2A632,28CD2,28D99
-28CCA,2775E,2F828,2107B,210D3,212FE,247EF,24EA5,24F5C,28189
-2B42C
-
-%Adobe-CNS1-3
-2010C,200D1,200CD,200CB,21FE8,200CA,2010E,21BC1,2F878,20086
-248E9,2626A,2634B,26612,26951,278B2,28E0F,29810,20087,2A3A9
-21145,27735,209E7,29DF6,2700E,2A133,2846C,21DCA,205D0,22AE6
-27D84,210F4,20C0B,278C8,260A5,22D4C,21077,2106F,221A1,20D96
-22CC9,20F31,2681C,210CF,22803,22939,251E3,20E8C,20F8D,20EAA
-20F30,20D47,2114F,20E4C,20EAB,20BA9,20D48,210C0,2113D,22696
-20FAD,233F4,20D7E,20D7F,22C55,20E98,20F2E,26B50,29EC3,22DEE
-26572,280BD,20EFA,20E0F,20E77,20EFB,24DEB,20CD6,227B5,210C9
-20E10,20E78,21078,21148,28207,21455,20E79,24E50,22DA4,2101D
-2101E,210F5,210F6,20E11,27694,282CD,20FB5,20E7B,2517E,20FB6
-21180,252D8,2A2BD,249DA,2183A,24177,2827C,2573D,25B74,2313D
-289C0,23F41,20325,20ED8,25C65,24FB8,20B0D,26B0A,22EEF,23CB5
-26E99,23F8F,24CC9,2A014,286BC,28501,2267A,269A8,2424B,2215B
-2037F,2A45B,249EC,24962,27109,24A4F,24A5D,217DF,23AFA,20214
-208D5,20619,21F9E,2A2B6,2915B,28A59,29420,248F2,25535,20CCF
-27967,21BC2,20094,202B7,203A0,204D7,205D5,20615,20676,216BA
-20AC2,20ACD,20BBF,2F83B,20BCB,20BFB,20C3B,20C53,20C65,20C7C
-20C8D,20CB5,20CDD,20CED,20D6F,20DB2,20DC8,20E04,20E0E,20ED7
-20F90,20F2D,20E73,20FBC,2105C,2104F,21076,21088,21096,210BF
-2112F,2113B,212E3,21375,21336,21577,21619,217C3,217C7,2182D
-2196A,21A2D,21A45,21C2A,21C70,21CAC,21EC8,21ED5,21F15,22045
-2227C,223D7,223FA,2272A,22871,2294F,22967,22993,22AD5,22AE8
-22B0E,22B3F,22C4C,22C88,22CB7,25BE8,22D08,22D12,22DB7,22D95
-22E42,22F74,22FCC,23033,23066,2331F,233DE,23567,235F3,2361A
-23716,23AA7,23E11,23EB9,24119,242EE,2430D,24334,24396,24404
-244D6,24674,2472F,24812,248FB,24A15,24AC0,24F86,2502C,25299
-25419,25446,2546E,2553F,2555E,25562,25566,257C7,2585D,25903
-25AAE,25B89,25C06,26102,261B2,26402,2644A,26484,26488,26512
-265BF,266B5,266FC,26799,2686E,2685E,268C7,26926,26939,269FA
-26A2D,26A34,26B5B,26B9D,26CA4,26DAE,2704B,271CD,27280,27285
-2728B,272E6,27450,277CC,27858,279DD,279FD,27A0A,27B0B,27D66
-28009,28023,28048,28083,28090,280F4,2812E,2814F,281AF,2821A
-28306,2832F,2838A,28468,286AA,28956,289B8,289E7,289E8,28B46
-28BD4,28C09,28FC5,290EC,29110,2913C,2915E,24ACA,294E7,295B0
-295B8,29732,298D1,29949,2996A,299C3,29A28,29B0E,29D5A,29D9B
-29EF8,29F23,2A293,2A2FF,2A5CB,20C9C,224B0,24A93,28B2C,217F5
-28B6C,28B99,266AF,27655,25635,25956,25E81,20E6D,23E88,24C9E
-217F6,2187B,25C4A,25311,25ED8,20FEA,20D49,236BA,25148,210C1
-24706,26893,226F4,27D2F,241A3,27D73,26ED0,272B6,211D9,23CFC
-2A6A9,20EAC,21CA2,24FC2,20FEB,22DA0,20FEC,20E0A,20FED,21187
-24B6E,25A95,20979,22465,23CFE,29F30,24FA9,2959E,23DB6,267B3
-23720,23EF7,23E2C,230DA,212A9,24963,270AE,2176C,27164,26D22
-24AE2,2493E,26D23,203FC,23CFD,24919,24A77,28A5A,2F840,2183B
-26159,233F5,28BC2,21D46,26ED1,28B2D,23CC7,25ED7,27656,25531
-21944,29903,26DDC,270AD,261AD,28A0F,23677,200EE,26846,24F0E
-2634C,2626B,21877,2408C,2307E,21E3D,203B5,205C3,21376,24A12
-28B2B,26083
-
-%Adobe-CNS1-4
-29C73,2414E,251CD,25D30,28A32,23281,2A107,21980,2870F,2A2BA
-29947,28AEA,2207E,289E3,21DB6,22712,233F9,23C63,24505,24A13
-25CA4,25695,28DB9,2143F,2497B,2710D,26D74,26B15,26FBE
-
-%Adobe-CNS1-5
-27267,27CB1,27CC5,242BF,23617,27352,26E8B,270D2,2A351,27C6C
-26B23,25A54,21A63,23E06,23F61,28BB9,27BEF,21D5E,29EB0,29945
-20A6F,23256,22796,23B1A,23551,240EC,21E23,201A4,26C41,20239
-298FA,20B9F,221C1,2896D,29079,2A1B5,26C46,286B2,273FF,2549A
-24B0F
-
-%Adobe-CNS1-6
-21D53,2369E,26021,258DE,24161,2890D,231EA,20A8A,2325E,25DB9
-2368E,27B65,26E88,25D99,224BC,224C1,224C9,224CC,235BB,2ADFF
-
-
-% end
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/umkpkana.pl b/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/umkpkana.pl
deleted file mode 100755
index 26208884540..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/umkpkana.pl
+++ /dev/null
@@ -1,602 +0,0 @@
-#!/usr/bin/perl -s
-
-=head1 NOTE
-
-This software is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
-
-=cut
-
-use Encode;
-use FindBin;
-use lib "$FindBin::Bin";
-use CheckDVICode;
-
-if ($sp==1) { # supplemental plane
- use MakeSPList;
- &make_sp_char_list('j');
- %exist_char=%{$MakeSPList::r_exist_char->{'j'}};
-}
-
-$_=<DATA>;
-while(<DATA>) {
- chomp($_);
- my (@data)=split(' ', $_);
- my ($char);
- last if (@data<6);
- $char = shift @data;
- push @character, $char;
- $cid {$char}=shift @data;
- $min_w3 {$char}=shift @data;
- $min_w6 {$char}=shift @data;
- $goth_w3{$char}=shift @data;
- $goth_w6{$char}=shift @data;
- $maru_w4{$char}=shift @data;
-}
-
-@charwidth=({%min_w3}, {%min_w6}, {%goth_w3}, {%goth_w6}, {%maru_w4});
-@font_name=("phiraminw3-h", "phiraminw6-h", "phirakakuw3-h", "phirakakuw6-h", "phiramaruw4-h");
-@kanji_font_name=("hminr-h", "hminb-h", "hgothr-h", "hgothb-h", "hmgothr-h");
-@kana_font_name=("hiramin-w3-h", "hiramin-w6-h", "hirakaku-w3-h", "hirakaku-w6-h", "hiramaru-w4-h");
-$font_at=1.0;
-$half_width= ($font_at / 2);
-$quater_width= ($font_at / 4);
-opendir(OVP, "ovp") || mkdir("ovp",0755) || die "cannot mkdir ovp";
-opendir(VF, "vf") || mkdir("vf",0755) || die "cannot mkdir vf";
-opendir(JPL, "pl") || mkdir("pl",0755) || die "cannot mkdir pl";
-opendir(JFM, "tfm") || mkdir("tfm",0755) || die "cannot mkdir tfm";
-closedir(OVP);
-closedir(VF);
-closedir(JPL);
-closedir(JFM);
-
-$n_fixed=7; ## type 0..6
-$ucs=1; # 1: upphiraXXX or 0: phiraXXX
-if ($ucs) {
- $CheckDVICode::is_ucs=1;
- foreach(@font_name, @kanji_font_name) {
- $_="up$_";
- }
- if ($hk) { ## command line option -hk: Enable halfwidth katakana
- $hk_mode=1;
- $n_fixed=8; ## type 0..7
- }
-}
-
-#main
-for ($i=0; $i<=4; $i++){
- open (JPL, ">pl/$font_name[$i].pl");
- &tfm_head_h;
- &chars_in_type_jis;
- &chars_in_type_prop;
- &print_type_jis;
- &print_type_prop;
- &glue_kern;
- close(JPL);
-}
-for ($i=0; $i<=4; $i++){
- @cpm_h=(0x29E, 0x29F, 0x2A0, 0x2A1);
- open (OVP, ">ovp/$font_name[$i].ovp");
- &fonthead;
- &write_char;
- close(OVP);
-}
-#
-#sub rtn
-#
-sub tfm_head_h {
- print JPL "(FAMILY PROP KANA)\n";
- print JPL "(FACE F MRR)\n";
- print JPL "(CODINGSCHEME TEX KANJI TEXT)\n";
- print JPL "(DESIGNSIZE R 10.0)\n";
- print JPL "(CHECKSUM O 0)\n";
- print JPL "(SEVENBITSAFEFLAG TRUE)\n";
- print JPL "(FONTDIMEN\n";
- print JPL " (SLANT R 0.0)\n";
- print JPL " (SPACE R 0.0)\n";
- printf JPL " (STRETCH R %f)\n", $font_at/10;
- print JPL " (SHRINK R 0.0)\n";
- printf JPL " (XHEIGHT R %f)\n", $font_at;
- printf JPL " (QUAD R %f)\n", $font_at;
- printf JPL " (EXTRASPACE R %f)\n", $font_at/4;
- printf JPL " (EXTRASTRETCH R %f)\n", $font_at/5;
- printf JPL " (EXTRASHRINK R %f)\n", $font_at/8;
- print JPL " )\n";
-}
-sub char_foot_h {
- printf JPL " (CHARHT R %f)\n", $font_at*0.88;
- printf JPL " (CHARDP R %f)\n", $font_at*0.12;
- print JPL " )\n";
-}
-sub glue_kern{
- print JPL "(GLUEKERN\n";
- print JPL " (LABEL O 5)\n";
- print JPL " (KRN O 5 R 0.0)\n";
- print JPL " (LABEL O 0)\n";
- for ($char=0; $char<=$#uniq_char_width_array; $char++){
- printf JPL " (LABEL H %X)\n",($char+$n_fixed);
- }
- printf JPL " (GLUE O 1 R %f R 0.0 R %f)\n", $half_width, $half_width;
- print JPL " (LABEL O 1)\n";
- printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
- print JPL " (STOP)\n";
- print JPL " (LABEL O 2)\n";
- printf JPL " (GLUE O 5 R %f R 0.0 R %f)\n", $half_width, $half_width;
- printf JPL " (GLUE O 6 R %f R 0.0 R %f)\n", $half_width, $half_width;
- printf JPL " (GLUE O 7 R %f R 0.0 R %f)\n", $half_width, $half_width if $hk_mode;
- print JPL " (STOP)\n";
- if ($hk_mode) {
- print JPL " (LABEL O 7)\n";
- printf JPL " (GLUE O 1 R %f R 0.0 R %f)\n", $half_width, $half_width;
- printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
- print JPL " (STOP)\n";
- }
- print JPL " (LABEL O 6)\n";
- printf JPL " (GLUE O 0 R %f R 0.0 R %f)\n", $half_width, $half_width;
- printf JPL " (GLUE O 1 R %f R 0.0 R %f)\n", $half_width, $half_width;
- printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
- for ($char=0; $char<=$#uniq_char_width_array; $char++){
- printf JPL " (GLUE H %X R %f R 0.0 R %f)\n",($char+$n_fixed), $half_width, $half_width;
- }
- print JPL " (STOP)\n";
- print JPL " (LABEL O 4)\n";
- printf JPL " (GLUE O 0 R %f R 0.0 R 0.0)\n", $half_width;
- printf JPL " (GLUE O 1 R %f R 0.0 R 0.0)\n", $half_width;
- printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $half_width+$quater_width, $quater_width;
- printf JPL " (GLUE O 5 R %f R 0.0 R 0.0)\n", $half_width;
- printf JPL " (GLUE O 6 R %f R 0.0 R 0.0)\n", $half_width;
- printf JPL " (GLUE O 7 R %f R 0.0 R %f)\n", $half_width, $half_width if $hk_mode;
- for ($char=0; $char<=$#uniq_char_width_array; $char++){
- printf JPL " (GLUE H %X R %f R 0.0 R 0.0)\n",($char+$n_fixed), $half_width;
- }
- print JPL " (STOP)\n";
- print JPL " (LABEL O 3)\n";
- printf JPL " (GLUE O 0 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
- printf JPL " (GLUE O 1 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
- printf JPL " (GLUE O 2 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
- printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $half_width, $quater_width;
- printf JPL " (GLUE O 4 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
- printf JPL " (GLUE O 5 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
- printf JPL " (GLUE O 6 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
- printf JPL " (GLUE O 7 R %f R 0.0 R %f)\n", $half_width, $half_width if $hk_mode;
- for ($char=0; $char<=$#uniq_char_width_array; $char++){
- printf JPL " (GLUE H %X R %f R 0.0 R %f)\n",($char+$n_fixed), $quater_width, $quater_width;
- }
- print JPL " (STOP)\n";
- print JPL " )\n";
-}
-sub chars_in_type_jis{
- my ($type1add, $type2add, $type3add, $type5, $type6add)=();
- if ($ucs) {
- $type1add = "UFF5F U3018 U3016 U301D U00AB U2329 U301A";
- $type2add = "UFF60 U3019 U3017 U301F U00BB U232A U301B U301E";
- $type3add = "U00B7";
- $type5 = "— ― … ‥";
- $type6add = "U203C U2047 U2048 U2049";
- } else {
- $type5 = "— … ‥";
- }
-print JPL <<END_OF_DATA;
-(CHARSINTYPE O 1
- ‘ “ ( 〔 [ { 〈 《 「 『 【
- $type1add
- )
-(CHARSINTYPE O 2
- 、 , ’ ” ) 〕 ] } 〉 》 」 』 】
- $type2add
- )
-(CHARSINTYPE O 3
- ・ : ;
- $type3add
- )
-(CHARSINTYPE O 4
- 。 .
- )
-(CHARSINTYPE O 5
- $type5
- )
-(CHARSINTYPE O 6
- ? !
- $type6add
- )
-END_OF_DATA
-print JPL <<END_OF_DATA if ($hk_mode) ; ## Halfwidth Katakana
-(CHARSINTYPE O 7
- UFF61 UFF62 UFF63 UFF64 UFF65 UFF66 UFF67
- UFF68 UFF69 UFF6A UFF6B UFF6C UFF6D UFF6E UFF6F
- UFF70 UFF71 UFF72 UFF73 UFF74 UFF75 UFF76 UFF77
- UFF78 UFF79 UFF7A UFF7B UFF7C UFF7D UFF7E UFF7F
- UFF80 UFF81 UFF82 UFF83 UFF84 UFF85 UFF86 UFF87
- UFF88 UFF89 UFF8A UFF8B UFF8C UFF8D UFF8E UFF8F
- UFF90 UFF91 UFF92 UFF93 UFF94 UFF95 UFF96 UFF97
- UFF98 UFF99 UFF9A UFF9B UFF9C UFF9D UFF9E UFF9F
- )
-END_OF_DATA
-}
-sub print_type_jis{
- @type_width=($font_at, $half_width, $half_width, $half_width, $half_width, $font_at, $font_at);
- if ($hk_mode) { push @type_width, $half_width; }
- for ($k=0; $k<$n_fixed; $k++){
- printf JPL "(TYPE H %x\n", $k;
- printf JPL " (CHARWD R %f)\n", $type_width[$k];
- &char_foot_h;
- }
-}
-sub fonthead {
- print OVP "(VTITLE Prop Kana)\n";
- print OVP "(OFMLEVEL D 0)\n";
- print OVP "(DESIGNSIZE R 10.000000)\n";
- print OVP "(CHECKSUM O 0)\n";
- print OVP "(MAPFONT D 1\n";
- print OVP " (FONTNAME $kanji_font_name[$i])\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- printf OVP " (FONTAT R %f)\n", $font_at;
- print OVP " (FONTDSIZE R 10.000000)\n";
- print OVP " )\n";
- print OVP "(MAPFONT D 2\n";
- print OVP " (FONTNAME $kana_font_name[$i])\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- printf OVP " (FONTAT R %f)\n", $font_at;
- print OVP " (FONTDSIZE R 10.000000)\n";
- print OVP " )\n";
-}
-sub write_char {
- if (!$ucs) {
- for ($ku=1; $ku<=94; $ku++){
- for ($ten=1; $ten<=94; $ten++){
- $dvicode=($ku+32)*256+($ten+32);
- if ($ku==1){&print_kigo_char;}elsif($ku==4){&print_kana_char;}
- elsif($ku==5){&print_kana_char;}else{&print_char;}
- }
- }
- } else { # ucs
- $max_ucs= $sp ? 0x2FA1F : 0xFFFF; # U+2FA1F: max of CJK Compatibility Ideographs Supplement
- for ($ucscode=0; $ucscode<=$max_ucs; $ucscode++){
- $CheckDVICode::dvicode=$dvicode=$ucscode;
- next unless (&is_ucs_jpn_range);
- if ($sp==1 && $ucscode>0xFFFF) {
- next unless ($exist_char{sprintf("%X",$ucscode)});
- }
- if (&is_ucs_kigo){&print_kigo_char;}
- elsif(&is_ucs_hira || &is_dvicode('hira-yori')){&print_kana_char;}
- elsif(&is_ucs_kata || &is_dvicode('kata-koto')){&print_kana_char;}
- elsif(&is_ucs_hankana && $hk_mode){&print_hankana_char;}
- else{&print_char;}
- }
- }
-}
-sub print_char{
- return if ($omitfw);
- printf OVP "(CHARACTER H %X\n", $dvicode;
- printf OVP " (CHARWD R %f)\n", $font_at;
- print OVP " (MAP\n";
- printf OVP " (SETCHAR H %X)\n",$dvicode;
- print OVP " )\n";
- print OVP " )\n";
-}
-sub print_kigo_char{
- my ($width,$cid);
- printf OVP "(CHARACTER H %X\n", $dvicode;
- if (&is_dvicode('quote') || &is_dvicode('kakko')){#Kakko
- $width=$half_width;
- } elsif (&is_dvicode('kutouten')){#Kutouten
- $width=$half_width;
- } elsif (&is_dvicode('odoriji')){#odoriji
- ($width,$cid)=&get_charwidth($i,$dvicode);
- $width/=10;
- } else{
- $width=$font_at;
- }
- printf OVP " (CHARWD R %f)\n", $width;
- print OVP " (MAP\n";
- if (&is_dvicode('odoriji')){#odoriji
- print OVP " (SELECTFONT D 2)\n";
- } elsif ($ucs && &is_dvicode('quote')){#Quote
- print OVP " (SELECTFONT D 2)\n";
- }
- if (&is_dvicode('nakaten') || &is_dvicode('colon') || &is_dvicode('semicolon')){#colon, semicolon, nakaten
- printf OVP " (MOVERIGHT R -%f)\n",$quater_width;}
- if ((&is_dvicode('quote') || &is_dvicode('kakko')) && &is_dvicode('open')){#Kakko
- printf OVP " (MOVERIGHT R -%f)\n",$half_width;
- }
- if (&is_dvicode('odoriji')){#odoriji
- printf OVP " (SETCHAR H %X)\n",$cid;
- } elsif ($ucs && &is_dvicode('quote')){#Quote
- $cpmcode= shift(@cpm_h);
- printf OVP " (SETCHAR H %X)\n",$cpmcode;
- } else {
- printf OVP " (SETCHAR H %X)\n",$dvicode;
- }
- print OVP " )\n";
- print OVP " )\n";
-}
-sub print_kana_char{
- my ($width,$cid)=&get_charwidth($i,$dvicode);
- if ($width==0) {
- return &print_char;
- }
- $width/=10;
- printf OVP "(CHARACTER H %X\n", $dvicode;
- printf OVP " (CHARWD R %f)\n", $width;
- print OVP " (MAP\n";
- print OVP " (SELECTFONT D 2)\n";
- printf OVP " (SETCHAR H %X)\n",$cid;
- print OVP " )\n";
- print OVP " )\n";
-}
-sub print_hankana_char{
- printf OVP "(CHARACTER H %X\n", $dvicode;
- printf OVP " (CHARWD R %f)\n", $half_width;
- print OVP " (MAP\n";
- printf OVP " (SETCHAR H %X)\n",$dvicode;
- print OVP " )\n";
- print OVP " )\n";
-}
-sub chars_in_type_prop{
- %char_width_hash=();
- for ($j=0; $j<@character; $j++){
- my ($c0, $c1);
- $c0=$c1=$character[$j];
- if (!$ucs) {
- if (!Encode::from_to($c1,'utf-8','euc-jp', Encode::FB_QUIET)
- || $c0 eq "〃"
- || $c0 eq "〆") { next; }
- }
- $char_width_hash{$c0}=$charwidth[$i]{$c0}/10;
- }
- $x = '-';
- @uniq_char_width_array = grep( $_ ne $x && ($x = $_), sort values(%char_width_hash));
- for ($j=0; $j<=$#uniq_char_width_array; $j++){
- printf JPL "(CHARSINTYPE H %X\n",($j+$n_fixed);
- print JPL " ";
- @char_in_this_type = ();
- while (($name, $value) = each(%char_width_hash)) {
- if ($value == $uniq_char_width_array[$j]){
- push(@char_in_this_type, $name);
- }
- }
- @char_in_this_type = sort @char_in_this_type;
- foreach $char_in_this(@char_in_this_type){
- print JPL "$char_in_this ";#character
- }
- print JPL "\n";
- print JPL " )\n";
- }
-}
-sub print_type_prop{
- for ($j=0; $j<=$#uniq_char_width_array; $j++){
- $char_width=$uniq_char_width_array[$j];
- printf JPL "(TYPE H %X\n", ($j+$n_fixed);
- printf JPL " (CHARWD R %f)\n", $char_width;
- &char_foot_h;
- }
-}
-
-sub get_charwidth{
- my ($i,$dvicode)=@_;
- my ($char,$u,$l);
-
- if (!$ucs) {
- if ($dvicode>=0x2474 && $dvicode<=0x2476) {
- return 0;
- }
- $u = ($dvicode >> 8) & 0xFF | 0x80;
- $l = $dvicode & 0xFF | 0x80;
- $char = pack("C*",$u,$l);
- Encode::from_to($char,'euc-jp','utf-8');
- } else {
- $u = ($dvicode >> 8) & 0xFF;
- $l = $dvicode & 0xFF;
- $char = pack("C*",$u,$l);
- Encode::from_to($char,'utf-16be','utf-8');
- }
- if (!exists($charwidth[$i]{$char})) {
- return 0;
- }
- return ($charwidth[$i]{$char}, $cid{$char});
-}
-
-
-__DATA__
-character cid min_w3 min_w6 goth_w3 goth_w6 maru_w4
-ヽ 15449 7.11 7.54 7.19 7.49 7.45
-ヾ 15450 7.68 7.95 7.69 8 8.15
-ゝ 15451 7.17 7.43 7.23 7.53 7.63
-ゞ 15452 7.79 7.97 7.72 8.09 8.08
-ー 15455 9.9 10 10 10 10
-ぁ 15517 8.21 8.44 8.56 8.77 8.72
-あ 15518 8.83 9.17 9.18 9.41 9.32
-ぃ 15519 8.56 8.72 8.67 8.95 8.97
-い 15520 9.14 9.46 9.3 9.52 9.58
-ぅ 15521 7.3 7.65 8.08 8.27 8.32
-う 15522 7.68 8.04 8.51 8.74 8.78
-ぇ 15523 7.97 8.2 8.34 8.56 8.61
-え 15524 8.69 8.95 9.14 9.33 9.36
-ぉ 15525 8.59 8.9 8.77 9.02 8.97
-お 15526 9.15 9.52 9.37 9.62 9.54
-か 15527 9.53 9.81 9.49 9.72 9.58
-が 15528 9.69 9.93 9.68 9.82 9.79
-き 15529 8.34 8.64 8.87 9.09 9.15
-ぎ 15530 9.09 9.42 9.49 9.49 9.66
-く 15531 6.76 7.04 7.64 7.92 8.04
-ぐ 15532 8.31 8.52 8.34 8.5 8.72
-け 15533 9.07 9.35 9.16 9.37 9.39
-げ 15534 9.56 9.75 9.66 9.82 9.78
-こ 15535 8.05 8.3 8.37 8.65 8.88
-ご 15536 8.91 9.08 8.9 9 9.27
-さ 15537 8.26 8.61 8.71 9.02 9.03
-ざ 15538 9.19 9.53 8.97 9.3 9.34
-し 15539 8.07 8.51 8.58 8.84 8.91
-じ 15540 8.17 8.62 8.65 8.94 9
-す 15541 9.16 9.44 9.17 9.33 9.41
-ず 15542 9.52 9.63 9.53 9.66 9.72
-せ 15543 9.52 9.76 9.44 9.65 9.61
-ぜ 15544 9.79 9.92 9.73 9.86 9.87
-そ 15545 8.59 8.93 9.27 9.48 9.43
-ぞ 15546 9.25 9.49 9.4 9.64 9.69
-た 15547 8.94 9.25 9.22 9.45 9.37
-だ 15548 9.23 9.44 9.28 9.51 9.57
-ち 15549 8.5 8.77 8.83 9.05 9.11
-ぢ 15550 8.98 9.25 8.92 9.16 9.28
-っ 15551 8.81 8.97 8.66 8.84 8.83
-つ 15552 9.39 9.71 9.26 9.41 9.44
-づ 15553 9.65 9.8 9.54 9.68 9.71
-て 15554 8.91 9.11 8.93 9.12 9.25
-で 15555 9.3 9.5 9.26 9.42 9.5
-と 15556 7.62 7.89 8.3 8.62 8.66
-ど 15557 8.45 8.72 8.56 8.78 8.88
-な 15558 9.08 9.42 9.45 9.66 9.55
-に 15559 8.94 9.18 9.16 9.42 9.38
-ぬ 15560 9.41 9.67 9.51 9.72 9.62
-ね 15561 9.51 9.73 9.67 9.82 9.83
-の 15562 9.29 9.57 9.35 9.69 9.58
-は 15563 9.13 9.45 9.44 9.69 9.56
-ば 15564 9.69 9.79 9.73 9.85 9.8
-ぱ 15565 9.58 9.77 9.66 9.8 9.75
-ひ 15566 8.98 9.33 9.26 9.52 9.52
-び 15567 9.27 9.49 9.48 9.71 9.62
-ぴ 15568 9.33 9.53 9.39 9.63 9.63
-ふ 15569 9.19 9.44 9.4 9.62 9.52
-ぶ 15570 9.33 9.59 9.61 9.78 9.74
-ぷ 15571 9.36 9.59 9.51 9.73 9.74
-へ 15572 9.71 9.97 9.69 9.76 9.73
-べ 15573 9.54 9.84 9.64 9.76 9.72
-ぺ 15574 9.51 9.82 9.5 9.73 9.69
-ほ 15575 9.14 9.49 9.48 9.73 9.62
-ぼ 15576 9.73 9.9 9.79 9.88 9.93
-ぽ 15577 9.77 9.92 9.72 9.9 9.88
-ま 15578 8.32 8.62 8.98 9.24 9.28
-み 15579 9.07 9.38 9.38 9.62 9.57
-む 15580 9.22 9.57 9.33 9.52 9.48
-め 15581 9.03 9.36 9.27 9.54 9.48
-も 15582 8.08 8.34 8.82 9.1 9.15
-ゃ 15583 8.68 8.93 8.72 8.9 8.9
-や 15584 9.38 9.62 9.25 9.49 9.46
-ゅ 15585 8.74 8.95 8.78 8.98 9
-ゆ 15586 9.33 9.64 9.41 9.63 9.62
-ょ 15587 7.64 7.85 8.09 8.36 8.45
-よ 15588 8.1 8.41 8.63 8.95 9.04
-ら 15589 8.14 8.39 8.59 8.81 8.94
-り 15590 7.69 8.09 8.33 8.59 8.71
-る 15591 8.2 8.55 8.86 9.11 9.12
-れ 15592 9.76 9.96 9.62 9.82 9.81
-ろ 15593 8.38 8.63 8.7 8.94 9.09
-ゎ 15594 8.58 8.83 8.82 9.07 9.02
-わ 15595 9.24 9.58 9.46 9.71 9.66
-ゐ 15596 8.77 9.12 9.02 9.29 9.35
-ゑ 15597 9.14 9.32 9.34 9.53 9.5
-を 15598 8.78 9.14 9.05 9.33 9.45
-ん 15599 9.13 9.39 9.2 9.47 9.39
-ァ 15608 8.01 8.28 8.37 8.61 8.5
-ア 15609 8.69 9.01 9 9.24 9.17
-ィ 15610 7.6 7.78 8.26 8.44 8.33
-イ 15611 8.2 8.43 8.91 9.13 8.96
-ゥ 15612 7.89 8.24 8.4 8.61 8.72
-ウ 15613 8.4 8.67 8.81 9.06 9.18
-ェ 15614 8.44 8.63 8.63 8.83 8.73
-エ 15615 9.23 9.5 9.36 9.52 9.36
-ォ 15616 8.34 8.57 8.66 8.88 8.69
-オ 15617 8.94 9.26 9.18 9.39 9.32
-カ 15618 8.64 8.9 9.04 9.33 9.23
-ガ 15619 9.39 9.53 9.37 9.53 9.55
-キ 15620 8.76 9.19 9.27 9.45 9.34
-ギ 15621 9.05 9.4 9.31 9.54 9.55
-ク 15622 8.25 8.6 8.68 8.96 8.9
-グ 15623 9.06 9.37 9.55 9.57 9.67
-ケ 15624 8.84 9.05 9.28 9.43 9.41
-ゲ 15625 9.28 9.42 9.52 9.66 9.69
-コ 15626 8.49 8.83 8.88 9.15 9.16
-ゴ 15627 9.1 9.3 9.4 9.59 9.55
-サ 15628 9.16 9.44 9.26 9.42 9.46
-ザ 15629 9.46 9.68 9.62 9.72 9.8
-シ 15630 9.02 9.22 8.94 9.22 9.32
-ジ 15631 8.99 9.22 9.42 9.5 9.74
-ス 15632 8.68 8.96 9.06 9.32 9.25
-ズ 15633 9.24 9.48 9.5 9.73 9.67
-セ 15634 9.02 9.4 9.17 9.36 9.33
-ゼ 15635 9.44 9.71 9.54 9.63 9.63
-ソ 15636 8.23 8.49 8.47 8.76 8.8
-ゾ 15637 9.13 9.3 9.04 9.19 9.44
-タ 15638 8.41 8.78 8.75 9 8.95
-ダ 15639 9.32 9.56 9.67 9.65 9.73
-チ 15640 8.91 9.27 9.25 9.48 9.36
-ヂ 15641 9.36 9.64 9.55 9.63 9.61
-ッ 15642 7.86 8.12 8.15 8.4 8.48
-ツ 15643 8.44 8.73 8.86 9.13 9.04
-ヅ 15644 9.24 9.43 9.41 9.53 9.57
-テ 15645 8.85 9.2 9.22 9.38 9.33
-デ 15646 9.37 9.58 9.64 9.67 9.74
-ト 15647 7.25 7.6 8.02 8.3 8.57
-ド 15648 7.95 8.16 8.26 8.48 8.7
-ナ 15649 8.84 9.22 9.13 9.32 9.26
-ニ 15650 9.21 9.52 9.23 9.42 9.22
-ヌ 15651 8.11 8.42 8.46 8.7 8.79
-ネ 15652 9 9.27 9.23 9.46 9.4
-ノ 15653 7.81 8.17 8.4 8.7 8.66
-ハ 15654 9.46 9.77 9.45 9.66 9.41
-バ 15655 9.58 9.76 9.63 9.78 9.56
-パ 15656 9.45 9.71 9.53 9.75 9.55
-ヒ 15657 8.14 8.42 8.6 8.88 8.84
-ビ 15658 8.76 9 9.23 9.41 9.46
-ピ 15659 8.66 8.9 9.15 9.33 9.4
-フ 15660 8.12 8.46 8.57 8.81 8.91
-ブ 15661 9.05 9.3 9.27 9.42 9.73
-プ 15662 9.05 9.27 9.11 9.31 9.73
-ヘ 15663 9.68 9.95 9.62 9.77 9.66
-ベ 15664 9.44 9.77 9.56 9.73 9.62
-ペ 15665 9.42 9.77 9.56 9.71 9.59
-ホ 15666 8.85 9.19 9.46 9.67 9.52
-ボ 15667 9.14 9.39 9.51 9.71 9.69
-ポ 15668 8.81 9.24 9.5 9.72 9.71
-マ 15669 8.86 9.17 8.99 9.19 9.17
-ミ 15670 7.57 7.9 8.39 8.64 8.87
-ム 15671 8.56 8.87 9.2 9.4 9.39
-メ 15672 8.2 8.55 8.64 8.92 8.81
-モ 15673 9.09 9.41 9.42 9.61 9.49
-ャ 15674 8.39 8.69 8.49 8.73 8.73
-ヤ 15675 8.95 9.24 9.16 9.39 9.31
-ュ 15676 8.38 8.61 8.43 8.65 8.61
-ユ 15677 9.18 9.57 9.22 9.37 9.35
-ョ 15678 7.94 8.23 8.44 8.72 8.74
-ヨ 15679 8.37 8.74 8.91 9.19 9.22
-ラ 15680 8.08 8.41 8.71 8.97 8.95
-リ 15681 7.6 7.91 8.16 8.43 8.63
-ル 15682 9.27 9.69 9.46 9.64 9.49
-レ 15683 8.46 8.8 8.61 8.9 9.01
-ロ 15684 8.51 8.95 9.26 9.51 9.54
-ヮ 15685 7.77 8.09 8.32 8.51 8.71
-ワ 15686 8.34 8.67 8.71 8.97 9.02
-ヰ 15687 9.19 9.5 9.47 9.64 9.57
-ヱ 15688 9.19 9.51 9.32 9.52 9.35
-ヲ 15689 8.01 8.39 8.49 8.76 8.93
-ン 15690 8.71 9.03 8.85 9.12 9.04
-ヴ 15691 9.06 9.34 9.33 9.51 9.66
-ヵ 15692 8.11 8.33 8.51 8.8 8.74
-ヶ 15693 8.18 8.39 8.63 8.74 8.73
-〃 15453 7.69 8.15 8.29 8.62 8.36
-〆 15454 8.69 9.03 9.09 9.33 9.15
-ヿ 15462 8.09 8.42 8.6 8.83 8.87
-ゟ 15463 8.03 8.27 8.82 9.19 8.93
-ゔ 15600 8.73 9.06 9.27 9.47 9.44
-ゕ 15601 8.75 9.02 8.82 9.06 8.95
-ゖ 15602 8.36 8.64 8.55 8.78 8.73
-ㇰ 15702 7.68 8.03 8.02 8.34 8.43
-ㇱ 15703 8.39 8.58 8.43 8.67 8.66
-ㇲ 15704 8 8.19 8.3 8.59 8.55
-ㇳ 15705 7.02 7.29 7.66 7.9 8.16
-ㇴ 15706 7.65 7.89 8.04 8.35 8.38
-ㇵ 15707 8.6 8.79 8.61 8.84 8.63
-ㇶ 15708 7.83 8.02 8.15 8.43 8.41
-ㇷ 15709 7.61 7.94 8.09 8.3 8.39
-ㇸ 15710 8.81 9.1 8.78 8.94 8.83
-ㇹ 15711 8.27 8.53 8.86 9.09 8.97
-ㇺ 15713 7.92 8.13 8.39 8.61 8.62
-ㇻ 15714 7.8 8.09 8.32 8.54 8.55
-ㇼ 15715 7.39 7.66 7.9 8.13 8.31
-ㇽ 15716 8.59 8.79 8.72 8.9 8.81
-ㇾ 15717 8.06 8.32 8.18 8.41 8.55
-ㇿ 15718 8.13 8.44 8.67 8.93 8.98
-ヷ 15719 9.2 9.51 9.64 9.6 9.81
-ヸ 15720 9.41 9.75 9.6 9.7 9.75
-ヹ 15721 9.47 9.7 9.65 9.7 9.8
-ヺ 15722 8.91 9.32 9.34 9.39 9.73
-end
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/umkvpkana.pl b/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/umkvpkana.pl
deleted file mode 100755
index da4d0d7d8a8..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/script/umkvpkana.pl
+++ /dev/null
@@ -1,569 +0,0 @@
-#!/usr/bin/perl -s
-
-=head1 NOTE
-
-This software is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
-
-=cut
-
-use Encode;
-use FindBin;
-use lib "$FindBin::Bin";
-use CheckDVICode;
-
-if ($sp==1) { # supplemental plane
- use MakeSPList;
- &make_sp_char_list('j');
- %exist_char=%{$MakeSPList::r_exist_char->{'j'}};
-}
-
-$_=<DATA>;
-while(<DATA>) {
- chomp($_);
- my (@data)=split(' ', $_);
- my ($char);
- last if (@data<6);
- $char = shift @data;
- push @character, $char;
- $cid {$char}=shift @data;
- $min_w3 {$char}=shift @data;
- $min_w6 {$char}=shift @data;
- $goth_w3{$char}=shift @data;
- $goth_w6{$char}=shift @data;
- $maru_w4{$char}=shift @data;
-}
-
-@charwidth=({%min_w3}, {%min_w6}, {%goth_w3}, {%goth_w6}, {%maru_w4});
-@font_name=("phiraminw3-v", "phiraminw6-v", "phirakakuw3-v", "phirakakuw6-v", "phiramaruw4-v");
-@kanji_font_name=("hminr-v", "hminb-v", "hgothr-v", "hgothb-v", "hmgothr-v");
-@kana_font_name=("hiramin-w3-v", "hiramin-w6-v", "hirakaku-w3-v", "hirakaku-w6-v", "hiramaru-w4-v");
-$font_at=1.0;
-$half_width= ($font_at / 2);
-$quater_width= ($font_at / 4);
-opendir(OVP, "ovp") || mkdir("ovp",0755) || die "cannot mkdir ovp";
-opendir(VF, "vf") || mkdir("vf",0755) || die "cannot mkdir vf";
-opendir(JPL, "pl") || mkdir("pl",0755) || die "cannot mkdir pl";
-opendir(JFM, "tfm") || mkdir("tfm",0755) || die "cannot mkdir tfm";
-closedir(OVP);
-closedir(VF);
-closedir(JPL);
-closedir(JFM);
-
-$ucs=1; # 1: upphiraXXX or 0: phiraXXX
-if ($ucs) {
- $CheckDVICode::is_ucs=1;
- foreach(@font_name, @kanji_font_name) {
- $_="up$_";
- }
-}
-
-#main
-for ($i=0; $i<=4; $i++){
- open (JPL, ">pl/$font_name[$i].pl");
- &tfm_head_v;
- &chars_in_type_jis;
- &chars_in_type_prop;
- &print_type_jis;
- &print_type_prop;
- &glue_kern;
- close(JPL);
-}
-for ($i=0; $i<=4; $i++){
- @cpm_v= $ucs ? (0x2F8D, 0x2F8E, 0x1F14, 0x1F15, 0x1ECF, 0x1ED0)
- : (0x1ECF, 0x1ED0, 0x2F8D, 0x2F8E, 0x1F14, 0x1F15);
- open (OVP, ">ovp/$font_name[$i].ovp");
- &fonthead;
- &write_char;
- close(OVP);
-}
-#
-#sub rtn
-#
-sub tfm_head_v {
- print JPL "(DIRECTION TATE)\n";
- print JPL "(FAMILY PROP KANA)\n";
- print JPL "(FACE F MRR)\n";
- print JPL "(CODINGSCHEME TEX KANJI TEXT)\n";
- print JPL "(DESIGNSIZE R 10.0)\n";
- print JPL "(CHECKSUM O 0)\n";
- print JPL "(SEVENBITSAFEFLAG TRUE)\n";
- print JPL "(FONTDIMEN\n";
- print JPL " (SLANT R 0.0)\n";
- print JPL " (SPACE R 0.0)\n";
- printf JPL " (STRETCH R %f)\n", $font_at/10;
- print JPL " (SHRINK R 0.0)\n";
- printf JPL " (XHEIGHT R %f)\n", $font_at;
- printf JPL " (QUAD R %f)\n", $font_at;
- printf JPL " (EXTRASPACE R %f)\n", $font_at/4;
- printf JPL " (EXTRASTRETCH R %f)\n", $font_at/5;
- printf JPL " (EXTRASHRINK R %f)\n", $font_at/8;
- print JPL " )\n";
-}
-sub char_foot_h {
- printf JPL " (CHARHT R %f)\n", $font_at*0.88;
- printf JPL " (CHARDP R %f)\n", $font_at*0.12;
- print JPL " )\n";
-}
-sub glue_kern{
- print JPL "(GLUEKERN\n";
- print JPL " (LABEL O 5)\n";
- print JPL " (KRN O 5 R 0.0)\n";
- print JPL " (LABEL O 0)\n";
- for ($char=0; $char<=$#uniq_char_width_array; $char++){
- printf JPL " (LABEL H %X)\n",($char+7);
- }
- printf JPL " (GLUE O 1 R %f R 0.0 R %f)\n", $half_width, $half_width;
- print JPL " (LABEL O 1)\n";
- printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
- print JPL " (STOP)\n";
- print JPL " (LABEL O 2)\n";
- printf JPL " (GLUE O 5 R %f R 0.0 R %f)\n", $half_width, $half_width;
- printf JPL " (GLUE O 6 R %f R 0.0 R %f)\n", $half_width, $half_width;
- print JPL " (STOP)\n";
- print JPL " (LABEL O 6)\n";
- printf JPL " (GLUE O 0 R %f R 0.0 R %f)\n", $half_width, $half_width;
- printf JPL " (GLUE O 1 R %f R 0.0 R %f)\n", $half_width, $half_width;
- printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
- for ($char=0; $char<=$#uniq_char_width_array; $char++){
- printf JPL " (GLUE H %X R %f R 0.0 R %f)\n",($char+7), $half_width, $half_width;
- }
- print JPL " (STOP)\n";
- print JPL " (LABEL O 4)\n";
- printf JPL " (GLUE O 0 R %f R 0.0 R 0.0)\n", $half_width;
- printf JPL " (GLUE O 1 R %f R 0.0 R 0.0)\n", $half_width;
- printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $half_width+$quater_width, $quater_width;
- printf JPL " (GLUE O 5 R %f R 0.0 R 0.0)\n", $half_width;
- printf JPL " (GLUE O 6 R %f R 0.0 R 0.0)\n", $half_width;
- for ($char=0; $char<=$#uniq_char_width_array; $char++){
- printf JPL " (GLUE H %X R %f R 0.0 R 0.0)\n",($char+7), $half_width;
- }
- print JPL " (STOP)\n";
- print JPL " (LABEL O 3)\n";
- printf JPL " (GLUE O 0 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
- printf JPL " (GLUE O 1 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
- printf JPL " (GLUE O 2 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
- printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $half_width, $quater_width;
- printf JPL " (GLUE O 4 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
- printf JPL " (GLUE O 5 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
- printf JPL " (GLUE O 6 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
- for ($char=0; $char<=$#uniq_char_width_array; $char++){
- printf JPL " (GLUE H %X R %f R 0.0 R %f)\n",($char+7), $quater_width, $quater_width;
- }
- print JPL " (STOP)\n";
- print JPL " )\n";
-}
-sub chars_in_type_jis{
- my ($type1add, $type2add, $type3add, $type5, $type6add)=();
- if ($ucs) {
- $type1add = "UFF5F U3018 U3016 U301D U00AB U2329 U301A";
- $type2add = "UFF60 U3019 U3017 U301F U00BB U232A U301B U301E";
- $type3add = "U00B7";
- $type5 = "— ― … ‥";
- $type6add = "U203C U2047 U2048 U2049";
- } else {
- $type5 = "— … ‥";
- }
-print JPL <<END_OF_DATA;
-(CHARSINTYPE O 1
- ‘ “ ( 〔 [ { 〈 《 「 『 【
- $type1add
- )
-(CHARSINTYPE O 2
- 、 , ’ ” ) 〕 ] } 〉 》 」 』 】
- $type2add
- )
-(CHARSINTYPE O 3
- ・ : ;
- $type3add
- )
-(CHARSINTYPE O 4
- 。 .
- )
-(CHARSINTYPE O 5
- $type5
- )
-(CHARSINTYPE O 6
- ? !
- $type6add
- )
-END_OF_DATA
-}
-sub print_type_jis{
- @type_width=($font_at, $half_width, $half_width, $half_width, $half_width, $font_at, $font_at);
- for ($k=0; $k<=6; $k++){
- printf JPL "(TYPE H %x\n", $k;
- printf JPL " (CHARWD R %f)\n", $type_width[$k];
- &char_foot_h;
- }
-}
-sub fonthead {
- print OVP "(VTITLE Prop Kana)\n";
- print OVP "(OFMLEVEL D 0)\n";
- print OVP "(DESIGNSIZE R 10.000000)\n";
- print OVP "(CHECKSUM O 0)\n";
- print OVP "(MAPFONT D 1\n";
- print OVP " (FONTNAME $kanji_font_name[$i])\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- printf OVP " (FONTAT R %f)\n", $font_at;
- print OVP " (FONTDSIZE R 10.000000)\n";
- print OVP " )\n";
- print OVP "(MAPFONT D 2\n";
- print OVP " (FONTNAME $kana_font_name[$i])\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- printf OVP " (FONTAT R %f)\n", $font_at;
- print OVP " (FONTDSIZE R 10.000000)\n";
- print OVP " )\n";
-}
-sub write_char {
- if (!$ucs) {
- for ($ku=1; $ku<=94; $ku++){
- for ($ten=1; $ten<=94; $ten++){
- $dvicode=($ku+32)*256+($ten+32);
- if ($ku==1){&print_kigo_char;}elsif($ku==4){&print_kana_char;}
- elsif($ku==5){&print_kana_char;}else{&print_char;}
- }
- }
- } else { # ucs
- $max_ucs= $sp ? 0x2FA1F : 0xFFFF; # U+2FA1F: max of CJK Compatibility Ideographs Supplement
- for ($ucscode=0; $ucscode<=$max_ucs; $ucscode++){
- $CheckDVICode::dvicode=$dvicode=$ucscode;
- next unless (&is_ucs_jpn_range);
- if ($sp==1 && $ucscode>0xFFFF) {
- next unless ($exist_char{sprintf("%X",$ucscode)});
- }
- if (&is_ucs_kigo){&print_kigo_char;}
- elsif(&is_ucs_hira || &is_dvicode('hira-yori')){&print_kana_char;}
- elsif(&is_ucs_kata || &is_dvicode('kata-koto')){&print_kana_char;}
-# elsif(&is_ucs_hankana && $hk_mode){&print_hankana_char;}
- else{&print_char;}
- }
- }
-}
-sub print_char{
- return if ($omitfw);
- printf OVP "(CHARACTER H %X\n", $dvicode;
- printf OVP " (CHARWD R %f)\n", $font_at;
- print OVP " (MAP\n";
- printf OVP " (SETCHAR H %X)\n",$dvicode;
- print OVP " )\n";
- print OVP " )\n";
-}
-sub print_kigo_char{
- my ($width,$cid);
- printf OVP "(CHARACTER H %X\n", $dvicode;
- if (&is_dvicode('quote') || &is_dvicode('kakko')){#Kakko
- $width=$half_width;
- } elsif (&is_dvicode('kutouten')){#Kutouten
- $width=$half_width;
- } elsif (&is_dvicode('odoriji')){#odoriji
- ($width,$cid)=&get_charwidth($i,$dvicode);
- $width/=10;
- } else{
- $width=$font_at;
- }
- printf OVP " (CHARWD R %f)\n", $width;
- print OVP " (MAP\n";
- if (&is_dvicode('odoriji')){#odoriji
- print OVP " (SELECTFONT D 2)\n";
- } elsif (&is_dvicode('comma') || &is_dvicode('period') || &is_dvicode('quote')){#Comma, Period, Minute
- print OVP " (SELECTFONT D 2)\n";
- }
- if (&is_dvicode('nakaten') || &is_dvicode('colon') || &is_dvicode('semicolon')){#colon, semicolon, nakaten
- printf OVP " (MOVERIGHT R -%f)\n",$quater_width;}
- if ((&is_dvicode('quote') || &is_dvicode('kakko')) && &is_dvicode('open')){#Kakko
- printf OVP " (MOVERIGHT R -%f)\n",$half_width;
- }
- if (&is_dvicode('odoriji')){#odoriji
- printf OVP " (SETCHAR H %X)\n",$cid;
- } elsif (&is_dvicode('comma') || &is_dvicode('period') || &is_dvicode('quote')){#Comma, Period, Minute
- $cpmcode= shift(@cpm_v);
- printf OVP " (SETCHAR H %X)\n",$cpmcode;
- } else {
- printf OVP " (SETCHAR H %X)\n",$dvicode;
- }
- print OVP " )\n";
- print OVP " )\n";
-}
-sub print_kana_char{
- my ($width,$cid)=&get_charwidth($i,$dvicode);
- if ($width==0) {
- return &print_char;
- }
- $width/=10;
- printf OVP "(CHARACTER H %X\n", $dvicode;
- printf OVP " (CHARWD R %f)\n", $width;
- print OVP " (MAP\n";
- print OVP " (SELECTFONT D 2)\n";
- printf OVP " (SETCHAR H %X)\n",$cid;
- print OVP " )\n";
- print OVP " )\n";
-}
-sub chars_in_type_prop{
- %char_width_hash=();
- for ($j=0; $j<@character; $j++){
- my ($c0, $c1);
- $c0=$c1=$character[$j];
- if (!$ucs) {
- if (!Encode::from_to($c1,'utf-8','euc-jp', Encode::FB_QUIET)
- || $c0 eq "〃"
- || $c0 eq "〆") { next; }
- }
- $char_width_hash{$c0}=$charwidth[$i]{$c0}/10;
- }
- $x = '-';
- @uniq_char_width_array = grep( $_ ne $x && ($x = $_), sort values(%char_width_hash));
- for ($j=0; $j<=$#uniq_char_width_array; $j++){
- printf JPL "(CHARSINTYPE H %X\n",($j+7);
- print JPL " ";
- @char_in_this_type = ();
- while (($name, $value) = each(%char_width_hash)) {
- if ($value == $uniq_char_width_array[$j]){
- push(@char_in_this_type, $name);
- }
- }
- @char_in_this_type = sort @char_in_this_type;
- foreach $char_in_this(@char_in_this_type){
- print JPL "$char_in_this ";#character
- }
- print JPL "\n";
- print JPL " )\n";
- }
-}
-sub print_type_prop{
- for ($j=0; $j<=$#uniq_char_width_array; $j++){
- $char_width=$uniq_char_width_array[$j];
- printf JPL "(TYPE H %X\n", ($j+7);
- printf JPL " (CHARWD R %f)\n", $char_width;
- &char_foot_h;
- }
-}
-
-sub get_charwidth{
- my ($i,$dvicode)=@_;
- my ($char,$u,$l);
-
- if (!$ucs) {
- if ($dvicode>=0x2474 && $dvicode<=0x2476) {
- return 0;
- }
- $u = ($dvicode >> 8) & 0xFF | 0x80;
- $l = $dvicode & 0xFF | 0x80;
- $char = pack("C*",$u,$l);
- Encode::from_to($char,'euc-jp','utf-8');
- } else {
- $u = ($dvicode >> 8) & 0xFF;
- $l = $dvicode & 0xFF;
- $char = pack("C*",$u,$l);
- Encode::from_to($char,'utf-16be','utf-8');
- }
- if (!exists($charwidth[$i]{$char})) {
- return 0;
- }
- return ($charwidth[$i]{$char}, $cid{$char});
-}
-
-
-__DATA__
-character cid min_w3 min_w6 goth_w3 goth_w6 maru_w4
-ヽ 15976 7.17 7.46 7.92 8.27 8.13
-ヾ 15977 8.34 8.44 8.46 8.62 8.5
-ゝ 15978 7.77 7.98 8.44 8.69 8.62
-ゞ 15979 8.32 8.54 8.8 8.92 8.98
-ー 15982 9.96 9.98 9.99 9.99 9.98
-ぁ 15985 9.03 9.15 9.01 9.18 9.17
-あ 15986 9.6 9.79 9.6 9.77 9.75
-ぃ 15987 7.75 7.92 8.09 8.4 8.59
-い 15988 8.19 8.47 8.46 8.8 8.83
-ぅ 15989 9.42 9.47 8.97 9.2 9.19
-う 15990 9.98 9.99 9.58 9.8 9.79
-ぇ 15991 8.89 9.12 8.84 9.15 9.05
-え 15992 9.47 9.74 9.42 9.7 9.59
-ぉ 15993 8.65 8.89 8.86 9.06 9.08
-お 15994 9.14 9.48 9.39 9.67 9.61
-か 15995 8.99 9.24 9.26 9.47 9.45
-が 15996 9.1 9.39 9.41 9.67 9.6
-き 15997 9.71 9.93 9.73 9.88 9.82
-ぎ 15998 9.71 9.86 9.8 9.96 9.92
-く 15999 9.99 9.99 9.56 9.77 9.47
-ぐ 16000 9.79 9.98 9.49 9.7 9.5
-け 16001 9.52 9.64 9.54 9.79 9.66
-げ 16002 9.76 9.82 9.56 9.76 9.62
-こ 16003 9.26 9.47 9.38 9.67 9.57
-ご 16004 9.44 9.6 9.23 9.6 9.49
-さ 16005 9.67 9.84 9.67 9.85 9.77
-ざ 16006 9.71 9.85 9.86 9.97 9.95
-し 16007 9.42 9.53 9.38 9.53 9.53
-じ 16008 9.63 9.74 9.71 9.86 9.72
-す 16009 9.39 9.61 9.3 9.55 9.43
-ず 16010 9.61 9.83 9.6 9.84 9.68
-せ 16011 9.18 9.45 9.44 9.7 9.54
-ぜ 16012 9.47 9.66 9.53 9.79 9.63
-そ 16013 9.45 9.66 9.4 9.65 9.57
-ぞ 16014 9.56 9.74 9.43 9.65 9.59
-た 16015 9.23 9.47 9.39 9.59 9.59
-だ 16016 9.48 9.68 9.59 9.81 9.72
-ち 16017 9.61 9.78 9.63 9.81 9.68
-ぢ 16018 9.67 9.8 9.85 9.97 9.92
-っ 16019 7.96 8.04 8.23 8.47 8.6
-つ 16020 8.24 8.42 8.62 8.87 8.98
-づ 16021 8.99 9.15 9.26 9.44 9.42
-て 16022 8.69 8.92 8.89 9.19 9.16
-で 16023 8.76 8.95 8.92 9.19 9.23
-と 16024 9.75 9.89 9.59 9.82 9.65
-ど 16025 9.69 9.89 9.81 9.96 9.93
-な 16026 9.48 9.66 9.48 9.65 9.62
-に 16027 8.95 9.17 9.19 9.42 9.4
-ぬ 16028 8.98 9.23 9.34 9.57 9.49
-ね 16029 9.25 9.54 9.52 9.68 9.62
-の 16030 8.82 8.99 9.02 9.28 9.24
-は 16031 9.28 9.55 9.5 9.75 9.66
-ば 16032 9.57 9.76 9.67 9.82 9.76
-ぱ 16033 9.7 9.82 9.84 9.97 9.92
-ひ 16034 9.19 9.36 9.18 9.4 9.41
-び 16035 9.46 9.64 9.4 9.61 9.61
-ぴ 16036 9.72 9.8 9.71 9.79 9.81
-ふ 16037 9.05 9.39 9.25 9.5 9.46
-ぶ 16038 9.16 9.47 9.29 9.54 9.49
-ぷ 16039 9.15 9.43 9.33 9.53 9.52
-へ 16040 7.21 7.43 7.84 8.2 8.32
-べ 16041 8.13 8.33 8.21 8.52 8.58
-ぺ 16042 8.43 8.58 8.56 8.84 8.78
-ほ 16043 9.23 9.46 9.45 9.71 9.67
-ぼ 16044 9.61 9.74 9.65 9.89 9.79
-ぽ 16045 9.65 9.81 9.7 9.9 9.87
-ま 16046 9.76 9.88 9.57 9.74 9.64
-み 16047 9.17 9.36 9.24 9.48 9.38
-む 16048 9.37 9.58 9.49 9.71 9.64
-め 16049 9.18 9.41 9.38 9.58 9.53
-も 16050 9.76 9.91 9.48 9.68 9.6
-ゃ 16051 8.69 8.83 8.89 9.1 8.99
-や 16052 9.38 9.54 9.52 9.7 9.62
-ゅ 16053 8.73 8.82 8.88 9.08 9.03
-ゆ 16054 9.22 9.4 9.4 9.63 9.58
-ょ 16055 8.95 9.17 9.03 9.28 9.09
-よ 16056 9.63 9.83 9.63 9.82 9.61
-ら 16057 9.66 9.82 9.5 9.74 9.79
-り 16058 9.82 9.85 9.75 9.88 9.79
-る 16059 9.59 9.8 9.55 9.77 9.7
-れ 16060 9.21 9.43 9.4 9.59 9.55
-ろ 16061 9.66 9.79 9.55 9.79 9.73
-ゎ 16062 8.58 8.73 8.71 8.93 8.86
-わ 16063 9.28 9.45 9.38 9.54 9.54
-ゐ 16064 9.37 9.59 9.46 9.68 9.57
-ゑ 16065 9.65 9.82 9.64 9.86 9.8
-を 16066 9.64 9.79 9.62 9.83 9.71
-ん 16067 9.2 9.4 9.32 9.54 9.45
-ァ 16076 8.45 8.5 8.55 8.76 8.92
-ア 16077 8.96 9.2 9.19 9.44 9.41
-ィ 16078 8.81 8.92 8.63 8.88 8.75
-イ 16079 9.29 9.46 9.28 9.48 9.35
-ゥ 16080 8.89 8.93 8.82 9.03 8.94
-ウ 16081 9.38 9.56 9.4 9.59 9.46
-ェ 16082 7.81 8.04 8.33 8.65 8.84
-エ 16083 8.12 8.39 8.77 9.06 9.3
-ォ 16084 8.76 8.84 8.76 8.99 8.9
-オ 16085 9.21 9.41 9.29 9.51 9.38
-カ 16086 9.26 9.48 9.46 9.68 9.52
-ガ 16087 9.27 9.5 9.66 9.79 9.71
-キ 16088 9.25 9.41 9.4 9.6 9.39
-ギ 16089 9.56 9.65 9.78 9.87 9.78
-ク 16090 9.25 9.37 9.33 9.53 9.44
-グ 16091 9.49 9.57 9.39 9.69 9.66
-ケ 16092 9.19 9.32 9.14 9.35 9.37
-ゲ 16093 9.6 9.65 9.47 9.59 9.64
-コ 16094 8.32 8.59 9.13 9.4 9.4
-ゴ 16095 8.83 9.13 9.52 9.78 9.7
-サ 16096 9.17 9.37 9.34 9.53 9.49
-ザ 16097 9.53 9.65 9.39 9.58 9.62
-シ 16098 8.39 8.61 8.88 9.11 9.53
-ジ 16099 9.1 9.21 9.31 9.39 9.84
-ス 16100 8.61 8.85 9 9.3 9.22
-ズ 16101 9.24 9.44 9.44 9.68 9.58
-セ 16102 8.67 8.93 9.17 9.43 9.4
-ゼ 16103 9.26 9.4 9.63 9.78 9.78
-ソ 16104 8.89 9.06 8.98 9.21 9.12
-ゾ 16105 9.52 9.64 9.56 9.63 9.61
-タ 16106 9.31 9.42 9.41 9.6 9.56
-ダ 16107 9.56 9.61 9.53 9.74 9.76
-チ 16108 9.2 9.4 9.14 9.39 9.31
-ヂ 16109 9.35 9.51 9.18 9.4 9.34
-ッ 16110 8.33 8.43 8.55 8.77 8.77
-ツ 16111 8.8 8.97 9.01 9.26 9.2
-ヅ 16112 9.48 9.61 9.5 9.64 9.7
-テ 16113 9.13 9.34 9.28 9.5 9.45
-デ 16114 9.38 9.62 9.27 9.51 9.64
-ト 16115 9.58 9.74 9.35 9.51 9.33
-ド 16116 9.63 9.75 9.45 9.68 9.62
-ナ 16117 9.11 9.35 9.08 9.37 9.31
-ニ 16118 8.01 8.31 8.62 8.93 9.17
-ヌ 16119 9.06 9.33 9.17 9.43 9.44
-ネ 16120 9.45 9.64 9.53 9.73 9.49
-ノ 16121 8.8 9.13 8.77 9.02 8.92
-ハ 16122 7.42 7.65 8.71 9 8.97
-バ 16123 8.16 8.44 8.82 9.07 9.34
-パ 16124 8.55 8.74 9.09 9.23 9.44
-ヒ 16125 8.79 9.06 9.33 9.51 9.46
-ビ 16126 9.2 9.35 9.7 9.83 9.74
-ピ 16127 9.39 9.55 9.83 9.92 9.89
-フ 16128 8.91 9.06 9.01 9.29 9.28
-ブ 16129 9.47 9.63 9.58 9.74 9.61
-プ 16130 9.56 9.67 9.31 9.51 9.72
-ヘ 16131 7.09 7.38 7.79 8.15 8.32
-ベ 16132 8.05 8.32 8.3 8.5 8.59
-ペ 16133 8.35 8.58 8.47 8.85 8.86
-ホ 16134 9.07 9.32 9.47 9.71 9.5
-ボ 16135 9.39 9.58 9.74 9.9 9.8
-ポ 16136 9.64 9.73 9.83 9.98 9.92
-マ 16137 8.1 8.38 8.95 9.19 9.16
-ミ 16138 9.25 9.47 9.25 9.51 9.4
-ム 16139 8.79 9.1 9.19 9.42 9.33
-メ 16140 8.88 9.18 8.95 9.18 9.15
-モ 16141 8.74 9 9.25 9.46 9.47
-ャ 16142 8.52 8.68 8.79 8.94 8.88
-ヤ 16143 8.98 9.19 9.37 9.53 9.41
-ュ 16144 7.76 7.99 8.31 8.62 8.79
-ユ 16145 8.09 8.33 8.7 9.01 9.25
-ョ 16146 8.38 8.55 8.83 9.11 9.19
-ヨ 16147 8.8 9.05 9.38 9.62 9.73
-ラ 16148 9.29 9.47 9.35 9.64 9.61
-リ 16149 9.75 9.89 9.64 9.84 9.69
-ル 16150 8.5 8.83 9.33 9.58 9.42
-レ 16151 8.35 8.71 9 9.18 9.17
-ロ 16152 8.42 8.71 9.23 9.47 9.59
-ヮ 16153 8.56 8.65 8.69 8.91 8.97
-ワ 16154 9.03 9.15 9.21 9.43 9.47
-ヰ 16155 9.35 9.58 9.31 9.59 9.42
-ヱ 16156 8.34 8.65 8.95 9.25 9.41
-ヲ 16157 9.17 9.39 9.27 9.49 9.49
-ン 16158 8.11 8.3 8.51 8.78 8.79
-ヴ 16159 9.47 9.62 9.49 9.69 9.63
-ヵ 16160 8.73 8.9 8.93 9.11 9
-ヶ 16161 8.53 8.64 8.41 8.66 8.69
-〃 15980 8.16 8.40 8.74 8.90 8.88
-〆 15981 8.94 9.09 8.99 9.14 9.04
-ヿ 15983 9.36 9.59 9.59 9.75 9.74
-ゟ 15984 9.81 9.96 9.75 9.82 9.79
-ゔ 16068 9.63 9.72 9.28 9.50 9.50
-ゕ 16069 8.41 8.60 8.61 8.80 8.85
-ゖ 16070 8.90 9.03 8.92 9.13 9.11
-ㇰ 16170 8.65 8.67 8.78 8.94 8.92
-ㇱ 16171 7.86 8.08 8.25 8.46 8.51
-ㇲ 16172 8.22 8.40 8.57 8.80 8.77
-ㇳ 16173 9.01 9.06 8.81 9.03 8.74
-ㇴ 16174 8.51 8.65 8.64 8.94 8.93
-ㇵ 16175 7.14 7.31 8.29 8.56 8.58
-ㇶ 16176 8.29 8.52 8.76 9.00 8.90
-ㇷ 16177 8.42 8.50 8.52 8.75 8.81
-ㇸ 16178 6.79 7.01 7.32 7.65 7.81
-ㇹ 16179 8.57 8.77 8.83 9.04 8.96
-ㇺ 16181 8.34 8.62 8.66 8.90 8.81
-ㇻ 16182 8.80 8.86 8.84 9.09 9.09
-ㇼ 16183 9.13 9.22 8.99 9.23 9.14
-ㇽ 16184 8.02 8.30 8.71 8.97 8.89
-ㇾ 16185 7.89 8.08 8.41 8.66 8.59
-ㇿ 16186 8.11 8.24 8.71 8.98 9.04
-ヷ 16187 9.42 9.66 9.44 9.78 9.75
-ヸ 16188 9.61 9.8 9.73 9.84 9.77
-ヹ 16189 8.94 9.28 9.56 9.80 9.88
-ヺ 16190 9.54 9.71 9.67 9.82 9.74
-end
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf b/Master/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf
deleted file mode 100755
index bcdd544a704..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf
+++ /dev/null
@@ -1,78 +0,0 @@
-#!/bin/sh
-
-#
-# This script is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
-#
-
-# setting for ovp2ovf & uppltotf
-. ./umakeotf_pre
-
-if test ! -d tfm; then
-mkdir tfm
-fi
-
-
-echo "making tfm ..."
-for series in nml exp ruby
-do
-for face in minr gothr minb gothb mgothr
-do
-$UPPLTOTF -kanji=uptex basepl/ubase-h.pl tfm/up${series}${face}-h.tfm
-$UPPLTOTF -kanji=uptex basepl/ubase-v.pl tfm/up${series}${face}-v.tfm
-done
-done
-#for extra fonts
-for series in nml exp ruby
-do
-for face in gotheb minl
-do
-$UPPLTOTF -kanji=uptex basepl/ubase-h.pl tfm/up${series}${face}-h.tfm
-$UPPLTOTF -kanji=uptex basepl/ubase-v.pl tfm/up${series}${face}-v.tfm
-done
-done
-
-
-echo "making vf (wait a while)..."
-for face in minr gothr minb gothb mgothr
-do
-./umkjvf -ucs -sp 1 -cq upnml${face}-h uph${face}-h
-./umkjvf -ucs -sp 1 -cm -cp upnml${face}-v uph${face}-v
-done
-#extra fonts
-for face in gotheb minl
-do
-./umkjvf -ucs -sp 1 -cq upnml${face}-h uph${face}-h
-./umkjvf -ucs -sp 1 -cm -cp upnml${face}-v uph${face}-v
-done
-
-echo "making alt. kana ..."
-for face in minr gothr minb gothb mgothr
-do
-./umkjvf -ucs -sp 1 -omitfw -cq -expert upexp${face}-h uph${face}-h cidj${face}
-./umkjvf -ucs -sp 1 -omitfw -cm -cp -expert upexp${face}-v uph${face}-v cidj${face}
-./umkjvf -ucs -sp 1 -omitfw -cq -ruby upruby${face}-h uph${face}-h cidj${face}
-./umkjvf -ucs -sp 1 -omitfw -cm -cp -ruby upruby${face}-v uph${face}-v cidj${face}
-done
-#extra fonts
-for face in gotheb minl
-do
-./umkjvf -ucs -sp 1 -omitfw -cq -expert upexp${face}-h uph${face}-h cidj${face}
-./umkjvf -ucs -sp 1 -omitfw -cm -cp -expert upexp${face}-v uph${face}-v cidj${face}
-./umkjvf -ucs -sp 1 -omitfw -cq -ruby upruby${face}-h uph${face}-h cidj${face}
-./umkjvf -ucs -sp 1 -omitfw -cm -cp -ruby upruby${face}-v uph${face}-v cidj${face}
-done
-
-
-echo "making tfm for supplementary plane ..."
-perl script/mktfm_sp.pl
-echo "making vf for supplementary plane ..."
-perl script/mkutfvf_sp.pl
-
-
-echo "finishing ..."
-if test ! -d vf; then
-mkdir vf
-fi
-mv *.vf vf/
-mv *.tfm tfm/
-rm -rf ovp
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf_brsg b/Master/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf_brsg
deleted file mode 100755
index 2296dc79293..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf_brsg
+++ /dev/null
@@ -1,65 +0,0 @@
-#!/bin/sh
-
-#
-# This script is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
-#
-
-# setting for ovp2ovf & uppltotf
-. ./umakeotf_pre
-
-if test ! -d tfm; then
-mkdir tfm
-fi
-
-
-echo "making tfm for burasage ..."
-for series in nml exp
-do
-for face in minr gothr minb gothb mgothr
-do
-$UPPLTOTF -kanji=uptex basepl/ubrsg-h.pl tfm/upbrsg${series}${face}-h.tfm
-$UPPLTOTF -kanji=uptex basepl/ubrsg-v.pl tfm/upbrsg${series}${face}-v.tfm
-done
-done
-#extra fonts
-for series in nml exp
-do
-for face in gotheb minl
-do
-$UPPLTOTF -kanji=uptex basepl/ubrsg-h.pl tfm/upbrsg${series}${face}-h.tfm
-$UPPLTOTF -kanji=uptex basepl/ubrsg-v.pl tfm/upbrsg${series}${face}-v.tfm
-done
-done
-
-
-echo "making vf for burasage ..."
-for face in minr gothr minb gothb mgothr
-do
-./umkjvf -ucs -sp 1 -sage -omitfw -cq upbrsgnml${face}-h uph${face}-h
-./umkjvf -ucs -sp 1 -sage -omitfw -cm -cp upbrsgnml${face}-v uph${face}-v
-done
-#extra fonts
-for face in gotheb minl
-do
-./umkjvf -ucs -sp 1 -sage -omitfw -cq upbrsgnml${face}-h uph${face}-h
-./umkjvf -ucs -sp 1 -sage -omitfw -cm -cp upbrsgnml${face}-v uph${face}-v
-done
-for face in minr gothr minb gothb mgothr
-do
-./umkjvf -ucs -sp 1 -sage -omitfw -cq -expert upbrsgexp${face}-h uph${face}-h cidj${face}
-./umkjvf -ucs -sp 1 -sage -omitfw -cm -cp -expert upbrsgexp${face}-v uph${face}-v cidj${face}
-done
-#extra fonts
-for face in gotheb minl
-do
-./umkjvf -ucs -sp 1 -sage -omitfw -cq -expert upbrsgexp${face}-h uph${face}-h cidj${face}
-./umkjvf -ucs -sp 1 -sage -omitfw -cm -cp -expert upbrsgexp${face}-v uph${face}-v cidj${face}
-done
-
-
-echo "finishing ..."
-if test ! -d vf; then
-mkdir vf
-fi
-mv *.vf vf/
-mv *.tfm tfm/
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf_jis04 b/Master/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf_jis04
deleted file mode 100755
index f02e69fd63c..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf_jis04
+++ /dev/null
@@ -1,112 +0,0 @@
-#!/bin/sh
-
-#
-# This script is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
-#
-
-# setting for ovp2ovf & uppltotf
-. ./umakeotf_pre
-
-if test ! -d tfm; then
-mkdir tfm
-fi
-
-
-echo "making tfm for jis2004 ..."
-for series in nml exp
-do
-for face in minr gothr minb gothb mgothr
-do
-$UPPLTOTF -kanji=uptex basepl/ubase-h.pl tfm/up${series}${face}n-h.tfm
-$UPPLTOTF -kanji=uptex basepl/ubase-v.pl tfm/up${series}${face}n-v.tfm
-done
-done
-#for extra fonts
-for series in nml exp
-do
-for face in gotheb minl
-do
-$UPPLTOTF -kanji=uptex basepl/ubase-h.pl tfm/up${series}${face}n-h.tfm
-$UPPLTOTF -kanji=uptex basepl/ubase-v.pl tfm/up${series}${face}n-v.tfm
-done
-done
-
-
-echo "making tfm for burasage & jis2004 ..."
-for series in nml exp
-do
-for face in minr gothr minb gothb mgothr
-do
-$UPPLTOTF -kanji=uptex basepl/ubrsg-h.pl tfm/upbrsg${series}${face}n-h.tfm
-$UPPLTOTF -kanji=uptex basepl/ubrsg-v.pl tfm/upbrsg${series}${face}n-v.tfm
-done
-done
-#for extra fonts
-for series in nml exp
-do
-for face in gotheb minl
-do
-$UPPLTOTF -kanji=uptex basepl/ubrsg-h.pl tfm/upbrsg${series}${face}n-h.tfm
-$UPPLTOTF -kanji=uptex basepl/ubrsg-v.pl tfm/upbrsg${series}${face}n-v.tfm
-done
-done
-
-
-echo "making vf for jis2004 ..."
-for face in minr gothr minb gothb mgothr
-do
-./umkjvf -ucs -sp 1 -cq upnml${face}n-h uph${face}n-h
-./umkjvf -ucs -sp 1 -cm -cp upnml${face}n-v uph${face}n-v
-done
-#extra fonts
-for face in gotheb minl
-do
-./umkjvf -ucs -sp 1 -cq upnml${face}n-h uph${face}n-h
-./umkjvf -ucs -sp 1 -cm -cp upnml${face}n-v uph${face}n-v
-done
-
-for face in minr gothr minb gothb mgothr
-do
-./umkjvf -ucs -sp 1 -omitfw -cq -expert upexp${face}n-h uph${face}n-h cidj${face}
-./umkjvf -ucs -sp 1 -omitfw -cm -cp -expert upexp${face}n-v uph${face}n-v cidj${face}
-done
-#extra fonts
-for face in gotheb minl
-do
-./umkjvf -ucs -sp 1 -omitfw -cq -expert upexp${face}n-h uph${face}n-h cidj${face}
-./umkjvf -ucs -sp 1 -omitfw -cm -cp -expert upexp${face}n-v uph${face}n-v cidj${face}
-done
-
-
-echo "making vf for burasage & jis2004 ..."
-for face in minr gothr minb gothb mgothr
-do
-./umkjvf -ucs -sp 1 -sage -omitfw -cq upbrsgnml${face}n-h uph${face}n-h
-./umkjvf -ucs -sp 1 -sage -omitfw -cm -cp upbrsgnml${face}n-v uph${face}n-v
-done
-#extra fonts
-for face in gotheb minl
-do
-./umkjvf -ucs -sp 1 -sage -omitfw -cq upbrsgnml${face}n-h uph${face}n-h
-./umkjvf -ucs -sp 1 -sage -omitfw -cm -cp upbrsgnml${face}n-v uph${face}n-v
-done
-
-for face in minr gothr minb gothb mgothr
-do
-./umkjvf -ucs -sp 1 -sage -omitfw -cq -expert upbrsgexp${face}n-h uph${face}n-h cidj${face}
-./umkjvf -ucs -sp 1 -sage -omitfw -cm -cp -expert upbrsgexp${face}n-v uph${face}n-v cidj${face}
-done
-#extra fonts
-for face in gotheb minl
-do
-./umkjvf -ucs -sp 1 -sage -omitfw -cq -expert upbrsgexp${face}n-h uph${face}n-h cidj${face}
-./umkjvf -ucs -sp 1 -sage -omitfw -cm -cp -expert upbrsgexp${face}n-v uph${face}n-v cidj${face}
-done
-
-
-echo "finishing ..."
-if test ! -d vf; then
-mkdir vf
-fi
-mv *.vf vf/
-mv *.tfm tfm/
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf_pre b/Master/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf_pre
deleted file mode 100644
index 1336cc21828..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf_pre
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/sh
-
-#
-# This script is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
-#
-
-# setting for ovp2ovf & uppltotf
-#OVP2OVF='omfonts -ovp2ovf'
-OVP2OVF=ovp2ovf
-export OVP2OVF
-UPPLTOTF=uppltotf
-
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf_prop b/Master/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf_prop
deleted file mode 100755
index 13b27d5152b..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/umakeotf_prop
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/bin/sh
-
-#
-# This script is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
-#
-
-# setting for ovp2ovf & uppltotf
-. ./umakeotf_pre
-
-if test ! -d tfm; then
-mkdir tfm
-fi
-if test ! -d vf; then
-mkdir vf
-fi
-if test ! -d ovp; then
-mkdir ovp
-fi
-
-echo "making proportional kana tfm/vf ..."
-perl -s script/umkpkana.pl -omitfw -hk
-perl -s script/umkvpkana.pl -omitfw
-
-for face in minw3 minw6 kakuw3 kakuw6 maruw4
-do
-$UPPLTOTF -kanji=uptex pl/upphira${face}-h.pl tfm/upphira${face}-h.tfm
-$UPPLTOTF -kanji=uptex pl/upphira${face}-v.pl tfm/upphira${face}-v.tfm
-done
-
-for face in minw3 minw6 kakuw3 kakuw6 maruw4
-do
-$OVP2OVF ovp/upphira${face}-h.ovp vf/upphira${face}-h.vf vf/upphira${face}-h.ofm
-$OVP2OVF ovp/upphira${face}-v.ovp vf/upphira${face}-v.vf vf/upphira${face}-v.ofm
-done
-
-rm vf/*.ofm
-rm -rf ovp
-rm -rf pl
diff --git a/Master/texmf-dist/source/fonts/japanese-otf-uptex/umkjvf b/Master/texmf-dist/source/fonts/japanese-otf-uptex/umkjvf
deleted file mode 100755
index f90f4a5a0aa..00000000000
--- a/Master/texmf-dist/source/fonts/japanese-otf-uptex/umkjvf
+++ /dev/null
@@ -1,962 +0,0 @@
-#!/usr/bin/perl
-###################
-### main part ###
-###################
-use FindBin;
-use lib "$FindBin::Bin/script";
-use CheckDVICode;
-#initialize
-&initialize_constant;
-#processing arguments
-&proc_arg;
-if ($sp==1) { # supplemental plane
- use MakeSPList;
- &make_sp_char_list('j');
- %exist_char=%{$MakeSPList::r_exist_char->{'j'}};
-}
-#make ovp
-&font_header;
-&write_char;
-#make vf & tfm
-&make_vf;
-&make_tfm;
-
-##########################
-#### dfn of sub rtns ###
-##########################
-sub initialize_constant{
- $unknown=0;
- $burasage=0;
- $jis2004=0;
- $minute_option=0;
- $alt_kana_true=0;
- $ruby_hira_code=0x356F;
- $ruby_kata_code=0x3751;
- $exp_hira_code_h=0x6F63;
- $exp_kata_code_h=0x313D;
- $exp_hira_code_v=0x325a;
- $exp_kata_code_v=0x3434;
- $ruby_font_map=2;
- $exp_font_map=2;
- @yoko_tfm_binary=(0x00, 0x0B, 0x00, 0x01, 0x00, 0x1B, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x14, 0x7B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xEB, 0x85, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00);
- @tate_tfm_binary=(0x00, 0x09, 0x00, 0x01, 0x00, 0x1B, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00);
- @yoko_ucs_tfm_binary=map{ hex($_) } qw/
- 00 0b 00 40 00 5c 00 02 00 00 00 01 00 03 00 02
- 00 02 00 01 00 00 00 00 00 00 00 09 00 00 00 00
- 00 a0 00 00 00 00 00 00 ff 61 00 01 ff 62 00 01
- ff 63 00 01 ff 64 00 01 ff 65 00 01 ff 66 00 01
- ff 67 00 01 ff 68 00 01 ff 69 00 01 ff 6a 00 01
- ff 6b 00 01 ff 6c 00 01 ff 6d 00 01 ff 6e 00 01
- ff 6f 00 01 ff 70 00 01 ff 71 00 01 ff 72 00 01
- ff 73 00 01 ff 74 00 01 ff 75 00 01 ff 76 00 01
- ff 77 00 01 ff 78 00 01 ff 79 00 01 ff 7a 00 01
- ff 7b 00 01 ff 7c 00 01 ff 7d 00 01 ff 7e 00 01
- ff 7f 00 01 ff 80 00 01 ff 81 00 01 ff 82 00 01
- ff 83 00 01 ff 84 00 01 ff 85 00 01 ff 86 00 01
- ff 87 00 01 ff 88 00 01 ff 89 00 01 ff 8a 00 01
- ff 8b 00 01 ff 8c 00 01 ff 8d 00 01 ff 8e 00 01
- ff 8f 00 01 ff 90 00 01 ff 91 00 01 ff 92 00 01
- ff 93 00 01 ff 94 00 01 ff 95 00 01 ff 96 00 01
- ff 97 00 01 ff 98 00 01 ff 99 00 01 ff 9a 00 01
- ff 9b 00 01 ff 9c 00 01 ff 9d 00 01 ff 9e 00 01
- ff 9f 00 01 02 11 00 00 01 11 00 00 00 00 00 00
- 00 08 00 00 00 10 00 00 00 00 00 00 00 0e 14 7b
- 00 00 00 00 00 01 eb 85 00 00 00 00 00 00 00 00
- 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 00
- 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- /;
- @minute_code=(0x216C, 0x216C, 0x216D, 0x216D);
- @shift_minute_code=(0x818C, 0x818C, 0x818D, 0x818D);
- @cid_minute_code=(0x6E3D, 0x6E3E, 0x6C44, 0x6C45);
- @cid_hquote_code=(0x3A4E, 0x3A4F, 0x3A50, 0x3A51); # CID: 670 .. 673
- @cid_vquote_code=(0x314A, 0x3143, 0x3148, 0x3145); # CID: 8282, 8275, 8280, 8277
- @ruby_odori_h=(0x3559, 0x355a, 0x355b, 0x355c, 0x3933);
- @ruby_odori_v=(0x3559, 0x355a, 0x355b, 0x355c, 0x3934);
- @exp_odori_h=(0x313a, 0x313b, 0x6f61, 0x6f62, 0x313c); # CID: 12362, 12363, 12273, 12274, 12364
- @exp_odori_v=(0x3431, 0x3432, 0x3258, 0x3259, 0x3433); # CID: 12545, 12456, 12457, 12274, 12547
- @cid_hkana_code=(0x3537 .. 0x356F, 0x3630 .. 0x3635); # CID: 327 .. 389
- %kaisei_jikei = (0x3029 => 8266, 0x3032 => 7961, 0x303B => 7634, 0x306E => 7635, 0x3071 => 7962, 0x3073 => 7636, 0x307C => 7637, 0x312A => 7638, 0x3139 => 20271, 0x313D => 7642, 0x3142 => 13650, 0x3228 => 7645, 0x3260 => 7647, 0x3267 => 7965, 0x3276 => 13673, 0x327A => 20269, 0x3322 => 7650, 0x336B => 7652, 0x3373 => 7653, 0x3378 => 20290, 0x344D => 7656, 0x3465 => 7657, 0x352B => 7658, 0x3540 => 7659, 0x3562 => 7966, 0x3564 => 20270, 0x3568 => 20263, 0x362A => 7661, 0x3642 => 7968, 0x364F => 7662, 0x3674 => 7664, 0x367B => 7665, 0x367D => 7666, 0x3729 => 20272, 0x3737 => 7668, 0x3764 => 20273, 0x3771 => 7674, 0x377E => 7676, 0x3830 => 20276, 0x3841 => 7678, 0x392B => 7679, 0x393C => 20279, 0x3974 => 7683, 0x3979 => 20284, 0x3A35 => 20281, 0x3A67 => 7686, 0x3B27 => 7688, 0x3B2A => 7689, 0x3B2C => 7690, 0x3B2D => 20280, 0x3B41 => 7970, 0x3C5D => 7695, 0x3C5E => 7696, 0x3D36 => 7698, 0x3D5D => 13460, 0x3D72 => 7701, 0x3D73 => 7702, 0x3E25 => 7703, 0x3E64 => 7708, 0x3E73 => 20282, 0x3F2A => 7709, 0x3F56 => 13860, 0x3F60 => 7711, 0x4022 => 7713, 0x4071 => 7716, 0x4079 => 7718, 0x407A => 7972, 0x407C => 7973, 0x407D => 7974, 0x4127 => 7720, 0x4139 => 7721, 0x414C => 7722, 0x4237 => 7975, 0x423D => 7726, 0x425C => 7728, 0x427D => 7733, 0x4329 => 7735, 0x432E => 7738, 0x4337 => 13915, 0x4370 => 7740, 0x4375 => 7741, 0x443D => 7743, 0x4448 => 7744, 0x444A => 7745, 0x4454 => 8267, 0x4472 => 20286, 0x4522 => 7748, 0x4527 => 7749, 0x452E => 7750, 0x4546 => 13949, 0x4548 => 7753, 0x454B => 7754, 0x4552 => 7756, 0x4654 => 7761, 0x465B => 20287, 0x4666 => 7766, 0x4667 => 7767, 0x466A => 7768, 0x4729 => 7769, 0x4757 => 7771, 0x4767 => 7772, 0x4769 => 7773, 0x477D => 20288, 0x4824 => 7775, 0x4840 => 7978, 0x4854 => 7778, 0x4870 => 13495, 0x4875 => 7780, 0x4923 => 7782, 0x492F => 7783, 0x4935 => 7785, 0x493F => 20222, 0x4940 => 7786, 0x494E => 7787, 0x4960 => 20289, 0x4A43 => 7789, 0x4A4D => 7790, 0x4A4E => 14013, 0x4A53 => 7979, 0x4A5A => 7791, 0x4A5C => 20291, 0x4A79 => 7792, 0x4B29 => 7794, 0x4B70 => 7796, 0x4B78 => 7980, 0x4C59 => 7798, 0x4C5F => 7799, 0x4C62 => 20293, 0x4C6C => 20294, 0x4C7A => 7801, 0x4C7C => 7802, 0x4D32 => 14074, 0x4E7A => 7809, 0x4E7B => 7810, 0x4E7C => 20265, 0x4F31 => 7812, 0x514D => 7817, 0x5257 => 14111, 0x527B => 20277, 0x535E => 7821, 0x5373 => 14116, 0x5751 => 13538, 0x5928 => 7991, 0x6044 => 20278, 0x6131 => 20267, 0x6134 => 20283, 0x6156 => 20175, 0x635E => 20285, 0x6427 => 20266, 0x6440 => 7997, 0x6727 => 20275, 0x675B => 14196, 0x676A => 20292, 0x694A => 20274, 0x6967 => 20296, 0x6A24 => 20295, 0x6B43 => 20268, 0x7057 => 13624, 0x7159 => 8003, 0x726D => 14272);
-}
-sub reorder_odoriji {
-=comment
-The order of odorijis in UCS is different from that in JIS
-JIS UCS
-0x2133 U+30FD # KATAKANA ITERATION MARK
-0x2134 U+30FE # KATAKANA VOICED ITERATION MARK
-0x2135 U+309D # HIRAGANA ITERATION MARK
-0x2136 U+309E # HIRAGANA VOICED ITERATION MARK
-0x213C U+30FC # KATAKANA-HIRAGANA PROLONGED SOUND MARK
-=cut
- my $ref;
- foreach $ref (\@ruby_odori_h, \@ruby_odori_v, \@exp_odori_h, \@exp_odori_v) {
- @$ref = @$ref[2..4, 0, 1];
- }
-}
-sub proc_arg {
- if ($#ARGV == -1) {&print_help;}
- GetOptions(\@ARGV, ['^-b', \$baseline_shift, 1], ['^-m', \$minute_option, 0], ['^-cm', \$cid_minute, 0], ['^-cq', \$cid_quote, 0], ['^-cp', \$comma_period, 0], ['^-chk', \$cid_hankana, 0], ['^-SJIS', \$sjis, 0], ['^-scale', \$scale, 1], ['^-notfm', \$without_tfm, 1], ['^-expert', \$expert, 0], ['^-ruby', \$ruby, 0], ['^-sage', \$burasage, 0], ['^-jp04', \$jis2004, 0], ['^-ucs', \$ucs, 0], ['^-omitfw', \$omitfw, 0], ['^-sp', \$sp, 1], ['^-ovp2ovf', \$ovp2ovf_command, 1], ['^-h(e|el|elp)?', \$help, 0], ['^-dbg', \$debug_mode, 0], ['^-(.+)', \$unknown, 0]);
- if ($unknown == 1){
- print "umkjvf: Unknown options!\n";
- &print_help;
- }
- if ($help == 1){&print_help;}
- if (($expert == 0) && ($ruby == 0)){
- if ($#ARGV <= 0) {
- print "umkjvf: Need two to three file arguments.\n";
- &print_help;
- }
- } elsif (($expert != 0) && ($ruby != 0)){
- print "umkjvf: You can't use \"-ruby\" and \"-expert\" at same time.\n";
- &print_help;
- } elsif (($scale != 0) && ($ruby != 0)){
- print "umkjvf: You can't use \"-ruby\" and \"-scale\" at same time.\n";
- &print_help;
- } elsif (($jis2004 != 0) && ($ruby != 0)){
- print "umkjvf: You can't use \"-ruby\" and \"-jp04\" at same time.\n";
- &print_help;
- } elsif (($jis2004 != 0) && ($sjis != 0)){
- print "umkjvf: You can't use \"-sjis\" and \"-jp04\" at same time.\n";
- &print_help;
- } elsif (($jis2004 != 0) && ($ucs != 0)){
- print "umkjvf: You can't use \"-ucs\" and \"-jp04\" at same time.\n";
- &print_help;
- } elsif (($omitfw != 0) && ($baseline_shift != 0)){
- print "umkjvf: You can't use \"-b\" and \"-omitfw\" at same time.\n";
- &print_help;
- } else {
- if ($#ARGV <= 1) {
- print "umkjvf: Need three file arguments for this option.\n";
- &print_help;
- }
- $alt_kana_true=1;
- }
- if ($scale < 0 || $scale >= 1){
- print "umkjvf: Invalid Scale!!\n";
- &print_help;
- }
- if ($scale == 0){$scale = 1;}
- if ($sjis != 0){$max_ku=120;}else{$max_ku=94;}
- if ($cid_minute != 0){$minute_option = 1;}
- if ($ucs){&reorder_odoriji; $CheckDVICode::is_ucs=$ucs;}
- $tfm_name = shift(@ARGV);
- $tfm_name =~ s/\.tfm//;
- $kanji_font = shift(@ARGV);
- $kanji_font =~ s/\.tfm//;
- $kana_font = shift(@ARGV);
- $kana_font =~ s/\.tfm//;
- &get_metric;
- $half_width= ($font_at / 2);
- $quater_width= ($font_at / 4);
- @minute_right=($font_at*0.1, $font_at*0.4, $font_at*0.1, $font_at*0.4);
- @minute_down=(-$font_at*0.65, $font_at*0.65, -$font_at*0.6, $font_at*0.6);
- #open output file
- open(OVP,">$tfm_name.ovp") || die "Can't make \'$tfm_name.ovp\'!\n";
- binmode(OVP);
-}
-sub font_header {
- print OVP "(VTITLE )\n";
- print OVP "(OFMLEVEL D 0)\n";
- print OVP "(DESIGNSIZE R 10.000000)\n";
- print OVP "(CHECKSUM O 0)\n";
- print OVP "(MAPFONT D 1\n";
- print OVP " (FONTNAME $kanji_font)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- printf OVP " (FONTAT R %f)\n",$font_at;
- printf OVP " (FONTDSIZE R %f)\n",$design_size;
- print OVP " )\n";
- if ($ruby == 1){
- &get_face;
- if ($direction eq "y"){
- print OVP "(MAPFONT D 2\n";
- print OVP " (FONTNAME $face"."3-h)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- print OVP " (FONTAT R 1.0)\n";
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- if ($ucs) {
- print OVP "(MAPFONT D 3\n";
- print OVP " (FONTNAME $face"."4-h)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- print OVP " (FONTAT R 1.0)\n";
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- }
- }elsif ($direction eq "t"){
- print OVP "(MAPFONT D 2\n";
- print OVP " (FONTNAME $face"."3-v)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- print OVP " (FONTAT R 1.0)\n";
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- if ($ucs) {
- print OVP "(MAPFONT D 3\n";
- print OVP " (FONTNAME $face"."4-v)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- print OVP " (FONTAT R 1.0)\n";
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- }
- }
- } elsif ($expert == 1) {
- &get_face;
- if ($direction eq "y"){
- print OVP "(MAPFONT D 2\n";
- print OVP " (FONTNAME $face"."2-h)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- printf OVP " (FONTAT R %f)\n",$scale;
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- print OVP "(MAPFONT D 3\n";
- print OVP " (FONTNAME $face"."3-h)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- printf OVP " (FONTAT R %f)\n",$scale;
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- }elsif ($direction eq "t"){
- print OVP "(MAPFONT D 2\n";
- print OVP " (FONTNAME $face"."3-v)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- printf OVP " (FONTAT R %f)\n",$scale;
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- if ($ucs) {
- print OVP "(MAPFONT D 3\n";
- print OVP " (FONTNAME $face"."4-v)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- printf OVP " (FONTAT R %f)\n",$scale;
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- }
- }
- } else {
- if ($kana_font ne ""){
- print OVP "(MAPFONT D 2\n";
- print OVP " (FONTNAME $kana_font)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- printf OVP " (FONTAT R %f)\n",$scale*$font_at;
- printf OVP " (FONTDSIZE R %f)\n",$design_size;
- print OVP " )\n";
- }
- }
- if ($cid_minute == 1){
- &get_face;
- if ($direction eq "t"){
- print OVP "(MAPFONT D 4\n";
- print OVP " (FONTNAME $face"."1-v)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- print OVP " (FONTAT R 1.0)\n";
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- print OVP "(MAPFONT D 5\n";
- print OVP " (FONTNAME $face"."2-v)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- print OVP " (FONTAT R 1.0)\n";
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- }
- }
- elsif ($cid_quote == 1){
- &get_face;
- if ($direction eq "y"){
- print OVP "(MAPFONT D 4\n";
- print OVP " (FONTNAME $face"."0-h)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- print OVP " (FONTAT R 1.0)\n";
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- }
- elsif ($direction eq "t"){
- print OVP "(MAPFONT D 4\n";
- print OVP " (FONTNAME $face"."2-v)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- print OVP " (FONTAT R 1.0)\n";
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- }
- }
- if ($jis2004 == 1){
- if($direction eq "y"){$temp_dir = "h"}elsif($direction eq "t"){$temp_dir = "v"}
- &get_face;
- print OVP "(MAPFONT D 4\n";
- print OVP " (FONTNAME $face"."1-$temp_dir)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- print OVP " (FONTAT R 1.0)\n";
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- print OVP "(MAPFONT D 5\n";
- print OVP " (FONTNAME $face"."2-$temp_dir)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- print OVP " (FONTAT R 1.0)\n";
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- print OVP "(MAPFONT D 6\n";
- print OVP " (FONTNAME $face"."3-$temp_dir)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- print OVP " (FONTAT R 1.0)\n";
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- print OVP "(MAPFONT D 7\n";
- print OVP " (FONTNAME $face"."4-$temp_dir)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- print OVP " (FONTAT R 1.0)\n";
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- print OVP "(MAPFONT D 8\n";
- print OVP " (FONTNAME $face"."5-$temp_dir)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- print OVP " (FONTAT R 1.0)\n";
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- }
- if ($cid_hankana == 1){
- &get_face;
- if ($direction eq "y"){
- print OVP "(MAPFONT D 6\n";
- print OVP " (FONTNAME $face"."0-h)\n";
- print OVP " (FONTCHECKSUM O 0)\n";
- print OVP " (FONTAT R 1.0)\n";
- print OVP " (FONTDSIZE R 10.0)\n";
- print OVP " )\n";
- }
- }
-}
-sub write_char {
- if (!$ucs) {
- for ($ku=1; $ku<=$max_ku; $ku++){
- for ($ten=1; $ten<=94; $ten++){
- $jiscode=($ku+32)*256+($ten+32);
- $CheckDVICode::dvicode=$dvicode=$jiscode;
- if($sjis == 1){
- &get_shift_jiscode;
- $char_code=$shift_jiscode;
- }else{
- $char_code=$jiscode;
- }
- if ($ruby==1){
- if ($ku==1){&print_kigo_char;}elsif($ku==4){&print_ruby_hira_char;}
- elsif($ku==5){&print_ruby_kata_char;}else{&print_char;}
- }elsif ($expert==1){
- if ($direction eq "y"){
- if ($ku==1){&print_kigo_char;}elsif($ku==4){&exp_hira_h_char;}
- elsif($ku==5){&exp_kata_h_char;}else{&print_char;}
- }elsif ($direction eq "t"){
- if ($ku==1){&print_kigo_char;}elsif($ku==4){&exp_hira_v_char;}
- elsif($ku==5){&exp_kata_v_char;}else{&print_char;}
- }
- }else{
- if ($ku==1){&print_kigo_char;}elsif($ku==4){&print_kana_char;}
- elsif($ku==5){&print_kana_char;}else{&print_char;}
- }
- }
- }
- } else { # ucs
- $max_ucs= $sp ? 0x2FA1F : 0xFFFF; # U+2FA1F: max of CJK Compatibility Ideographs Supplement
- for ($ucscode=0; $ucscode<=$max_ucs; $ucscode++){
- $CheckDVICode::dvicode=$dvicode=$ucscode;
- $char_code=$ucscode;
- next unless (&is_ucs_jpn_range);
- if ($sp==1 && $ucscode>0xFFFF) {
- next unless ($exist_char{sprintf("%X",$ucscode)});
- }
- if(&is_ucs_hankana && $direction eq "y"){
- &print_hankana_char;
- next;
- }
- if ($ruby==1){
- if (&is_ucs_kigo){&print_kigo_char;}
- elsif(&is_ucs_hira){&print_ruby_hira_char;}
- elsif(&is_ucs_kata){&print_ruby_kata_char;}
- else{&print_char;}
- }elsif ($expert==1){
- if ($direction eq "y"){
- if (&is_ucs_kigo){&print_kigo_char;}
- elsif(&is_ucs_hira){&exp_hira_h_char;}
- elsif(&is_ucs_kata){&exp_kata_h_char;}
- else{&print_char;}
- }elsif ($direction eq "t"){
- if (&is_ucs_kigo){&print_kigo_char;}
- elsif(&is_ucs_hira){&exp_hira_v_char;}
- elsif(&is_ucs_kata){&exp_kata_v_char;}
- else{&print_char;}
- }
- }else{
- if (&is_ucs_kigo){&print_kigo_char;}
- elsif(&is_ucs_hira){&print_kana_char;}
- elsif(&is_ucs_kata){&print_kana_char;}
- else{&print_char;}
- }
- }
- }
-}
-sub make_vf {
- my ($ovp2ovf);
-
- close(OVP);
- exit if $debug_mode;
-
- $ovp2ovf = 'ovp2ovf'; # use ovp2ovf WEB version in TeXLive svn r24922 or later if you use SP
- if (defined($ENV{'OVP2OVF'})) {
- $ovp2ovf = $ENV{'OVP2OVF'};
- }
- if ($ovp2ovf_command ne '') {
- $ovp2ovf = $ovp2ovf_command;
- }
- system("$ovp2ovf $tfm_name.ovp $tfm_name.vf $tfm_name.ofm");
- unlink "$tfm_name.ovp";
- unlink "$tfm_name.ofm";
-}
-sub make_tfm {
- open(KANJITFM,">$kanji_font.tfm") || die "Can't make \'$kanji_font.tfm\'!\n";
- binmode(KANJITFM);
- if ($direction eq "y") {
- my (@tfm) = $ucs ? @yoko_ucs_tfm_binary : @yoko_tfm_binary;
- foreach $binary(@tfm) {
- $_ = pack("C", $binary);
- print KANJITFM "$_";
- }
- } elsif ($direction eq "t") {
- foreach $binary(@tate_tfm_binary) {
- $_ = pack("C", $binary);
- print KANJITFM "$_";
- }
- } else {die "Unknown Direction!!\n";}
- if ($ruby==0 && $expert==0){
- if ($kana_font ne ""){
- open(KANATFM,">$kana_font.tfm") || die "Can't make \'$kana_font.tfm\'!\n";
- binmode(KANATFM);
- if ($direction eq "y") {
- foreach $binary(@yoko_tfm_binary) {
- $_ = pack("C", $binary);
- print KANATFM "$_";
- }
- } else {
- foreach $binary(@tate_tfm_binary) {
- $_ = pack("C", $binary);
- print KANATFM "$_";
- }
- }
- }
- }
-}
-##############################
-#### dfn of sub sub rtns ###
-##############################
-sub print_help {
- print "This is umkjvf version 0.14 (2014/3/22) by ttk\n";
- print "Based on mkjvf version 1.0b21 (2010/3/25) by psitau\n";
- print "Usage: umkjvf [option] <TFMfile> <PSfontTFM> [<PSfontTFM>]\n";
- print " -b <number> baseline shift\n";
- print " -m translate quotation mark to minute\n";
- print " -cm translate quotation mark to CID minute\n";
- print " -cq translate quotation mark to CID quotation (umkjvf extention)\n";
- print " -cp translate comma & period to KuTohTen\n";
- print " -chk translate hankaku kana to CID hankaku kana (umkjvf extention)\n";
- print " -notfm (h|v) don't read tfm\n";
- print " -ruby use ruby glyph for kana (for utf package)\n";
- print " -expert use alt. kana glyph for kana (for utf package)\n";
- print " -burasage make the width of kutoh-ten zero for burasage\n";
- print " -jp04 make a font mapped JIS X 0213:2004 glyphs\n";
- print " -ucs make ucs mapped vf (umkjvf extention)\n";
- print " -omitfw omit entries in vf for characters with default metric (umkjvf extention)\n";
- print " -sp <0--2> include supplemental plane (umkjvf extention)\n";
- print " -SJIS make shift jis mapped vf (experimental)\n";
- print " -scale <0--1> make kokana vf\n";
- print " -ovp2ovf <command> use ovp2ovf command\n";
- print " -dbg debug mode\n";
- print " -help print this message\n";
- exit;
-}
-sub GetOptions {
- my ($argv,@options)=@_;
- foreach (@options) {
- my ($regex,$ref,$takesarg)=@{$_};
- my @args=@{$argv};
- @{$argv}=();
- my $arg;
- argloop:
- while (($arg=shift @args) ne "") {
- if ($arg=~/$regex/) {
- my $val=1;
- if ($takesarg) { $val=shift @args; }
- if (ref($ref) eq 'CODE') { &$ref($val); }
- else { ${$ref}=$val; last argloop;}
- }
- else {
- push @{$argv},$arg;
- if ($arg eq '--') { last argloop; }
- }
- }
- push @{$argv},@args;
- }
-}
-sub get_metric{
- if ($without_tfm eq ""){
- &read_tfm;
- } elsif ($without_tfm eq "h") {
- $direction="y";
- $design_size=10;
- $font_at = 0.962216;
- if ($minute_option == 1){$minute_option = 0;}
- if ($comma_period == 1){$comma_period = 0;}
- } elsif ($without_tfm eq "v") {
- $direction="t";
- $design_size=10;
- $font_at = 0.962216;
- } else{
- die "Unknown Direction!!\n";
- }
-# print STDOUT "$design_size, $font_at\n";#debug
-}
-sub read_tfm{
- $alt_tfm_name=`kpsewhich $tfm_name.tfm`;
- chomp($alt_tfm_name);
- open (TFM, "<$tfm_name.tfm") || open (TFM, "<tfm/$tfm_name.tfm") || open (TFM, "<$alt_tfm_name") || die "Can't read tfm file!!\n";
- binmode(TFM);
- my($jfm_id, $nt, $lf, $lh, $bc, $ec, $nw, $nh, $nd, $ni, $nl, $nk, $ng, $np);
- my($data,$d_size,$data_length, @param);
- #first 7 word
- read(TFM, $_, 2);
- $jfm_id = unpack('n', $_);
-# printf STDOUT "JFM ID= %d\n",$jfm_id;#debug
- if ($jfm_id==0x0B) {
- $direction="y";
- if ($minute_option == 1){$minute_option = 0;}
-# print STDOUT "Direction is YOKO!!\n";#debug
- }elsif ($jfm_id==0x09){
- $direction="t";
-# print STDOUT "Direction is TATE!!\n";#debug
- }else{
- die "Unknown Direction!!\n";
- }
- read(TFM, $_, 26);
- ($nt, $lf, $lh, $bc, $ec, $nw, $nh, $nd, $ni, $nl, $nk, $ng, $np)= unpack('nnnnnnnnnnnnn', $_);
- #header
- read(TFM, $_, (4*$lh));
- ($data,$d_size)= unpack('NN',$_);
- $d_size=$d_size/(1<<20);;
- $data_length = ($nt+$ec-$bc+1+$nw+$nh+$nd+$ni+$nl+$nk+$ng)*4;
- read(TFM, $_, $data_length);
- read(TFM, $_, (4*$np));
- @param=unpack('NNNNNNNNN',$_);
- $zh = $param[4]/(1<<20);
- $zw = $param[5]/(1<<20);
- $design_size=$d_size;
- $font_at=$zw;
-# printf STDOUT "Design Size: %f, zw: %f, zh: %f\n",$d_size, $zw, $zh;#debug
-}
-sub get_face{
- if($kana_font eq "cidjminr"){
- $face="cidjmr";
- }elsif($kana_font eq "cidjgothr"){
- $face="cidjgr";
- }elsif($kana_font eq "cidjminb"){
- $face="cidjmb";
- }elsif($kana_font eq "cidjgothb"){
- $face="cidjgb";
- }elsif($kana_font eq "cidjmgothr"){
- $face="cidjmgr";
- }elsif($kana_font eq "cidjminl"){
- $face="cidjml";
- }elsif($kana_font eq "cidjgotheb"){
- $face="cidjge";
- }elsif($kana_font eq "cidmin"){
- $face="cidm";
- }elsif($kana_font eq "cidgoth"){
- $face="cidg";
- }elsif($kana_font eq ""){
- if($kanji_font =~ /hminr/){
- $face="cidjmr";
- }elsif($kanji_font =~ /hgothr/){
- $face="cidjgr";
- }elsif($kanji_font =~ /hminb/){
- $face="cidjmb";
- }elsif($kanji_font =~ /hgothb/){
- $face="cidjgb";
- }elsif($kanji_font =~ /hmgothr/){
- $face="cidjmgr";
- }elsif($kanji_font =~ /hminl/){
- $face="cidjml";
- }elsif($kanji_font =~ /hgotheb/){
- $face="cidjge";
- }
- }
-}
-sub baseline_shift{
- if ($baseline_shift != 0){
- $baseline_shift_amount=-($baseline_shift/1000)*$zh;
- printf OVP " (MOVEUP R %f)\n",$baseline_shift_amount;
- }
-}
-sub print_kigo_char{
- printf OVP "(CHARACTER H %X\n", $dvicode;
- if (&is_dvicode('quote') || &is_dvicode('kakko')){#Kakko
- $width=$half_width;
- } elsif (&is_dvicode('kutouten')){#Kutouten
- if (($burasage eq 1) && &is_dvicode('burasage')){#burasage
- $width=0;
- }else{
- $width=$half_width;
- }
- } else{
- $width=$font_at;
- }
- printf OVP " (CHARWD R %f)\n", $width;
- print OVP " (MAP\n";
- if (&is_dvicode('odoriji')){#odoriji
- if ($ruby==1){
- print OVP " (SELECTFONT D 2)\n";
- }elsif($expert==1){
- if ($direction eq "y"){
- if (&is_dvicode('hira-odoriji')){
- print OVP " (SELECTFONT D 2)\n";
- }else{
- print OVP " (SELECTFONT D 3)\n";
- }
- }else{
- print OVP " (SELECTFONT D 2)\n";
- }
- }elsif($kana_font ne ""){
- print OVP " (SELECTFONT D 2)\n";
- }
- }
- if ($cid_minute == 1){#cid_minute
- if (&is_dvicode('d-quote')){#double quatation->double minute
- print OVP " (SELECTFONT D 4)\n";
- }elsif (&is_dvicode('s-quote')){#single quatation->single minute
- print OVP " (SELECTFONT D 5)\n";
- }
- }
- elsif ($cid_quote == 1){#cid_quote
- if (&is_dvicode('quote')){
- print OVP " (SELECTFONT D 4)\n";
- }
- }
- &baseline_shift;
- if (&is_dvicode('odoriji')){#odoriji
- &scaled_shift;
- }
- if (&is_dvicode('colon') || &is_dvicode('semicolon') || &is_dvicode('nakaten')){#colon, semicolon, nakaten
- printf OVP " (MOVERIGHT R -%f)\n",$quater_width;}
- if (&is_dvicode('kakko') && &is_dvicode('open')){#Kakko
- printf OVP " (MOVERIGHT R -%f)\n",$half_width;
- }
- if (&is_dvicode('quote')){#quatation
- if ($minute_option == 1){#quatation -> minute
- if ($cid_minute == 1){
- if (&is_dvicode('open')){
- printf OVP " (MOVERIGHT R -%f)\n",$half_width;
- }
- $minute_char_code= shift(@cid_minute_code);
- printf OVP " (SETCHAR H %X)\n", $minute_char_code;
- }else{
- $minute_right_shift= shift(@minute_right);
- $minute_down_shift= shift(@minute_down);
- printf OVP " (MOVERIGHT R %f)\n", $minute_right_shift;
- printf OVP " (MOVEDOWN R %f)\n", $minute_down_shift;
- if (&is_dvicode('close')){
- print OVP " (SPECIAL ps: gsave currentpoint currentpoint translate 180 neg rotate neg exch neg exch translate)\n";
- }
- if ($sjis == 1){
- $minute_char_code= shift(@shift_minute_code);
- }else{
- $minute_char_code= shift(@minute_code);
- }
- printf OVP " (SETCHAR H %X)\n", $minute_char_code;
- if (&is_dvicode('close')){
- print OVP " (SPECIAL ps: currentpoint grestore moveto)\n";
- }
- }
- } elsif ($cid_quote == 1){
- if (&is_dvicode('open')){
- printf OVP " (MOVERIGHT R -%f)\n",$half_width;
- }
- if ($direction eq "y"){
- $quote_char_code= shift(@cid_hquote_code);
- }else{
- $quote_char_code= shift(@cid_vquote_code);
- }
- printf OVP " (SETCHAR H %X)\n", $quote_char_code;
- } else {
- if (&is_dvicode('open')){
- printf OVP " (MOVERIGHT R -%f)\n",$half_width;
- }
- printf OVP " (SETCHAR H %X)\n", $char_code;
- }
- } elsif (&is_dvicode('odoriji')){#odoriji
- if ($ruby==1){
- if ($direction eq "y"){
- $odorijicode= shift(@ruby_odori_h);
- }else{
- $odorijicode= shift(@ruby_odori_v);
- }
- }elsif($expert==1){
- if ($direction eq "y"){
- $odorijicode= shift(@exp_odori_h);
- }else{
- $odorijicode= shift(@exp_odori_v);
- }
- }elsif ($sjis==1){
- $odorijicode= $shift_jiscode;
- }else{
- $odorijicode= $dvicode;
- }
- printf OVP " (SETCHAR H %X)\n",$odorijicode;
- } elsif (&is_dvicode('comma') && $comma_period == 1){
- printf OVP " (SETCHAR H %X)\n", ($ucs ? 0x3001 : $char_code-2);
- } elsif (&is_dvicode('period') && $comma_period == 1){
- printf OVP " (SETCHAR H %X)\n", ($ucs ? 0x3002 : $char_code-2);
- }else {
- printf OVP " (SETCHAR H %X)\n",$char_code;
- }
- print OVP " )\n";
- print OVP " )\n";
-}
-sub print_char{
- $fontmap = 0;
- if (($jis2004 == 1) && (0x3029 <= $jiscode && $jiscode <= 0x726D)){
- if (exists $kaisei_jikei{$jiscode}){
- $cid = $kaisei_jikei{$jiscode};
- $fontmap = int($cid/4096)+3; ## $fontmap>=3
- $upper = int(($cid%4096)/64)+16;
- $lower = (($cid%4096)%64)+16;
-# printf STDOUT "%d, %d\n",$upper,$lower;
- $char_code = $upper*256+$lower+0x2020;
- }
- }
- if ($omitfw && $baseline_shift==0 && !$fontmap) {
- return if ($dvicode==$char_code);
- }
- printf OVP "(CHARACTER H %X\n", $dvicode;
- printf OVP " (CHARWD R %f)\n", $font_at;
- print OVP " (MAP\n";
- if ($fontmap) {
- printf OVP " (SELECTFONT D %d)\n", $fontmap;
- }
- &baseline_shift;
- printf OVP " (SETCHAR H %X)\n",$char_code;
- print OVP " )\n";
- print OVP " )\n";
-}
-sub print_kana_char{
- if ($omitfw && $baseline_shift==0 && $scale==1 && $kana_font eq "") {
- return if ($dvicode==$char_code);
- }
- printf OVP "(CHARACTER H %X\n", $dvicode;
- printf OVP " (CHARWD R %f)\n", $font_at;
- print OVP " (MAP\n";
- if ($kana_font ne ""){
- print OVP " (SELECTFONT D 2)\n";
- }
- &baseline_shift;
- &scaled_shift;
- printf OVP " (SETCHAR H %X)\n",$char_code;
- print OVP " )\n";
- print OVP " )\n";
-}
-sub print_hankana_char{
- printf OVP "(CHARACTER H %X\n", $dvicode;
- printf OVP " (CHARWD R %f)\n", $font_at/2.0;
- print OVP " (MAP\n";
- if ($cid_hankana == 1){
- print OVP " (SELECTFONT D 6)\n";
- }
- &baseline_shift;
- &scaled_shift;
- if ($cid_hankana == 1){
- $hkana_char_code= shift(@cid_hkana_code);
- printf OVP " (SETCHAR H %X)\n",$hkana_char_code;
- } else {
- printf OVP " (SETCHAR H %X)\n",$char_code;
- }
- print OVP " )\n";
- print OVP " )\n";
-}
-sub print_ruby_hira_char{
- if (&is_dvicode('hira-Vu')){$ruby_hira_code=0x3744;}
- if (&is_dvicode('hira-ka')){$ruby_hira_code=0x363A;}
- if (&is_dvicode('hira-ke')){$ruby_hira_code=0x3641;}
- $ruby_hira_code_orig=$ruby_hira_code;
- if ($direction eq "t"){&fix_ruby_hira_code;}
- printf OVP "(CHARACTER H %X\n", $dvicode;
- printf OVP " (CHARWD R %f)\n",$font_at;
- print OVP " (MAP\n";
- printf OVP " (SELECTFONT D %d)\n",$ruby_font_map;
- &baseline_shift;
- printf OVP " (SETCHAR H %X)\n", $ruby_hira_code;
- print OVP " )\n";
- print OVP " )\n";
- $ruby_hira_code=$ruby_hira_code_orig;
- $ruby_hira_code++;
- if ($ruby_hira_code == 0x3570){$ruby_hira_code=0x3630;}
- if ($ruby_hira_code == 0x3670){$ruby_hira_code=0x3730;}
- if ($ruby_hira_code == 0x363A){$ruby_hira_code=0x363B;}
- if ($ruby_hira_code == 0x3641){$ruby_hira_code=0x3642;}
-}
-sub print_ruby_kata_char{
- $ruby_kata_code_orig=$ruby_kata_code;
- if (&is_dvicode('kata-ka')){$ruby_kata_code=0x375C;}
- if (&is_dvicode('kata-ke')){$ruby_kata_code=0x3763;}
- if (&is_dvicode('kata-Va')){$ruby_kata_code_orig=$ruby_kata_code=0x306C;
- $ruby_font_map=3;} # JIS X 0213
- if (&is_dvicode('kata-ku')){$ruby_kata_code_orig=$ruby_kata_code=0x305B;} # JIS X 0213
- if (&is_dvicode('kata-mu')){$ruby_kata_code_orig=$ruby_kata_code=0x3066;} # JIS X 0213
- if ($direction eq "t"){&fix_ruby_kata_code;}
- printf OVP "(CHARACTER H %X\n", $dvicode;
- printf OVP " (CHARWD R %f)\n",$font_at;
- print OVP " (MAP\n";
- printf OVP " (SELECTFONT D %d)\n",$ruby_font_map;
- &baseline_shift;
- printf OVP " (SETCHAR H %X)\n", $ruby_kata_code;
- print OVP " )\n";
- print OVP " )\n";
- $ruby_kata_code=$ruby_kata_code_orig;
- $ruby_kata_code++;
- if ($ruby_kata_code == 0x3770){$ruby_kata_code=0x3830;}
- if ($ruby_kata_code == 0x375C){$ruby_kata_code=0x375D;}
- if ($ruby_kata_code == 0x3763){$ruby_kata_code=0x3764;}
-}
-sub exp_hira_h_char{
- if (&is_dvicode('hira-Vu')){$exp_hira_code_h=0x3139;$exp_font_map=3;} # JIS X 0213
- if (&is_dvicode('hira-ka')){$exp_hira_code_h=0x6f6d;$exp_font_map=2;} # JIS X 0213
- if (&is_dvicode('hira-ke')){$exp_hira_code_h=0x3034;$exp_font_map=3;} # JIS X 0213
- printf OVP "(CHARACTER H %X\n", $dvicode;
- printf OVP " (CHARWD R %f)\n",$font_at;
- print OVP " (MAP\n";
- printf OVP " (SELECTFONT D %d)\n", $exp_font_map;
- &baseline_shift;
- &scaled_shift;
- printf OVP " (SETCHAR H %X)\n", $exp_hira_code_h;
- print OVP " )\n";
- print OVP " )\n";
- $exp_hira_code_h++;
- if ($exp_hira_code_h == 0x6F70){$exp_hira_code_h=0x3030;$exp_font_map=3;}
- if ($exp_hira_code_h == 0x3070){$exp_hira_code_h=0x3130;}
- if ($exp_hira_code_h == 0x6f6d){$exp_hira_code_h++;}
- if ($exp_hira_code_h == 0x3034){$exp_hira_code_h++;}
- if ($exp_hira_code_h == 0x3037){$exp_hira_code_h++;}
-}
-sub exp_kata_h_char{
- if (&is_dvicode('kata-ka')){$exp_kata_code_h=0x3147;}
- if (&is_dvicode('kata-ke')){$exp_kata_code_h=0x314e;}
- if (&is_dvicode('kata-Va')){$exp_kata_code_h=0x3254;} # JIS X 0213
- if (&is_dvicode('kata-ku')){$exp_kata_code_h=0x6f5d;} # JIS X 0213
- if (&is_dvicode('kata-mu')){$exp_kata_code_h=0x6f68;} # JIS X 0213
- printf OVP "(CHARACTER H %X\n", $dvicode;
- printf OVP " (CHARWD R %f)\n",$font_at;
- print OVP " (MAP\n";
- print OVP " (SELECTFONT D 3)\n";
- &baseline_shift;
- &scaled_shift;
- printf OVP " (SETCHAR H %X)\n", $exp_kata_code_h;
- print OVP " )\n";
- print OVP " )\n";
- $exp_kata_code_h++;
- if ($exp_kata_code_h == 0x3170){$exp_kata_code_h=0x3230;}
- if ($exp_kata_code_h == 0x3147){$exp_kata_code_h++;}
- if ($exp_kata_code_h == 0x314e){$exp_kata_code_h++;}
- if ($exp_kata_code_h == 0x3151){$exp_kata_code_h++;}
-}
-sub exp_hira_v_char{
- if (&is_dvicode('hira-Vu')){$exp_hira_code_v=0x3430;$exp_font_map=2;} # JIS X 0213
- if (&is_dvicode('hira-ka')){$exp_hira_code_v=0x3264;$exp_font_map=2;} # JIS X 0213
- if (&is_dvicode('hira-ke')){$exp_hira_code_v=0x326b;$exp_font_map=2;} # JIS X 0213
- printf OVP "(CHARACTER H %X\n", $dvicode;
- printf OVP " (CHARWD R %f)\n",$font_at;
- print OVP " (MAP\n";
- printf OVP " (SELECTFONT D %d)\n", $exp_font_map;
- &baseline_shift;
- &scaled_shift;
- printf OVP " (SETCHAR H %X)\n", $exp_hira_code_v;
- print OVP " )\n";
- print OVP " )\n";
- $exp_hira_code_v++;
- if ($exp_hira_code_v == 0x3270){$exp_hira_code_v=0x3330;}
- if ($exp_hira_code_v == 0x3264){$exp_hira_code_v++;}
- if ($exp_hira_code_v == 0x326b){$exp_hira_code_v++;}
- if ($exp_hira_code_v == 0x326e){$exp_hira_code_v++;}
-}
-sub exp_kata_v_char{
- if (&is_dvicode('kata-ka')){$exp_kata_code_v=0x343e;}
- if (&is_dvicode('kata-ke')){$exp_kata_code_v=0x3445;}
- if (&is_dvicode('kata-Va')){$exp_kata_code_v=0x354b;} # JIS X 0213
- if (&is_dvicode('kata-ku')){$exp_kata_code_v=0x303b;$exp_font_map=3;} # JIS X 0213
- if (&is_dvicode('kata-mu')){$exp_kata_code_v=0x3046;} # JIS X 0213
- printf OVP "(CHARACTER H %X\n", $dvicode;
- printf OVP " (CHARWD R %f)\n",$font_at;
- print OVP " (MAP\n";
- printf OVP " (SELECTFONT D %d)\n", $exp_font_map;
- &baseline_shift;
- &scaled_shift;
- printf OVP " (SETCHAR H %X)\n", $exp_kata_code_v;
- print OVP " )\n";
- print OVP " )\n";
- $exp_kata_code_v++;
- if ($exp_kata_code_v == 0x3470){$exp_kata_code_v=0x3530;}
- if ($exp_kata_code_v == 0x343e){$exp_kata_code_v++;}
- if ($exp_kata_code_v == 0x3445){$exp_kata_code_v++;}
- if ($exp_kata_code_v == 0x3448){$exp_kata_code_v++;}
-}
-sub fix_ruby_hira_code{
- if (&is_dvicode('hira-a' )){$ruby_hira_code=0x3745;}#a
- if (&is_dvicode('hira-i' )){$ruby_hira_code=0x3746;}#i
- if (&is_dvicode('hira-u' )){$ruby_hira_code=0x3747;}#u
- if (&is_dvicode('hira-e' )){$ruby_hira_code=0x3748;}#e
- if (&is_dvicode('hira-o' )){$ruby_hira_code=0x3749;}#o
- if (&is_dvicode('hira-tsu')){$ruby_hira_code=0x374c;}#tsu
- if (&is_dvicode('hira-ya' )){$ruby_hira_code=0x374d;}#ya
- if (&is_dvicode('hira-yu' )){$ruby_hira_code=0x374e;}#yu
- if (&is_dvicode('hira-yo' )){$ruby_hira_code=0x374f;}#yo
- if (&is_dvicode('hira-wa' )){$ruby_hira_code=0x3750;}#wa
- if (&is_dvicode('hira-ka' )){$ruby_hira_code=0x374a;} # JIS X 0213
- if (&is_dvicode('hira-ke' )){$ruby_hira_code=0x374b;} # JIS X 0213
-}
-sub fix_ruby_kata_code{
- if (&is_dvicode('kata-a' )){$ruby_kata_code=0x3867;}#a
- if (&is_dvicode('kata-i' )){$ruby_kata_code=0x3868;}#i
- if (&is_dvicode('kata-u' )){$ruby_kata_code=0x3869;}#u
- if (&is_dvicode('kata-e' )){$ruby_kata_code=0x386a;}#e
- if (&is_dvicode('kata-o' )){$ruby_kata_code=0x386b;}#o
- if (&is_dvicode('kata-tsu')){$ruby_kata_code=0x386e;}#tsu
- if (&is_dvicode('kata-ya' )){$ruby_kata_code=0x386f;}#ya
- if (&is_dvicode('kata-yu' )){$ruby_kata_code=0x3930;}#yu
- if (&is_dvicode('kata-yo' )){$ruby_kata_code=0x3931;}#yo
- if (&is_dvicode('kata-wa' )){$ruby_kata_code=0x3932;}#wa
- if (&is_dvicode('kata-ka' )){$ruby_kata_code=0x386c;}#ka
- if (&is_dvicode('kata-ke' )){$ruby_kata_code=0x386d;}#ke
- if (&is_dvicode('kata-ku..ro')){$ruby_kata_code+=215;} # JIS X 0213
-}
-sub get_shift_jiscode{
- $c1=$ku+32;
- $c2=$ten+32;
- if ($c1 % 2) {
- $c1 = (($c1 + 1) / 2) + 0x70;
- $c2 = $c2 + 0x1f;
- } else {
- $c1 = ($c1 / 2) + 0x70;
- $c2 = $c2 + 0x7d;
- }
- if ($c1 >= 0xa0) {$c1 = $c1 + 0x40;}
- if ($c2 >= 0x7f) {$c2 = $c2 + 1;}
- $shift_jiscode=$c1*256+$c2;
-}
-sub scaled_shift{
- if ($scale != 1){
- $scaled_shift_amount=(1-$scale)*$font_at/2;
- printf OVP " (MOVERIGHT R %f)\n",$scaled_shift_amount;
- if ($direction eq "y"){
- $scaled_v_shift_amount=(1-$scale)*$font_at*0.38;
- printf OVP " (MOVEUP R %f)\n",$scaled_v_shift_amount;
- }
- }
-}
-
-
-__END__
-0xFF5F: JIS X 0213 1-02-54 FULLWIDTH LEFT WHITE PARENTHESIS 始め二重バーレーン
-0x3018: JIS X 0213 1-02-56 LEFT WHITE TORTOISE SHELL BRACKET 始め二重亀甲括弧
-0x3016: JIS X 0213 1-02-58 LEFT WHITE LENTICULAR BRACKET 始めすみ付き括弧(白)
-0x301D: JIS X 0213 1-13-64 REVERSED DOUBLE PRIME QUOTATION MARK 始めダブルミニュート
-0xFF60: JIS X 0213 1-02-55 FULLWIDTH RIGHT WHITE PARENTHESIS 終わり二重バーレーン
-0x3019: JIS X 0213 1-02-57 RIGHT WHITE TORTOISE SHELL BRACKET 終わり二重亀甲括弧
-0x3017: JIS X 0213 1-02-59 RIGHT WHITE LENTICULAR BRACKET 終わりすみ付き括弧(白)
-0x301F: JIS X 0213 1-13-65 LOW DOUBLE PRIME QUOTATION MARK 終わりダブルミニュート