Mercurial > emacs
comparison lisp/composite.el @ 98122:e3d5c2e9ec89
(compose-gstring-for-graphic): Fix previous change.
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Wed, 10 Sep 2008 05:48:37 +0000 |
parents | 43a801a18b24 |
children | 79c848cc0c06 |
comparison
equal
deleted
inserted
replaced
98121:4ef95817eae2 | 98122:e3d5c2e9ec89 |
---|---|
577 (rb (lglyph-rbearing glyph)) | 577 (rb (lglyph-rbearing glyph)) |
578 (as (lglyph-ascent glyph)) | 578 (as (lglyph-ascent glyph)) |
579 (de (lglyph-descent glyph)) | 579 (de (lglyph-descent glyph)) |
580 (ce (/ (+ lb rb) 2)) | 580 (ce (/ (+ lb rb) 2)) |
581 xoff yoff) | 581 xoff yoff) |
582 (if (and | 582 (when (and class (>= class 200) (<= class 240)) |
583 class (>= class 200) (<= class 240) | 583 (setq xoff 0 yoff 0) |
584 (cond | 584 (cond |
585 ((= class 200) | 585 ((= class 200) |
586 (setq xoff (- lbearing ce) | 586 (setq xoff (- lbearing ce) |
587 yoff (if (> as 0) 0 (+ descent as)))) | 587 yoff (if (> as 0) 0 (+ descent as)))) |
588 ((= class 202) | 588 ((= class 202) |
589 (if (> as 0) (setq as 0)) | 589 (if (> as 0) (setq as 0)) |
590 (setq xoff (- center ce) | 590 (setq xoff (- center ce) |
591 yoff (if (> as 0) 0 (+ descent as)))) | 591 yoff (if (> as 0) 0 (+ descent as)))) |
592 ((= class 204) | 592 ((= class 204) |
593 (if (> as 0) (setq as 0)) | 593 (if (> as 0) (setq as 0)) |
594 (setq xoff (- rbearing ce) | 594 (setq xoff (- rbearing ce) |
595 yoff (if (> as 0) 0 (+ descent as)))) | 595 yoff (if (> as 0) 0 (+ descent as)))) |
596 ((= class 208) | 596 ((= class 208) |
597 (setq xoff (- lbearing rb))) | 597 (setq xoff (- lbearing rb))) |
598 ((= class 210) | 598 ((= class 210) |
599 (setq xoff (- rbearing lb))) | 599 (setq xoff (- rbearing lb))) |
600 ((= class 212) | 600 ((= class 212) |
601 (setq xoff (- lbearing ce) | 601 (setq xoff (- lbearing ce) |
602 yoff (if (>= de 0) 0 (- ascent (- de))))) | 602 yoff (if (>= de 0) 0 (- (- ascent) de)))) |
603 ((= class 214) | 603 ((= class 214) |
604 (setq xoff (- center ce) | 604 (setq xoff (- center ce) |
605 yoff (if (>= de 0) 0 (- ascent (- de))))) | 605 yoff (if (>= de 0) 0 (- (- ascent) de)))) |
606 ((= class 216) | 606 ((= class 216) |
607 (setq xoff (- rbearing ce) | 607 (setq xoff (- rbearing ce) |
608 yoff (if (>= de 0) 0 (- ascent (- de))))) | 608 yoff (if (>= de 0) 0 (- (- ascent) de)))) |
609 ((= class 218) | 609 ((= class 218) |
610 (setq xoff (- lbearing ce) | 610 (setq xoff (- lbearing ce) |
611 yoff (if (> as 0) 0 (+ descent as gap)))) | 611 yoff (if (> as 0) 0 (+ descent as gap)))) |
612 ((= class 220) | 612 ((= class 220) |
613 (setq xoff (- center ce) | 613 (setq xoff (- center ce) |
614 yoff (if (> as 0) 0 (+ descent as gap)))) | 614 yoff (if (> as 0) 0 (+ descent as gap)))) |
615 ((= class 222) | 615 ((= class 222) |
616 (setq xoff (- rbearing ce) | 616 (setq xoff (- rbearing ce) |
617 yoff (if (> as 0) 0 (+ descent as gap)))) | 617 yoff (if (> as 0) 0 (+ descent as gap)))) |
618 ((= class 224) | 618 ((= class 224) |
619 (setq xoff (- lbearing rb))) | 619 (setq xoff (- lbearing rb))) |
620 ((= class 226) | 620 ((= class 226) |
621 (setq xoff (- rbearing lb))) | 621 (setq xoff (- rbearing lb))) |
622 ((= class 228) | 622 ((= class 228) |
623 (setq xoff (- lbearing ce) | 623 (setq xoff (- lbearing ce) |
624 yoff (if (>= de 0) 0 (- ascent (- de) gap)))) | 624 yoff (if (>= de 0) 0 (- (- ascent) de gap)))) |
625 ((= class 230) | 625 ((= class 230) |
626 (setq xoff (- center ce) | 626 (setq xoff (- center ce) |
627 yoff (if (>= de 0) 0 (- ascent (- de) gap)))) | 627 yoff (if (>= de 0) 0 (- (- ascent) de gap)))) |
628 ((= class 232) | 628 ((= class 232) |
629 (setq xoff (- rbearing ce) | 629 (setq xoff (- rbearing ce) |
630 yoff (if (>= de 0) 0 (- ascent (- de) gap)))))) | 630 yoff (if (>= de 0) 0 (- (+ ascent de) gap))))) |
631 (lglyph-set-adjustment glyph (- xoff width) yoff)))))) | 631 (lglyph-set-adjustment glyph (- xoff width) yoff) |
632 (setq lb (+ lb xoff) | |
633 rb (+ lb xoff) | |
634 as (- as yoff) | |
635 de (+ de yoff))) | |
636 (if (< ascent as) | |
637 (setq ascent as)) | |
638 (if (< descent de) | |
639 (setq descent de)))))) | |
632 (let ((i 0)) | 640 (let ((i 0)) |
633 (while (and (< i nglyphs) (setq glyph (lgstring-glyph gstring i))) | 641 (while (and (< i nglyphs) (setq glyph (lgstring-glyph gstring i))) |
634 (lglyph-set-from-to glyph 0 (1- nchars)) | 642 (lglyph-set-from-to glyph 0 (1- nchars)) |
635 (setq i (1+ i)))) | 643 (setq i (1+ i)))) |
636 gstring)))))) | 644 gstring)))))) |