[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]
Re: [MD:4201] Re: bdffont
- X-ml-count: 4254
- Subject: Re: [MD:4201] Re: bdffont
- From: MIYASHITA Hisashi(宮下 尚:HIMI) <himi@xxxxxxxxxxx>
- Date: Mon, 24 Feb 2003 05:01:28 +0900
- User-agent: Wanderlust/2.5.7 (Smooth) SEMI/1.14.3 (Ushinoya) FLIM/1.14.2 (Yagi-Nishiguchi) APEL/10.3 Emacs/21.1 (i386-msvc-nt5.1.2600) MULE/5.0 (SAKAKI) Meadow/1.99 Alpha4 (KUROGANE)
At Thu, 20 Feb 2003 04:39:17 +0900,
MIYASHITA Hisashi(宮下 尚:HIMI) wrote:
> さて、encoding_typeで、fontのcodepointのdimension sizeを
> 暗黙的に、指定するというのはどうかと思うので、この辺の指定を
> dimで統一した方が良いように思えます。世の中には、4byte単位で
> 指定するという、とんでもないfontも存在しますので。
>
> で、dimが指定されていないときは、encoding_typeの指定に従って、dimを
> 自動設定するというのが良さそうです。
この辺のことを考えていたんですが、大体現状の設計は複雑すぎてばかげているように
思えてきました。いい加減、昔の悪いところは切り捨ててしまおうかと思います。
encoder, encoding_typeが分かれているのがそもそも混乱の元です。
そこで、
encoding
というキーを新設し、dim, encoder, encoding-typeは廃止します。
encodingは、以下の値をとります。
nil ... これが、default。charset dimensionの値に従って、internal codepointそのままを
fontのcode pointとする。現状での、encoding_type == 0に相当。
MSB1 ... fontのcode pointは、1byte。MSBを立てる。
MSB2 ... fontのcode pointは、2byte。MSBを立てる。
sjis ... Shift JIS形式でencodingする。
ucs ... Unicode形式でencodingする。
<encoder> ... 外部encoderを用いる。w32-regist-font-encoderで登録したencoderで
無くてはならない。w32-regist-font-encoderには、もう一つ引数を加えて、
(w32-regist-font-encoder <name> <real-encoder> <font-codepoint-dimension>)
という形式にして、fontのcode pointのbyte数を指定する。
こんな感じでどうかな。
でも、こんな修正すると、low level APIを使っている人たちへの波及効果は絶大
なんですよね。^^;;; やっちゃっていいですかね?
from himi