1个回答
展开全部
执行一些绘图过程之前必须调用InitGraph过程,否则将产生错误。
提示:GRAPH单元一般是用来做那种程序的,这种程序退出时要靠单机哪或按什么键的。如果不是做这种程序,是很难看到效果的。
1、Procedure Arc (X,Y : Integer; start,stop, radius : Word);
以x,y为中心画一部分圆,参数radius为半径,从角start开始,到角stop结束。
这些角度是逆时针测量的。{好像是画圆弧}
2、Procedure Bar (X1,Y1,X2,Y2 : Integer);
画一个矩形,起始点是(X1,X2),结束点是(X2,Y2),并用当前颜色和填充模式填充。
3、Procedure Bar3D (X1,Y1,X2,Y2 : Integer; depth : Word; Top : Boolean);
画一个三维矩形,起始点是(X1,X2),结束点是(X2,Y2),并用当前颜色和填充模式填充。
depth指定显示深度的像素数。如果Top为True,则绘制一个三维的顶部。
4、Procedure Circle (X,Y : Integer; Radius : Word);
画一个圆形,以(X,Y)为圆心,Radius为半径。
5、Procedure ClearDevice ;
清除屏幕上的图形,光标转到(1,1)。
6、Procedure ClearViewPort ;
清除当前视图,光标转到(1,1)。
7、Procedure CloseGraph ;
关闭图形系统,恢复到激活图形模式之前的模式。
8、Procedure DetectGraph (Var Driver, Modus : Integer);
检查计算机的硬件和驱动程序来确定屏幕可用,分别靠参数Driver和Modus返回,
在InitGraph过程中可能用到。
9、Procedure DrawPoly (NumberOfPoints : Word; Var PolyPoints);
使用当前颜色和线条风格绘制一个边数为NumberOfPoints的多边形,PolyPoints
是一个为PointType的记录。
10、Procedure Ellipse (X,Y : Integer; Start,Stop,XRadius,YRadius : Word);
以(X,Y)为中心绘制椭圆的一部分,XRadius、YRadius为椭圆的水平和垂直半径,
Start、Stop为这部分椭圆的开始和结束角,它们是逆时针从X轴开始衡量的(
3时等于0度)。
11、Procedure FillEllipse (X,Y : Integer; Xradius,YRadius: Word);
以(X,Y)为中心绘制椭圆,XRadius、YRadius为椭圆的水平和垂直半径,椭圆以
当前颜色和填充样式填充。
12、Procedure FillPoly (NumberOfPoints : Word; Var PolyPoints);
绘制一个边数为NumberOfPoints的多边形,并以当前颜色和填充模式填充。
PolyPoints是一个为PointType的记录。
13、Procedure FloodFill (X,Y : Integer; BorderColor : Word);
用BorderColor颜色填充(X,Y) 以内的所有地方。
14、Procedure GetArcCoords (Var ArcCoords : ArcCoordsType);
返回最后一次执行 Arc或Ellipse时的坐标。
15、Procedure GetAspectRatio (Var Xasp,Yasp : Word);
设置屏幕的有效分辨率,纵横比为Xasp/Yasp。
16、Function GetBkColor : Word;
返回当前的背景颜色。
17、Function GetColor : Word;
返回当前的绘图颜色。
18、Procedure GetDefaultPalette (Var Palette : PaletteType);
用Palette返回当前的调色板。
19、Function GetDriverName : String;
返回一个字符串,其中包含了当前的驱动程序名称。
20、Procedure GetFillPattern (Var FillPattern : FillPatternType);
用FillPattern返回当前填充颜色。
21、Procedure GetFillSettings (Var FillInfo : FillSettingsType);
用FillInfo返回当前填充设置。
22、Function GetGraphMode : Integer;
返回当前的图像模式。
23、Procedure GetImage (X1,Y1,X2,Y2 : Integer, Var Bitmap;
输出一幅位图到屏幕(x1,Y1)到(X2,Y2)区域。
24、Procedure GetLineSettings (Var LineInfo : LineSettingsType);
用LineInfo返回当前行设置。
25、Function GetMaxColor : Word;
返回最大可设定颜色数,但对于Turbo Pascal这个颜色
并不总是保证是白色的(例如在256 +彩色模式)。
26、Function GetMaxMode : Word;
返回当前驱动器的最高运作模式。
27、Function GetMaxX : Word;
返回屏幕最大水平长度。
28、Function GetMaxY : Word;
返回屏幕最多可容纳几行。
29、Function GetModeName (Var modus : Integer) : String;
返回modus代表的模式名称。
30、Procedure GetModeRange (Driver : Integer; LoModus, HiModus: Integer);
返回当前驱动器最高和最低的运作模式。如果没有模式支持这个驱动器,则HiModus值为-1。
31、Procedure GetPalette (Var Palette : PaletteType);
用Palette返回当前调色板。
32、Function GetPaletteSize : Word;
返回当前调色板项的最大数目。
33、Function GetPixel (X,Y : Integer) : Word;
返回(X,Y)处的颜色。
34、Procedure GetTextSettings (Var TextInfo : TextSettingsType);
返回当前文字样式:字体、方向、大小、位置。
35、Procedure GetViewSettings (Var ViewPort : ViewPortType);
返回当前视口和剪辑设置。
36、Function GetX : Integer;
返回图形指针在当前窗口中的横坐标。
37、Function GetY : Integer;
返回图形指针在当前窗口中的纵坐标。
38、Procedure GraphDefaults ;
重置视点,调色板,前景和背景图案,线条风格和模式的所有设置,填充样式,填充颜色和图案,字体,文本的位置和文本的大小。
39、Function GraphErrorMsg (ErrorCode : Integer) : String;
返回一个字符串描述ErrorCode表示的错误。这个字符串可以用来让用户知道哪里出了问题。
39、Function GraphResult : Integer;
返回在过去图形操作中产生的错误代码,如果返回值为0,则代表没有错误产生。
如果返回的不是0,则代表有错误产生,除了在屏幕上画东西的所有操作,下面
过程也可能产生一个非0的错误代码。
InstallUserFont 、SetLineStyle、SetWriteMode、SetFillStyle、SetTextJustify、SetGraphMode、SetTextStyle
40、Function ImageSize (X1,Y1,X2,Y2 : Integer) : Word;
返回存储定义矩形图像(X1,Y1)到(X2,Y2)所需字节数。
41、Procedure InitGraph (var GraphDriver,GraphModus : integer; const PathToDriver : string);
初始化图形包,GraphDriver有两个值:如果GraphDriver=0,则执行一个自动
检测并初始化最颜色尽可能高的模式,1024×768×64K是驱动器可能支持的分辨
率的最大数值。如果你需要一个更高的分辨率,你必须编辑MODES.PPI,如果你需要
其他模式,就将GraphDriver设置成不同于0和graphmode的模式数值。PathToDriver
是BGI文件夹路径。
例子:
var
gd,gm : integer;
PathToDriver : string;
begin
gd:=detect; { highest possible resolution }
gm:=0; { not needed, auto detection }
PathToDriver:='C:\PP\BGI'; { path to BGI fonts,
drivers aren't needed }
InitGraph(gd,gm,PathToDriver);
if GraphResult<>grok then
halt; { whatever you need }
CloseGraph; { restores the old graphics mode }
end.
42、Function InstallUserDriver (DriverPath : String; AutoDetectPtr: Pointer) : Integer;
添加设备驱动器DriverPath到BGI驱动器列表。AutoDetectPtr是一个指针。
43、Function InstallUserFont (FontPath : String) : Integer;
添加一个字体FontPath到BGI系统字体列表。
44、Procedure Line (X1,Y1,X2,Y2 : Integer);
用当前颜色和线条模式画一条线,起始点是(X1,Y1),终止点是(X2,Y2),光标
转至(X2,Y2).
45、Procedure LineRel (DX,DY : Integer);
用当前颜色和线条模式绘制一条从当前点到指定点的线(DX,DY是相对于当前位置,指定位置为
(当前位置横坐标+DX,当前位置纵坐标+DY)),指针转到线的末端。
46、Procedure LineTo (DX,DY : Integer);
同LineRel.
47、Procedure MoveRel (DX,DY : Integer;
将指针移到(DX,DY)(相对于当前指针的位置)。
48、Procedure MoveTo (X,Y : Integer;
将指针移至(X,Y)。
49、Procedure OutText (Const TextString : String);
用当前字体和文本设置在当前指针位置输出TextString,指针移到文本末端。
50、Procedure OutTextXY (X,Y : Integer; Const TextString : String);
用当前字体和文本设置将TextString输出到(X,Y)处,指针移到文本末端。
51、Procedure PieSlice (X,Y : Integer; Start,Stop,Radius : Word);
绘制并填充圆心为(X,Y)的圆,半径为Radius,起始角为Start,结束角为Stop。
52、Procedure PutImage (X1,Y1 : Integer; Var Bitmap; How : word) ;
输出位图Bitmap在(X1,Y1),How确定如何将位图放在屏幕上。可能的值是:
CopyPut
XORPut
ORPut
AndPut
NotPut
53、Procedure PutPixel (X,Y : Integer; Color : Word);
将指针转到(X,Y),并设置颜色为Color。
54、Procedure Rectangle (X1,Y1,X2,Y2 : Integer);
用当前颜色和样式绘制一个矩形,起始点为(X1,Y1),结束点为(X2,Y2)。
55、Function RegisterBGIDriver (Driver : Pointer) : Integer;
注册一个用户自定义的BGI驱动程序。
56、Function RegisterBGIFont (Font : Pointer) : Integer;
注册一个用户自定义的BGI驱动程序。
57、Procedure RestoreCRTMode ;
恢复启动图形模式之前的屏幕模式。如果想回到你上次使用的图形模式,你可以
调用过程SetGraphMode。
58、Procedure Sector (X,Y : Integer; Start,Stop,XRadius,YRadius : Word);
以(X,Y)为中心绘制和填充一个椭圆扇形,XRadius、YRadius为椭圆的水平和垂直半径。
Start为起始角,Stop为结束角。
59、Procedure SetActivePage (Page : Word);
设置Page为所有图形输出活动页。
60、Procedure SetAllPallette (Var Palette);
设置Palette为当前调色板,Palette可以是任何类型,但通常是PaletteType
类型。
61、Procedure SetAspectRatio (Xasp,Yasp : Word);
设置当前屏幕宽高比为Xasp/Yasp。
62、Procedure SetBkColor (Color : Word);
设置Color为背景颜色。
63、Procedure SetColor (Color : Word);
设置Color为前景色。
64、Procedure SetFillPattern (FillPattern : FillPatternType, Color : Word);
设置FillPattern为当前填充模式,设置填充色为Color。
65、Procedure SetFillStyle (Pattern,Color : word);
设置Pattern表示的填充类型的颜色为Color。Pattern为下列预定常量之一:
EmptyFill 用于背景色。
SolidFill 用于填充色。
LineFill 填充水平线。
ltSlashFill 填充由左下角到右上角的线。
SlashFill 同上,用粗线。
BkSlashFill 填充从左上角到右下角的粗线。
LtBkSlashFill 同上,用正常线条。
HatchFill 填充阴影线图案。
XHatchFill 填充通口图案,旋转45度。
InterLeaveFill
WideDotFill 用点填充,宽间距。
CloseDotFill 用点填充,窄间距。
UserFill 用用户自定义模式填充。
66、Procedure SetGraphBufSize (BufSize : Word);
是一个虚拟函数,并不做任何事情,不需要它。
67、Procedure SetGraphMode (Mode : Integer);
设置图形模式为Mode并清屏。
68、Procedure SetLineStyle (LineStyle,Pattern,Width : Word);
设置行的绘画风格,你可以指定LineStyle为下列预定义的常量之一:
Solidln=0;实线绘制。
Dottedln=1;绘制点线。
Centerln=2;绘制一个中心非破碎的线。
Dashedln=3; 绘制虚线。
UserBitln=4;用用户定义的模式绘制。
如果使用UserBitln,则Pattern为模式,在所有其他情况下,Pattern被忽略。
Width指定行有多厚,可以将它设置为以下预定义的常量:
NormWidth=1
ThickWidth=3
69、Procedure SetPalette (ColorNr : Word; NewColor : ShortInt);
改变调色板的第ColorNr个项的值为NewColor。
70、Procedure SetRGBPalette (ColorNr,Red,Green,Blue : Integer);
设置调色板的第ColorNr个项为RGB颜色(Red,Green,Blue)。
71、Procedure SetTextJustify (Horizontal,Vertical : Word);
控制新的文本的位置,相对于(图形)的光标位置。Horizontal
控制水平放置,可以是下列预定义的常量之一:
LeftText=0; 文本设定在指针左边。
CenterText=1; 文字设定水平居中在指针上。
RightText=2; 文本设定在指针右边。
Vertical控制文本的垂直放置,相对于(图形)的光标位置,它的值可以是下列
预定义的常量之一:
BottomText=0; 文本置于指针下方。
CenterText=1; 文本垂直放在指针中心。
TopText=2;文本置于指针上方。
72、Procedure SetTextStyle (Font,Direction,Magnitude : Word);
设置输出到屏幕上的文本的样式。Font可为以下预先定义的常量:
DefaultFont = 0;
TriplexFont = 1;
SmallFont = 2;
SansSerifFont = 3;
GothicFont = 4;
ScriptFont = 5;
SimpleFont = 6;
TSCRFont = 7;
LCOMFont = 8;
EuroFont = 9;
BoldFont = 10;
Direction可为以下常量:
HorizDir=0;
VertDir=1;
73、Procedure SetUserCharSize (Xasp1,Xasp2,Yasp1,Yasp2 : Word);
设置矢量字体的高度和宽度。水平大小为Xasp1/Xasp2,垂直大小为Yasp1/Yasp2。
74、Procedure SetViewPort (X1,Y1,X2,Y2 : Integer; Clip : Boolean);
设置当前图形视窗(窗口)为左上角为(X1,Y1)右下角为(X2,Y2)的矩形。
如果Clip的值为True,任何在是窗外的图像将不被绘制,此调用后指定的坐标
将相对于视窗左上角(X1,Y1)。
75、Procedure SetVisualPage (Page : Word);
设置视频页面为页码为Page的页面。
76、Procedure SetWriteMode (Mode : Integer);
控制绘制在屏幕上的线,它控制了二元运算时使用的绘制在屏幕上的线。
Mode可以为以下常量之一:
CopyPut=0;
XORPut=1;
77、Function TextHeight (S : String) : Word;
返回当前的字体和文字大小的字符串S的高度(单位为像素)。
78、Function TextWidth (S : String) : Word;
返回当前的字体和文字大小的字符串S的宽度(单位为像素)。
GRAPH单元中的变量、常量、类型:
D1bit = 11;
D2bit = 12;
D4bit = 13;
D6bit = 14;
D8bit = 15;
D12bit = 16; D15bit = 17;
D16bit = 18;
D24bit = 19; D32bit = 20; D64bit = 21;
lowNewDriver = 11;
highNewDriver = 21;
detectMode = 30000;
m320x200 = 30001;
m320x256 = 30002; m320x400 = 30003; m512x384 = 30004; m640x200 = 30005;
m640x256 = 30006; m640x350 = 30007; m640x400 = 30008;
m640x480 = 30009;
m800x600 = 30010;
m832x624 = 30011; m1024x768 = 30012;
m1280x1024 = 30013;
m1600x1200 = 30014;
m2048x1536 = 30015;
lowNewMode = 30001;
highNewMode = 30015;
ArcCoordsType = record
X,Y,Xstart,Ystart,Xend,Yend : Integer;
end;
FillPatternType = Array [1..8] of Byte;
FillSettingsType = Record
Pattern,Color : Word
end;
LineSettingsType = Record
LineStyle,Pattern, Width : Word;
end;
PaletteType = Record
Size : Byte;
Colors : array[0..MAxColor] of shortint;
end;
PointType = Record
X,Y : Integer;
end;
TextSettingsType = Record
Font,Direction, CharSize, Horiz, Vert : Word
end;
ViewPortType = Record
X1,Y1,X2,Y2 : Integer;
Clip : Boolean
end;
提示:GRAPH单元一般是用来做那种程序的,这种程序退出时要靠单机哪或按什么键的。如果不是做这种程序,是很难看到效果的。
1、Procedure Arc (X,Y : Integer; start,stop, radius : Word);
以x,y为中心画一部分圆,参数radius为半径,从角start开始,到角stop结束。
这些角度是逆时针测量的。{好像是画圆弧}
2、Procedure Bar (X1,Y1,X2,Y2 : Integer);
画一个矩形,起始点是(X1,X2),结束点是(X2,Y2),并用当前颜色和填充模式填充。
3、Procedure Bar3D (X1,Y1,X2,Y2 : Integer; depth : Word; Top : Boolean);
画一个三维矩形,起始点是(X1,X2),结束点是(X2,Y2),并用当前颜色和填充模式填充。
depth指定显示深度的像素数。如果Top为True,则绘制一个三维的顶部。
4、Procedure Circle (X,Y : Integer; Radius : Word);
画一个圆形,以(X,Y)为圆心,Radius为半径。
5、Procedure ClearDevice ;
清除屏幕上的图形,光标转到(1,1)。
6、Procedure ClearViewPort ;
清除当前视图,光标转到(1,1)。
7、Procedure CloseGraph ;
关闭图形系统,恢复到激活图形模式之前的模式。
8、Procedure DetectGraph (Var Driver, Modus : Integer);
检查计算机的硬件和驱动程序来确定屏幕可用,分别靠参数Driver和Modus返回,
在InitGraph过程中可能用到。
9、Procedure DrawPoly (NumberOfPoints : Word; Var PolyPoints);
使用当前颜色和线条风格绘制一个边数为NumberOfPoints的多边形,PolyPoints
是一个为PointType的记录。
10、Procedure Ellipse (X,Y : Integer; Start,Stop,XRadius,YRadius : Word);
以(X,Y)为中心绘制椭圆的一部分,XRadius、YRadius为椭圆的水平和垂直半径,
Start、Stop为这部分椭圆的开始和结束角,它们是逆时针从X轴开始衡量的(
3时等于0度)。
11、Procedure FillEllipse (X,Y : Integer; Xradius,YRadius: Word);
以(X,Y)为中心绘制椭圆,XRadius、YRadius为椭圆的水平和垂直半径,椭圆以
当前颜色和填充样式填充。
12、Procedure FillPoly (NumberOfPoints : Word; Var PolyPoints);
绘制一个边数为NumberOfPoints的多边形,并以当前颜色和填充模式填充。
PolyPoints是一个为PointType的记录。
13、Procedure FloodFill (X,Y : Integer; BorderColor : Word);
用BorderColor颜色填充(X,Y) 以内的所有地方。
14、Procedure GetArcCoords (Var ArcCoords : ArcCoordsType);
返回最后一次执行 Arc或Ellipse时的坐标。
15、Procedure GetAspectRatio (Var Xasp,Yasp : Word);
设置屏幕的有效分辨率,纵横比为Xasp/Yasp。
16、Function GetBkColor : Word;
返回当前的背景颜色。
17、Function GetColor : Word;
返回当前的绘图颜色。
18、Procedure GetDefaultPalette (Var Palette : PaletteType);
用Palette返回当前的调色板。
19、Function GetDriverName : String;
返回一个字符串,其中包含了当前的驱动程序名称。
20、Procedure GetFillPattern (Var FillPattern : FillPatternType);
用FillPattern返回当前填充颜色。
21、Procedure GetFillSettings (Var FillInfo : FillSettingsType);
用FillInfo返回当前填充设置。
22、Function GetGraphMode : Integer;
返回当前的图像模式。
23、Procedure GetImage (X1,Y1,X2,Y2 : Integer, Var Bitmap;
输出一幅位图到屏幕(x1,Y1)到(X2,Y2)区域。
24、Procedure GetLineSettings (Var LineInfo : LineSettingsType);
用LineInfo返回当前行设置。
25、Function GetMaxColor : Word;
返回最大可设定颜色数,但对于Turbo Pascal这个颜色
并不总是保证是白色的(例如在256 +彩色模式)。
26、Function GetMaxMode : Word;
返回当前驱动器的最高运作模式。
27、Function GetMaxX : Word;
返回屏幕最大水平长度。
28、Function GetMaxY : Word;
返回屏幕最多可容纳几行。
29、Function GetModeName (Var modus : Integer) : String;
返回modus代表的模式名称。
30、Procedure GetModeRange (Driver : Integer; LoModus, HiModus: Integer);
返回当前驱动器最高和最低的运作模式。如果没有模式支持这个驱动器,则HiModus值为-1。
31、Procedure GetPalette (Var Palette : PaletteType);
用Palette返回当前调色板。
32、Function GetPaletteSize : Word;
返回当前调色板项的最大数目。
33、Function GetPixel (X,Y : Integer) : Word;
返回(X,Y)处的颜色。
34、Procedure GetTextSettings (Var TextInfo : TextSettingsType);
返回当前文字样式:字体、方向、大小、位置。
35、Procedure GetViewSettings (Var ViewPort : ViewPortType);
返回当前视口和剪辑设置。
36、Function GetX : Integer;
返回图形指针在当前窗口中的横坐标。
37、Function GetY : Integer;
返回图形指针在当前窗口中的纵坐标。
38、Procedure GraphDefaults ;
重置视点,调色板,前景和背景图案,线条风格和模式的所有设置,填充样式,填充颜色和图案,字体,文本的位置和文本的大小。
39、Function GraphErrorMsg (ErrorCode : Integer) : String;
返回一个字符串描述ErrorCode表示的错误。这个字符串可以用来让用户知道哪里出了问题。
39、Function GraphResult : Integer;
返回在过去图形操作中产生的错误代码,如果返回值为0,则代表没有错误产生。
如果返回的不是0,则代表有错误产生,除了在屏幕上画东西的所有操作,下面
过程也可能产生一个非0的错误代码。
InstallUserFont 、SetLineStyle、SetWriteMode、SetFillStyle、SetTextJustify、SetGraphMode、SetTextStyle
40、Function ImageSize (X1,Y1,X2,Y2 : Integer) : Word;
返回存储定义矩形图像(X1,Y1)到(X2,Y2)所需字节数。
41、Procedure InitGraph (var GraphDriver,GraphModus : integer; const PathToDriver : string);
初始化图形包,GraphDriver有两个值:如果GraphDriver=0,则执行一个自动
检测并初始化最颜色尽可能高的模式,1024×768×64K是驱动器可能支持的分辨
率的最大数值。如果你需要一个更高的分辨率,你必须编辑MODES.PPI,如果你需要
其他模式,就将GraphDriver设置成不同于0和graphmode的模式数值。PathToDriver
是BGI文件夹路径。
例子:
var
gd,gm : integer;
PathToDriver : string;
begin
gd:=detect; { highest possible resolution }
gm:=0; { not needed, auto detection }
PathToDriver:='C:\PP\BGI'; { path to BGI fonts,
drivers aren't needed }
InitGraph(gd,gm,PathToDriver);
if GraphResult<>grok then
halt; { whatever you need }
CloseGraph; { restores the old graphics mode }
end.
42、Function InstallUserDriver (DriverPath : String; AutoDetectPtr: Pointer) : Integer;
添加设备驱动器DriverPath到BGI驱动器列表。AutoDetectPtr是一个指针。
43、Function InstallUserFont (FontPath : String) : Integer;
添加一个字体FontPath到BGI系统字体列表。
44、Procedure Line (X1,Y1,X2,Y2 : Integer);
用当前颜色和线条模式画一条线,起始点是(X1,Y1),终止点是(X2,Y2),光标
转至(X2,Y2).
45、Procedure LineRel (DX,DY : Integer);
用当前颜色和线条模式绘制一条从当前点到指定点的线(DX,DY是相对于当前位置,指定位置为
(当前位置横坐标+DX,当前位置纵坐标+DY)),指针转到线的末端。
46、Procedure LineTo (DX,DY : Integer);
同LineRel.
47、Procedure MoveRel (DX,DY : Integer;
将指针移到(DX,DY)(相对于当前指针的位置)。
48、Procedure MoveTo (X,Y : Integer;
将指针移至(X,Y)。
49、Procedure OutText (Const TextString : String);
用当前字体和文本设置在当前指针位置输出TextString,指针移到文本末端。
50、Procedure OutTextXY (X,Y : Integer; Const TextString : String);
用当前字体和文本设置将TextString输出到(X,Y)处,指针移到文本末端。
51、Procedure PieSlice (X,Y : Integer; Start,Stop,Radius : Word);
绘制并填充圆心为(X,Y)的圆,半径为Radius,起始角为Start,结束角为Stop。
52、Procedure PutImage (X1,Y1 : Integer; Var Bitmap; How : word) ;
输出位图Bitmap在(X1,Y1),How确定如何将位图放在屏幕上。可能的值是:
CopyPut
XORPut
ORPut
AndPut
NotPut
53、Procedure PutPixel (X,Y : Integer; Color : Word);
将指针转到(X,Y),并设置颜色为Color。
54、Procedure Rectangle (X1,Y1,X2,Y2 : Integer);
用当前颜色和样式绘制一个矩形,起始点为(X1,Y1),结束点为(X2,Y2)。
55、Function RegisterBGIDriver (Driver : Pointer) : Integer;
注册一个用户自定义的BGI驱动程序。
56、Function RegisterBGIFont (Font : Pointer) : Integer;
注册一个用户自定义的BGI驱动程序。
57、Procedure RestoreCRTMode ;
恢复启动图形模式之前的屏幕模式。如果想回到你上次使用的图形模式,你可以
调用过程SetGraphMode。
58、Procedure Sector (X,Y : Integer; Start,Stop,XRadius,YRadius : Word);
以(X,Y)为中心绘制和填充一个椭圆扇形,XRadius、YRadius为椭圆的水平和垂直半径。
Start为起始角,Stop为结束角。
59、Procedure SetActivePage (Page : Word);
设置Page为所有图形输出活动页。
60、Procedure SetAllPallette (Var Palette);
设置Palette为当前调色板,Palette可以是任何类型,但通常是PaletteType
类型。
61、Procedure SetAspectRatio (Xasp,Yasp : Word);
设置当前屏幕宽高比为Xasp/Yasp。
62、Procedure SetBkColor (Color : Word);
设置Color为背景颜色。
63、Procedure SetColor (Color : Word);
设置Color为前景色。
64、Procedure SetFillPattern (FillPattern : FillPatternType, Color : Word);
设置FillPattern为当前填充模式,设置填充色为Color。
65、Procedure SetFillStyle (Pattern,Color : word);
设置Pattern表示的填充类型的颜色为Color。Pattern为下列预定常量之一:
EmptyFill 用于背景色。
SolidFill 用于填充色。
LineFill 填充水平线。
ltSlashFill 填充由左下角到右上角的线。
SlashFill 同上,用粗线。
BkSlashFill 填充从左上角到右下角的粗线。
LtBkSlashFill 同上,用正常线条。
HatchFill 填充阴影线图案。
XHatchFill 填充通口图案,旋转45度。
InterLeaveFill
WideDotFill 用点填充,宽间距。
CloseDotFill 用点填充,窄间距。
UserFill 用用户自定义模式填充。
66、Procedure SetGraphBufSize (BufSize : Word);
是一个虚拟函数,并不做任何事情,不需要它。
67、Procedure SetGraphMode (Mode : Integer);
设置图形模式为Mode并清屏。
68、Procedure SetLineStyle (LineStyle,Pattern,Width : Word);
设置行的绘画风格,你可以指定LineStyle为下列预定义的常量之一:
Solidln=0;实线绘制。
Dottedln=1;绘制点线。
Centerln=2;绘制一个中心非破碎的线。
Dashedln=3; 绘制虚线。
UserBitln=4;用用户定义的模式绘制。
如果使用UserBitln,则Pattern为模式,在所有其他情况下,Pattern被忽略。
Width指定行有多厚,可以将它设置为以下预定义的常量:
NormWidth=1
ThickWidth=3
69、Procedure SetPalette (ColorNr : Word; NewColor : ShortInt);
改变调色板的第ColorNr个项的值为NewColor。
70、Procedure SetRGBPalette (ColorNr,Red,Green,Blue : Integer);
设置调色板的第ColorNr个项为RGB颜色(Red,Green,Blue)。
71、Procedure SetTextJustify (Horizontal,Vertical : Word);
控制新的文本的位置,相对于(图形)的光标位置。Horizontal
控制水平放置,可以是下列预定义的常量之一:
LeftText=0; 文本设定在指针左边。
CenterText=1; 文字设定水平居中在指针上。
RightText=2; 文本设定在指针右边。
Vertical控制文本的垂直放置,相对于(图形)的光标位置,它的值可以是下列
预定义的常量之一:
BottomText=0; 文本置于指针下方。
CenterText=1; 文本垂直放在指针中心。
TopText=2;文本置于指针上方。
72、Procedure SetTextStyle (Font,Direction,Magnitude : Word);
设置输出到屏幕上的文本的样式。Font可为以下预先定义的常量:
DefaultFont = 0;
TriplexFont = 1;
SmallFont = 2;
SansSerifFont = 3;
GothicFont = 4;
ScriptFont = 5;
SimpleFont = 6;
TSCRFont = 7;
LCOMFont = 8;
EuroFont = 9;
BoldFont = 10;
Direction可为以下常量:
HorizDir=0;
VertDir=1;
73、Procedure SetUserCharSize (Xasp1,Xasp2,Yasp1,Yasp2 : Word);
设置矢量字体的高度和宽度。水平大小为Xasp1/Xasp2,垂直大小为Yasp1/Yasp2。
74、Procedure SetViewPort (X1,Y1,X2,Y2 : Integer; Clip : Boolean);
设置当前图形视窗(窗口)为左上角为(X1,Y1)右下角为(X2,Y2)的矩形。
如果Clip的值为True,任何在是窗外的图像将不被绘制,此调用后指定的坐标
将相对于视窗左上角(X1,Y1)。
75、Procedure SetVisualPage (Page : Word);
设置视频页面为页码为Page的页面。
76、Procedure SetWriteMode (Mode : Integer);
控制绘制在屏幕上的线,它控制了二元运算时使用的绘制在屏幕上的线。
Mode可以为以下常量之一:
CopyPut=0;
XORPut=1;
77、Function TextHeight (S : String) : Word;
返回当前的字体和文字大小的字符串S的高度(单位为像素)。
78、Function TextWidth (S : String) : Word;
返回当前的字体和文字大小的字符串S的宽度(单位为像素)。
GRAPH单元中的变量、常量、类型:
D1bit = 11;
D2bit = 12;
D4bit = 13;
D6bit = 14;
D8bit = 15;
D12bit = 16; D15bit = 17;
D16bit = 18;
D24bit = 19; D32bit = 20; D64bit = 21;
lowNewDriver = 11;
highNewDriver = 21;
detectMode = 30000;
m320x200 = 30001;
m320x256 = 30002; m320x400 = 30003; m512x384 = 30004; m640x200 = 30005;
m640x256 = 30006; m640x350 = 30007; m640x400 = 30008;
m640x480 = 30009;
m800x600 = 30010;
m832x624 = 30011; m1024x768 = 30012;
m1280x1024 = 30013;
m1600x1200 = 30014;
m2048x1536 = 30015;
lowNewMode = 30001;
highNewMode = 30015;
ArcCoordsType = record
X,Y,Xstart,Ystart,Xend,Yend : Integer;
end;
FillPatternType = Array [1..8] of Byte;
FillSettingsType = Record
Pattern,Color : Word
end;
LineSettingsType = Record
LineStyle,Pattern, Width : Word;
end;
PaletteType = Record
Size : Byte;
Colors : array[0..MAxColor] of shortint;
end;
PointType = Record
X,Y : Integer;
end;
TextSettingsType = Record
Font,Direction, CharSize, Horiz, Vert : Word
end;
ViewPortType = Record
X1,Y1,X2,Y2 : Integer;
Clip : Boolean
end;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询