Thread View: fj.lang.pascal
3 messages
3 total messages
Started by Atsushi Asano
Sat, 08 Feb 1997 00:00
Character shifted 90 degree !?
Author: Atsushi Asano
Date: Sat, 08 Feb 1997 00:00
Date: Sat, 08 Feb 1997 00:00
17 lines
1013 bytes
1013 bytes
浅野@防大と申します。 今、Delphi2でプログラムを作成しているのですが、 文字をCanvasに描画するのにTextOutという 命令を用いてます。 グラフの縦軸にキャプションなどを書くときには、 縦軸方向に横文字で書くのが普通です。 縦軸方向に縦文字(国語の教科書のように)では書きません。 そこで90度シフトした文字を描画したいのですが、 その方法はどのようにしたら、良いのでしょうか? それともできないのでしょうか? おわかりになる方、教えていただきたいのです。 よろしくお願いいたします。
Re: Character shifted 90 degree !?
Author: MB1 Sakamoto
Date: Tue, 11 Feb 1997 00:00
Date: Tue, 11 Feb 1997 00:00
41 lines
2056 bytes
2056 bytes
$B:dK\!w%"%s%j%D$G$9!#(B
<5dhdtc$36k@cmnews.nda.ac.jp>$B$N5-;v$K$*$$$F(B
asanoa@cc.nda.ac.jp$B$5$s$O=q$-$^$7$?!#(B
>> $B@uLn!wKIBg$H?=$7$^$9!#(B
>>
>> $B:#!"#D#e#l#p#h#i#2$G%W%m%0%i%`$r:n@.$7$F$$$k$N$G$9$,!"(B
>> $BJ8;z$r#C#a#n#v#a#s$KIA2h$9$k$N$K#T#e#x#t#O#u#t$H$$$&(B
>> $BL?Na$rMQ$$$F$^$9!#(B
>>
>> $B%0%i%U$N=D<4$K%-%c%W%7%g%s$J$I$r=q$/$H$-$K$O!"(B
>> $B=D<4J}8~$K2#J8;z$G=q$/$N$,IaDL$G$9!#(B
>> $B=D<4J}8~$K=DJ8;z!J9q8l$N652J=q$N$h$&$K!K$G$O=q$-$^$;$s!#(B
>>
>> $B$=$3$G#9#0EY%7%U%H$7$?J8;z$rIA2h$7$?$$$N$G$9$,!"(B
>> $B$=$NJ}K!$O$I$N$h$&$K$7$?$i!"NI$$$N$G$7$g$&$+!)(B
>> $B$=$l$H$b$G$-$J$$$N$G$7$g$&$+!)(B
>>
>> $B$*$o$+$j$K$J$kJ}!"65$($F$$$?$@$-$?$$$N$G$9!#(B
>> $B$h$m$7$/$*4j$$$$$?$7$^$9!#(B
$B$3$NOCBj$O!"(BMS-Windows$B0MB8$NOCBj$G$9$N$G!"(B
fj.os.ms-windows.programming
$B$K%]%9%H$9$k$Y$-$b$N$G$"$k$H;W$$$^$9!#(B
$B$H$j$"$($:!">e5-$O(BMS-Windows API$B$N(BCreateFont$B$r;HMQ$9$l$P2DG=$G$9!#(B
Form1$B$N(BOnPaint$B$G0J2<$N$h$&$K5-=R$9$l$P<B8=$G$-$k$H;W$$$^$9!#(B
Procedure TForm1.Paint(Sender: TObject);
var
Tmp: array [0..63] of Char;
begin
Canvas.Font.Handle := CreateFont(16, 0, 900, 0, FW_DONTCARE, 0, 0, 0,
DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS,
DEFAULT_QUALITY, DEFAULT_PITCH, StrPCopy(Tmp, Font.Name));
Canvas.TextOut(Width div 2, Height div 2, '$B=D=q$-(B');
end;
---------------------------------------------------------------------
sakamoto@acmid1.anritsu.co.jp
Re: Character shifted 90 degree !?
Author: Atsushi Asano
Date: Wed, 12 Feb 1997 00:00
Date: Wed, 12 Feb 1997 00:00
34 lines
1882 bytes
1882 bytes
元記事を書いた浅野@防大です。 >坂本@アンリツです。 >この話題は、MS-Windows依存の話題ですので、 > fj.os.ms-windows.programming >にポストするべきものであると思います。 すみませんでした。WIndows依存なのかどうかもわからなかった もので、Delphiでできるのかどうか知りたかったわけです。 以後、注意したいと思います。 しかしながら、Delphiの話題でもあると考えられるので、 こういった場合、クロスポストする方が良いと考えますが、いかがでしょう? > >とりあえず、上記はMS-Windows APIのCreateFontを使用すれば可能です。 >Form1のOnPaintで以下のように記述すれば実現できると思います。 > >Procedure TForm1.Paint(Sender: TObject); >var > Tmp: array [0..63] of Char; >begin > Canvas.Font.Handle := CreateFont(16, 0, 900, 0, FW_DONTCARE, 0, 0, 0, > DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, > DEFAULT_QUALITY, DEFAULT_PITCH, StrPCopy(Tmp, Font.Name)); > Canvas.TextOut(Width div 2, Height div 2, '縦書き'); >end; 他の方からもメールで、以上のようにWindowsAPIでFontを作成すれば 良いということを教えていただきました。 坂本様、メールしてくださった有馬様、岡本様ありがとうございました。 失礼しました。
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads