Referate Meniu
Astronomie
Biologie
Chimie
Desen
Diverse
Drept
Economie
Engleza
Filozofie
Fizica
Franceza
Geografie
Germana
Informatica
Istorie
Italiana
Marketing
Matematica
Medicina
Muzica
Psihologie
Romana
Romana1
Spaniola


 


referat, proiect, rezumat, caracterizare, lucrare de nota 10 despre:

SUBROGRAME ORIENTATE SPRE TEXTE, Aplicatie, Probelma rezolvata

SUBROGRAME ORIENTATE SPRE TEXTE

45343boq66nix3y

 

9.1 Proceduri si functii

45343boq66nix3y

 

Set text Style

Procedura SetTextStyle defineste foma caracterelor textului ce se vor utiliza la scrierea textelor, directia de scriere precum si dimensiunea caracterelor. oi343b5466niix

Procedura este definita astfel:

Procedure SetTextStyle(font:word;dir:word;dimcar:word);

Font defineste numarul seturilor de caractere, dir stabileste directia de scriere, iar dimcar dimensiunea caracterelor.

Variabila font poate sa ia urmatoarele valori:

Const

DefaultFont=0 ;

TriplexFont=1;

SmallFont=2;

SansserifFont=3;

GothicFont=4;

Caracterele implicite sunt desemnate de constanta Default-Font. Celelate tipuri de caractere sunt depuse in fisiere de tip *.CHR.

In cazul in care aceste fisiere nu se gasesc vor fi utilizate caracterele implicite chiar daca variabila font arata o alta valoare.

Variabila dir de tip word stabileste directia scrieri si poate sa ia urmatoarele valori:

 

 

Const

HorizDir=0;

VertDir=1;

HorizDir stabileste scrierea de stanga la dreapta;

VertDir stabileste scrierea de jos in sus.

Valoare implicita este HorizDir.

Variabila DimCar de tip word fixeaza dimensiunea caracterelor: valoarea n=1 inseamna marimea normala (implicita) a caracterelor,valoarea n>1 inseamna marirea de n ori a dimensiunii implicite.

Aceasta variabila poate sa ia si valoarea predefinita UserCharSize, caz in care dimensiunea implicita poate fi modoficata de procedura SetUserCharSize.

SetUserCharSize

Procedura SetUserCharSize este definita astfel:

ProcedureSetUserCharSize(multx,divx,multy,divy:word);

Latimea normala este inmultita cu valoarea raportului Multx:Divy,iar inaltimea noramala este imultita cu valoarea raportului MultyDivy. Prin fixarea acestore parametri utilizatorul poate sa defineasca inaltimea si latimea proprie a caracterelor speciale.

SetTextJustify

Procedura SetTextJustify fixeaza valorile de aliniere ale textului. Aceste valori sunt utilizate de procedurile de editare propriuzise. Procedura este definita astfel:

Procedure SetTextJustify(oriz,vert:word);

Oriz stabileste alinierea orizontala;

Vert alinierea verticala.

Penbtru stabilirea alinieri pot fi utilizate urmaatoarele constante predefinite:

Const

{alinierea orizontala}

LeftText=0; {stanga}

CenterText=1; {centru}

RighText=2; {dreapta}

{alinierea verticala}

BottmText=0; {jos}

CenterText=1; {centru}

TopText=2; {sus}

GetTextSettings

Procedura GetTextSetting retuneaza numarul setului de caractere, directia de scriere dimensiunea caracterelor valoarea alinieri verticale si orizontale utilizate actual.

Procedura este definita astfel:

Proceduere GetTextSettings(var infotext:TextSetingsType);

Infotext este de tip predefinit TextSetingsType si va contine informatii referitoare la text.

Tipul este definit astfel:

Type TextSettingsType=record

Font:word; {numar set de caractere}

Direction:word; {directia scrieri}

Charsize:word; {dimensiunea}

Horiz:word; {alinierea orizontala}

Vert:word; {alinierea verticala}

end;

TextHeight

Functia TextHeight returneaza inaltomea unui lant de caractere in puncte imagine (pixeli).

Functia este definita astfel:

Function TextHeight (lc:string):word;

Lc reprezinta lantul de caractere.

TextWidth

Functia TextWidth returneaza latimea unui lant de caractere in pixeli.

Functia este definita astfel:

Function Textwidht (lc:string):word;

Lc reprezinta lantul de caractere.

OutText

Procedura OutText trimite un sir de caractere la dispozitivul standard de iesire cordonatele punctului de inceput al textului fiind determinata de pozitia pointerului actual.

Textul scris va apare conform informatiilor stabilite de procedurile SetTextStyle,SetUserCharSize si SetTextJustify.

Procedura este definita astfel:

Procedure OutText (lc:string);

Lc contine textul ce se va scrie.

OutTextxy

Procedura OutTextxy trimite un sir de caractere la dispozitivul standard de iesire, coordonatele punctului de inceput al textului sunt determinate de coordonatele (x,y) ale ecreanului (si nu de pozitia pointer-ului actual).

Textul scris va apare conform informatiilor stabilite de procedurile SetTextStyle, SetUserCharSize si SetTextJustify.

Procedura este definita astfel:

Procedure OutTextxy (x,y:integer;lc:string);

Lc contine textul ce se va scrie .

 

45343boq66nix3y

 

9.2Aplicatie

 

Programul texte arata modul de folosire a procedurilor si funtiilor de utilizare a caracterelor in modul grafic, setarile acestora, marimea de scriere a caracterelor si ditectia de scriere.

Program texte;

Uses CRT,GRAPH;

Var gd,gm:integer;

Y,Size,linie:integer;

Begin

GD:=detect;

InitGraph(gd,gm,`c:\bp\bgi`);

If GraphResult<>grOK then

Halt(1);

Y:=0;

For size:=1 to 4do

Begin

SetTextStyle(DefaultFont,HorizDir,Size);

OutTextXY(0,y,`size= `+Chr(Size+48));

Inc(YtextHeight(`H`)+1);

End

SetTextStyle(DefaultFont,HorizDir,1);

SetTextJustify(CenterText, CenterText);

OutTextXY(Succ(GetMaxX)div2,Succ(GetMaxY)div2,`Textul centrat in centrul ecranului`);

ReadKey;

ClearDevice;

SetTextJustify(CenterText,CenterText);

OutTextXY(Succ(GetMaxX)div2,GetMaxY-10,`textul centrat in partea de jos a ecranului`);

ReadKey;

ClearDevice

SetTextJustify(CenterText, CenterText);

OutTextXY(Succ(GetMaxX)div2,10,`textul centrat in partea de jos a ecranului`);

Readln;

CloseGraph;

End.