Суз боши Borland С++ графикасига кириш


Download 299 Kb.
bet4/7
Sana22.02.2023
Hajmi299 Kb.
#1222106
1   2   3   4   5   6   7
Bog'liq
Borland C графикаси

Киймати Белгили узгармас Шрифт тоифаси
0 DEFAULT_FONT уз-узидан
1 TRIPLEX_FONT триплекс
2 SMALL_FONT кичик 3 SANS_SERIF_FONT сансериф
4 GOTIC_FONT готик
Агар дастурда settextstyle функциясига мурожаат килинмаса , у холда шрифт жимлик коидаси буйича ( font= DEFAULT_FONT) таналанади. Белгилар бу шрифтда алохида нукталар ёрдамида шакллантирилади. Бошка типдаги шрифтларда белгилар белгилар штрилар ёрдамида терилади, тугри чизик кесими ёрдамида.
Иккинчи аргументнинг direction киймати сифатида куйидаги белгили узгармаслар узлаштирилиши мумкин:
Киймати Белгили узгармаслар Йуналиши

0 HORIZ_DIR Горизонтал


1 VERT_DIR Вертикал

Уз-узидан HORIZ_DIR киймати узлаштирилади. Агар VERT_DIR киймати узлаштирилган булса, у холда сатр соат стрелкаси буйича 90 градусга бурилади.


Учинчи аргумент charsize белги улчамини аниклайди. i=1,2,.... 10 кийматларни бериш билан белги улчамини бошкариш мумкин. charsize= i да экранда нукта ёрдамида хосил килинган белгилар 8ix8i нуктали улчамдаги туртбурчакни шаклини эгаллаб туради.
Агар штрих ёрдамида тасвирланадиган белгилар ишлатилса, у холда белгилар улчамини янада ихчамрок куринишда ифодалаш имкони пайдо булади. Бу холда settextstyleфункциясининг учинчи аргументи charsize параметрига 0 =киймати узлаштирилиб, GRAPHICS.H файлида USER­_CHAR_SIZE=0 белгили узгармас аникланади. Энди setusercharsize функциясини куллаш мумкин, унинг куриниши
void far setusercharsize(int multx,int divx,intmulty, int divy);
multx,divx,multy,divy параметрлари белгининг кенглиги ва баландлиги масштаблаштириш учун ишлатилади: кенглик уз-узидан multx:divx муносабат билан масштаблаштирилади, баландлик эса multy:divy муносабат билан. Масалан, жимлик коидасидагитдан уч марта кенгрок ва икки марта балндрок булиши учун куйидаги кийматлар узлаштирилади:
multx =3 divx=1
multy =5 divy=2.
Кесишиши нуктаси сифатида матн сатрини тасвирлашда биринчи белгининг чап юкори бурчаги курситилган эди. Умуман олганда куйидагича эълон килинган функцияни ишлатиш мумкин.
void far settextjustify(int horiz,int vert);
Бу ерда белгили узгармас сифатида ишлатиладиган иккала аргумент хам 0,1,2 кийматларни узлаштириши мумкин:


Киймти Белгили узгармаслар Номаланиши
0 LEFT_TEXT_BOTTOM_TEXT чапдан пастга
1 CENTER_TEXT уртага
2 RIGHT_TEXT_TOP_TEXT унгга юкорига

Турбо Си да шрифтларни куллашга мисол келтирамиз. Turbo C сатри вертикал равишда “триплекс” типдаги шрифтда тасвирланади.


/* FONTDEMO */
/*График режимда сатрни ифодалаш*/
#include graphics.h
main()
{ int dY,XC;
initgr();
settextjustify(CENTER_TEXT,CENTER_TEXT);
settextstyle(TRIPLEX_FONT,VERT_DIR,3);
outtextxy(XC,dY,”Turbo C”);
endgr();
}
Дастур ишлаши давомида график амалларни бажаришда хатолик юзага келиши мумкин. Хатоларни кайта ишлаш учун, дастурни авария куринишини тухтатиш учун куйидаги функциялар хизмат килади:
graphresult() – охирги график амални бажаришда юз берган хатолик кодини кайтаради;
grapherrormsg()- берилган кодга мос хатолик сатрини кайтаради.
График кутубхона функциясини чакиришда хатолик юз берса, ички хатолик коди урнатилади. graphresult() функцияси хатолик кодини кайтаради, grapherrormsg(graphresult()) функцияни чакириш эса хатолик хакида хабар беради. Куйидаги дастур кодида график режимни тугри ташкил килишда маслахат беради(изох билан ).
{
/*Видеоадаптер максимал иш режимини аниклаш сурови */
int driver=DETECT, gmode, errorcode;
/*графикни яратиш */
initgraph(& graphdriver, &gmode,””);
/*ициализации натижасини олиш*/
errorcode= graphresult();
if(errorcode !=grOk) /*агар хатолик юз берса*/
{
printf(“Хатлик:% s\n”, grapherrormsg(errorcode));
printf( “Ишини тухтатиш учун ихтиёрий тугмани босинг \n”);
getch();
exit(1); /* Дастур ишини тугаллаш/
}
}

4-жадвалда 4 та хатолик коди ва макрослари хакида хабар берилган


4-жадвал
­ ­­­­­­­­­­­­­­­­­­­­­­___________________________________________________________________________



Download 299 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling