[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

[meadow-develop:1997/306]BDF font setting



From: Miyashita Hisashi(宮下 尚:HIMI) <himi@xxxxxxxxxxxxxxxxxxxxxxxxx>
Subject: [meadow-develop:1997/301]BDF font setting
Date: 20 Dec 1997 12:48:08 -0800

北口@奈良先端大 です。

> BDF fontを使っていると落ちる可能性が増すみたいですので、
> どなたか、BDF fontの設定例と、bitmap-mule, X-Faceとかの
> 落ちやすい設定例をお願いします。
> # このMLに流してください。

私の設定(Alpha 3.00 用)から抜粋です。

これで html-helper-mode + font-lock-mode にすると(SKK もかな?)、
時々落ちます。もしくは、変な動作(設定をいじってないのに C の
プログラムのインデントが狂い出す、とか)が始まり、そのまま使って
いるとやはり落ちます。また Abort せずにアプリケーションエラーの
窓が出たこともあります。


# しかし、ちょくちょく落ちるのって私のところだけ?
# そんなに日頃の行いが悪いのでしょうか...(^^;

--==| Shuichi Kitaguchi : shuuic-k@xxxxxxxxxxxxxxxxxx |
    |     / kit@xxxxxxx / shkit@xxxxxxxxxxxxxxxxxxxxx |==--


  (defun normal-font-regist (fontname bdffile &optional encoding)
    (if (null encoding) (setq encoding 0))
    (let ((bdfatt (w32-get-logfont-info (list 'bdf-font bdffile))))
      (if bdfatt
	  (progn
	    (cond ((symbolp encoding)
		   (setq bdfatt (append (list
					 (cons 'encoder encoding)
					 (cons 'encoding-type 0))
					bdfatt)))
		  ((numberp encoding)
		   (setq bdfatt (cons (cons 'encoding-type encoding)
				      bdfatt))))
	    (w32-add-font fontname bdfatt)
	    (w32-change-font-logfont fontname 0
				     (list 'bdf-font bdffile))))))
  
  (defun create-font-from-logfont (name logfont-list &optional encoding-type alist)
    (if (null encoding-type) (setq encoding-type 0))
    (let ((prop (append (list (cons 'encoding-type encoding-type))
			alist 
			(w32-get-logfont-info (car logfont-list))))
	  (i 0)
	  logfont)
      (w32-add-font name prop)
      (while (setq logfont (car logfont-list))
	(w32-change-font-logfont name i logfont)
	(setq i (1+ i))
	(setq logfont-list (cdr logfont-list)))))
  
  (let ((font "Courier-16"))
    (create-font-from-logfont
     font
     '((w32-logfont "Courier New" 0 -16 400 0 nil nil nil 0 1 3 49)
       (w32-logfont "Courier New" 0 -16 700 0 nil nil nil 0 1 3 49)
       (w32-logfont "Courier New" 0 -16 400 0 t nil nil 0 1 3 49)
       (w32-logfont "Courier New" 0 -16 700 0 t nil nil 0 1 3 49))))
  
  (let ((font "Courier-16-ISO-8859-1"))
    (create-font-from-logfont
     font
     '((w32-logfont "Courier New" 0 -16 400 0 nil nil nil 0 1 3 49)
       (w32-logfont "Courier New" 0 -16 700 0 nil nil nil 0 1 3 49)
       (w32-logfont "Courier New" 0 -16 400 0 t nil nil 0 1 3 49)
       (w32-logfont "Courier New" 0 -16 700 0 t nil nil 0 1 3 49))
     1))
  
  (let ((font "Nihongo-16")
	(logfont 
	 '(w32-logfont "MS Gothic" 0 -16 400 0 nil nil nil 128 1 3 49))
	(logfonti
	 '(w32-logfont "MS Mincho" 0 -16 400 0 nil nil nil 128 1 3 17)))
    (create-font-from-logfont
     font
     (list logfont
	   (change-logfont-weight logfont 300)
	   logfonti
	   (change-logfont-weight logfonti 300))
     4))

  (w32-add-font "Hojokanji-16"
		'((default-ascent . 0)
		  (relative-compose . 0)
		  (encoding-type . 0)
		  (overhang . 0)
		  (base . 13)
		  (height . 15)
		  (width . 14)))
  (w32-change-font-logfont
   "Hojokanji-16" 0 
   (list 'bdf-font
	 "H:/Meadow/bdf/min-1-16.bdf"))

  (w32-add-font "Kanji-16"
		'((default-ascent . 0)
		  (relative-compose . 0)
		  (encoding-type . 0)
		  (overhang . 0)
		  (base . 14)
		  (height . 16)
		  (width . 16)))
  (w32-change-font-logfont
   "Kanji-16" 0 
   (list 'bdf-font
	 "H:/Meadow/bdf/x68k.bdf"))

  (w32-add-font "RK-16"
		'((default-ascent . 0)
		  (relative-compose . 0)
		  (encoding-type . 0)
		  (overhang . 0)
		  (base . 14)
		  (height . 16)
		  (width . 8)))
  (w32-change-font-logfont
   "RK-16" 0 
   (list 'bdf-font
	 "H:/Meadow/bdf/8x16.bdf"))
  (w32-add-font "Bitmap-16"
		'((default-ascent . 0)
		  (relative-compose . 0)
		  (overhang . 0)
		  (base . 14)
		  (height . 16)
		  (width . 8)
		  (encoding-type . 0)))
  (w32-change-font-logfont
   "Bitmap-16" 0
   (list 'bdf-font
	 "H:/Meadow/bdf/etl8x16-bitmap.bdf"))
  (require 'bitmap)
  
  (new-fontset "private-fontset" '((ascii . "RK-16")
				   (latin-iso8859-1 . "Courier-16-ISO-8859-1")
				   (katakana-jisx0201 . "Kanji-16")
				   (japanese-jisx0208 . "Kanji-16")
				   (latin-jisx0201 . "Kanji-16")
				   (japanese-jisx0212 . "Hojokanji-16")
				   (bitmap . "Bitmap-16")))