0
Tải bản đầy đủ (.doc) (196 trang)

Xử lý văn bản trên màn hình đồ hoạ:

Một phần của tài liệu TÀI LIỆU VÀ CÂU HỎI ÔN TẬP C++ (Trang 192 -196 )

Hiển thị văn bản trên màn hình đồ hoạ: Hàm:

void outtext(char *s);

cho hiện chuỗi ký tự ( do con trỏ s trỏ tới ) tại vị trí con trỏ đồ hoạ hiện thời.

Hàm:

void outtextxy(int x, int y,char *s);

cho hiện chuỗi ký tự ( do con trỏ s trỏ tới ) tại vị trí (x,y).

Ví dụ:

Hai cách viết dưới đây:

outtextxy(50,50," Say HELLO"); và

moveto(50,50);

outtext(" Say HELLO"); cho cùng kết quả.

Sử dụng các Fonts chữ:

Các Fonts chữ nằm trong các tập tin *.CHR trên đĩa. Các Fonts này cho các kích thước và kiểu chữ khác nhau, chúng sẽ được hiển thị lên màn hình bằng các hàm outtext và outtextxy. Để chọn và nạp Fonts ta dùng hàm:

void settextstyle(int font, int direction, int charsize);

Tham số font để chọn kiểu chữ và nhận một trong các hằng sau: DEFAULT_FONT=0 TRIPLEX_FONT=1 SMALL_FONT=2 SANS_SERIF_FONT=3 GOTHIC_FONT=4

Tham số derection để chọn hướng chữ và nhận một trong các hằng sau:

HORIZ_DIR=0 văn bản hiển thị theo hướng nằm ngang từ trái qua phải.

VERT_DIR=1 văn bản hiển thị theo hướng thẳng đứng từ dưới lên trên.

Tham số charsize là hệ số phóng to của ký tự và có giá trị trong khoảng từ 1 đến 10.

Khi charsize=1, font hiển thị trong hình chữ nhật 8*8 pixel.

Khi charsize=2 font hiển thị trong hình chữ nhật 16*16 pixel.

...

Khi charsize=10, font hiển thị trong hình chữ nhật 80*80 pixel.

Các giá trị do settextstyle lập ra sẽ giữ nguyên tới khi gọi một settextstyle mới.

Ví dụ:

Các dòng lệnh:

settextstyle(3,VERT_DIR,2);

outtextxy(30,30,"GODS TRUST YOU"); sẽ hiển thị tại vị trí (30,30) dòng chữ GODS TRUST YOU theo chiều từ dưới lên trên, font chữ chọn là SANS_SERIF_FONT và cỡ chữ là 2.

Đạt vị trí hiển thị của các xâu ký tự cho bởi

outtext và outtextxy:

Hàm settextjustify cho phép chỉ định ra nơi hiển thị văn bản của outtext theo quan hệ với vị trí hiện tại của con chạy và của outtextxy theo quan hệ với toạ độ (x,y);

void settextjustify(int horiz, int vert);

Tham số horiz có thể là một trong các hằng số sau: LEFT_TEXT=0 ( Văn bản xuất hiện bên phải con chạy).

CENTER_TEXT ( Chỉnh tâm văn bản theo vị trí con chạy).

RIGHT_TEXT (Văn bản xuất hiện bên trái con chạy).

Tham số vert có thể là một trong các hằng số sau: BOTTOM_TEXT=0 ( Văn bản xuất hiện phía trên con chạy).

CENTER_TEXT=1 ( Chỉnh tâm văn bản theo vị trí con chạy).

TOP_TEXT=2 ( Văn bản xuất hiện phía dưới con chạy).

Ví dụ:

settextjustify(1,1);

outtextxy(100,100,"ABC");

sẽ cho dòng chữ ABC trong đó điểm (100,100) sẽ nằm dưới chữ B.

Bề rộng và chiều cao của kí tự: Chiều cao:

Hàm:

textheight(char *s);

cho chiều cao ( tính bằng pixel ) của chuỗi do con trỏ s trỏ tới.

Ví dụ 1:

Với font bit map và hệ số phóng đại là 1 thì textheight("A") ch giá trị là 8. Ví dụ 2: #include "stdio.h" #include "graphics.h" main()

{ int mh=mode=DETECT, y,size;

initgraph(mh,mode,"C:\\TC\\BGI"); y=10; settextjustify(0,0); for (size=1;size<5;++size) { settextstyle(0,0,size); outtextxy(0,y,"SACRIFICE"); y+=textheight("SACRIFICE")+10; } getch(); closegraph(); } Bề rộng của kí tự:

Hàm: textwidth(char *s); cho bề rộng chuỗi (tính theo pixel) mà con trỏ s trỏ tới dựa trên chiều dài chuỗi, kích thước font chữ, hệ số phóng đại.

Một phần của tài liệu TÀI LIỆU VÀ CÂU HỎI ÔN TẬP C++ (Trang 192 -196 )

×