Skip to content

Commit

Permalink
Merge pull request #146 from yixy-only/docs_tutorial_source_utf8
Browse files Browse the repository at this point in the history
Docs: 将 tutorial 中的源文件转为 UTF-8 编码
  • Loading branch information
yixy-only authored Feb 20, 2024
2 parents a1fbce5 + 00360e5 commit 985083e
Show file tree
Hide file tree
Showing 28 changed files with 300 additions and 300 deletions.
8 changes: 4 additions & 4 deletions man/tutorial/t01.cpp
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
//第一个图形窗口程序
//第一个图形窗口程序
#include <graphics.h>

int main()
{
//初始化为640*480大小
//初始化为640*480大小
initgraph(640, 480);

//等待用户按键
//等待用户按键
getch();

//关闭图形界面
//关闭图形界面
closegraph();
return 0;
}
10 changes: 5 additions & 5 deletions man/tutorial/t02.cpp
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
//第一个画图程序
//第一个画图程序
#include <graphics.h>

int main()
{
initgraph(640, 480);

//设置画图颜色,GREEN是颜色常数,详细可以查graphics.h对这个宏的定义的值
//设置画图颜色,GREEN是颜色常数,详细可以查graphics.h对这个宏的定义的值
setcolor(GREEN);

//画一直线,从(100,100)到(500,200)
//特别注意的是端点,(100,100)这个点会被画上颜色,但(500,200)不会画上颜色
//以下所有的矩形(或者说两点)描述方式,总是前一个点取得到,但后一个点取不到
//画一直线,从(100,100)到(500,200)
//特别注意的是端点,(100,100)这个点会被画上颜色,但(500,200)不会画上颜色
//以下所有的矩形(或者说两点)描述方式,总是前一个点取得到,但后一个点取不到
line(100, 100, 500, 200);

getch();
Expand Down
10 changes: 5 additions & 5 deletions man/tutorial/t03.cpp
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
//色彩的计算
//色彩的计算
#include <graphics.h>

int main()
{
initgraph(640, 480);

//设置画图颜色,使用EGERGB宏,三个参数值的范围均为0 - 255 (0xFF)
//分别表示红色亮度,绿色亮度,蓝色亮度
//EGERGB(0xFF, 0x0, 0x0) (纯红色) 等价于0xFF0000
//设置画图颜色,使用EGERGB宏,三个参数值的范围均为0 - 255 (0xFF)
//分别表示红色亮度,绿色亮度,蓝色亮度
//EGERGB(0xFF, 0x0, 0x0) (纯红色) 等价于0xFF0000
setcolor(EGERGB(0xFF, 0x0, 0x0));

//画一圆,圆心在(200,200),半径100
//画一圆,圆心在(200,200),半径100
circle(200, 200, 100);

getch();
Expand Down
6 changes: 3 additions & 3 deletions man/tutorial/t04.cpp
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
//颜色填充
//颜色填充
#include <graphics.h>

int main()
{
initgraph(640, 480);

//设置填充颜色,一般为图形内部颜色
//设置填充颜色,一般为图形内部颜色
setfillcolor(EGERGB(0xFF, 0x0, 0x80));

//画一实心矩形,范围为:x坐标从50-300,y坐标从100-200
//画一实心矩形,范围为:x坐标从50-300,y坐标从100-200
bar(50, 100, 300, 200);

getch();
Expand Down
20 changes: 10 additions & 10 deletions man/tutorial/t05.cpp
Original file line number Diff line number Diff line change
@@ -1,29 +1,29 @@
//图形边界和填充
//图形边界和填充
#include <graphics.h>

int main()
{
initgraph(640, 480);

//设置绘图颜色,一般用于边界
//设置绘图颜色,一般用于边界
setcolor(EGERGB(0xFF, 0xFF, 0x0));

//设置填充颜色,一般为图形内部颜色
//设置填充颜色,一般为图形内部颜色
setfillcolor(EGERGB(0xFF, 0x0, 0x80));

//画一带填充的椭圆
//画一带填充的椭圆
fillellipse(200, 200, 150, 100);

//画一个空心圆
//画一个空心圆
circle(500, 300, 100);

//再次设置填充颜色,用于决定下一函数填充的颜色
//再次设置填充颜色,用于决定下一函数填充的颜色
setfillcolor(EGERGB(0x80, 0x0, 0xFF));

//手工填充
//x,y是开始填充的坐标,第三个参数是填充的边界颜色,或者说以这个颜色作为边界
//如果这个边界不封闭,那么会导致整个屏幕都是这个颜色
//注意, 这里仅仅是教你如何使用floodfill, 正常情况下要绘制实心正圆, 请仍然使用fillellipse
//手工填充
//x,y是开始填充的坐标,第三个参数是填充的边界颜色,或者说以这个颜色作为边界
//如果这个边界不封闭,那么会导致整个屏幕都是这个颜色
//注意, 这里仅仅是教你如何使用floodfill, 正常情况下要绘制实心正圆, 请仍然使用fillellipse
floodfill(500, 300, EGERGB(0xFF, 0xFF, 0x0));

getch();
Expand Down
18 changes: 9 additions & 9 deletions man/tutorial/t06.cpp
Original file line number Diff line number Diff line change
@@ -1,31 +1,31 @@
//屏幕背景色
//屏幕背景色
#include <graphics.h>

int main()
{
initgraph(640, 480);

//第一次设置背景色
setbkcolor(EGERGB(0x0, 0x40, 0x0)); //浅绿色
//第一次设置背景色
setbkcolor(EGERGB(0x0, 0x40, 0x0)); //浅绿色

setcolor(EGERGB(0xFF, 0xFF, 0x0));
setfillcolor(EGERGB(0xFF, 0x0, 0x80));

//画带填充的扇形
//画带填充的扇形
sector(200, 200, 45, 135, 150, 100);

getch();

//按下一任意键后,再次改变背景色
setbkcolor(EGERGB(0x0, 0x0, 0x40)); //浅蓝色
//按下一任意键后,再次改变背景色
setbkcolor(EGERGB(0x0, 0x0, 0x40)); //浅蓝色

getch();

closegraph();
return 0;
}

//补充:另有setbkcolor_f函数,它设置的是cleardevice函数所使用的颜色,
//所以要等到cleardevice调用时,它的效果才会展现。
//当然,setbkcolor也会设置,但同时也会立即把屏幕上的原背景色改变
//补充:另有setbkcolor_f函数,它设置的是cleardevice函数所使用的颜色,
//所以要等到cleardevice调用时,它的效果才会展现。
//当然,setbkcolor也会设置,但同时也会立即把屏幕上的原背景色改变

22 changes: 11 additions & 11 deletions man/tutorial/t07.cpp
Original file line number Diff line number Diff line change
@@ -1,32 +1,32 @@
//文字绘制与文字相关设置
//文字绘制与文字相关设置
#include <graphics.h>

int main()
{
initgraph(640, 480);

//先画一个矩形,以便于看出背景色的问题
//先画一个矩形,以便于看出背景色的问题
setfillcolor(EGERGB(0x0, 0x80, 0x80));
bar(50, 50, 500, 200);

//文字颜色
//文字颜色
setcolor(EGERGB(0x0, 0xFF, 0x0));

//文字背景色(注意setbkcolor函数也会同时改变文字背景色)
//文字背景色(注意setbkcolor函数也会同时改变文字背景色)
setfontbkcolor(EGERGB(0x80, 0x00, 0x80));

//设置字体,第一个参数是字体的高度(像素),第二个参数是字体的宽度,第二个参数如果为0,就使用默认比例值
//如果高度为12,即相当于小五号字,或者9磅字,实际的换算就自己完成吧
setfont(12, 0, "宋体");
//设置字体,第一个参数是字体的高度(像素),第二个参数是字体的宽度,第二个参数如果为0,就使用默认比例值
//如果高度为12,即相当于小五号字,或者9磅字,实际的换算就自己完成吧
setfont(12, 0, "宋体");

//写文字,注意:outtextxy不支持\t \n这类格式化用的特殊字符,这类字符会被忽略
//要使用特殊格式化字符请用outtextrect
//写文字,注意:outtextxy不支持\t \n这类格式化用的特殊字符,这类字符会被忽略
//要使用特殊格式化字符请用outtextrect
outtextxy(100, 100, "Hello EGE Graphics");
outtextrect(100, 120, 200, 100, "\tHello EGE Graphics\nHere is the next line.");

//设置文字背景填充方式为透明,默认为OPAQUE不透明
//设置文字背景填充方式为透明,默认为OPAQUE不透明
setbkmode(TRANSPARENT);
outtextxy(100, 150, "Hello EGE Graphics, 中文也是支持的");
outtextxy(100, 150, "Hello EGE Graphics, 中文也是支持的");

getch();

Expand Down
14 changes: 7 additions & 7 deletions man/tutorial/t08.cpp
Original file line number Diff line number Diff line change
@@ -1,25 +1,25 @@
//图形视口裁剪
//图形视口裁剪
#include <graphics.h>

int main()
{
initgraph(640, 480);

//设置视口矩形区域为(200,100) - (330, 130)
//最后一个参数为1表示出了这个区域的图形会被裁剪
//后面所绘画的图形的原点坐标(0,0),会映射到(200,100)
//设置视口矩形区域为(200,100) - (330, 130)
//最后一个参数为1表示出了这个区域的图形会被裁剪
//后面所绘画的图形的原点坐标(0,0),会映射到(200,100)
setviewport(200, 100, 330, 130, 1);

//画一些文字,注意文字会因区域被裁剪的效果
//画一些文字,注意文字会因区域被裁剪的效果
setcolor(EGERGB(0x0, 0xFF, 0x0));
setfontbkcolor(EGERGB(0x80, 0x00, 0x80));
setfont(18, 0, "宋体");
setfont(18, 0, "宋体");
outtextxy(0, 0, "Hello EGE Graphics");

setbkmode(TRANSPARENT);
outtextxy(0, 20, "Hello EGE Graphics");

//还原视口
//还原视口
setviewport(0, 0, getwidth(), getheight(), 1);
outtextxy(0, 0, "Hello EGE Graphics");

Expand Down
26 changes: 13 additions & 13 deletions man/tutorial/t09.cpp
Original file line number Diff line number Diff line change
@@ -1,42 +1,42 @@
//使用IMAGE——抓图,绘画到IMAGE,IMAGE到屏幕
//使用IMAGE——抓图,绘画到IMAGE,IMAGE到屏幕
#include <graphics.h>

//IMAGE对象相当于一个绘图板,而同时也可以作为图片画到其它IMAGE上
//它是一个非常灵活的对象,复杂的绘图都要借助IMAGE,以便更好地保存和输出图像
//IMAGE对象相当于一个绘图板,而同时也可以作为图片画到其它IMAGE上
//它是一个非常灵活的对象,复杂的绘图都要借助IMAGE,以便更好地保存和输出图像

int main()
{
//声明一个img图片对象
//声明一个img图片对象
PIMAGE img;

initgraph(640, 480);

//先随便画一些东西
//先随便画一些东西
setcolor(EGERGB(0xFF, 0xFF, 0x0));
setfillcolor(EGERGB(0xFF, 0x0, 0x80));
fillellipse(50, 50, 50, 50);

//用newimage在initgraph后创建这个对象。但记得要在不使用的时候delimage
//用newimage在initgraph后创建这个对象。但记得要在不使用的时候delimage
img = newimage();

//从屏幕上截取(0, 0) - (80, 60)这部分作为img,这个img大小为80*60
//img的尺寸会重设,大小由第三第四个参数决定
//注意,(0,0)这点会被包含在img里,但(80, 60)不包含
//从屏幕上截取(0, 0) - (80, 60)这部分作为img,这个img大小为80*60
//img的尺寸会重设,大小由第三第四个参数决定
//注意,(0,0)这点会被包含在img里,但(80, 60)不包含
getimage(img, 0, 0, 80, 60);

//对img设置填充色为绿色
//对img设置填充色为绿色
setfillcolor(EGERGB(0x0, 0x70, 0x0), img);

//对img画实心矩形
//对img画实心矩形
bar(40, 20, 70, 50, img);

int x, y;
//把img平铺在屏幕上,使用一个二重循环
//把img平铺在屏幕上,使用一个二重循环
for (y = 0; y < 8; ++y)
{
for (x = 0; x < 8; ++x)
{
//把img整个,画在指定的坐标上,左上角对齐这个坐标
//把img整个,画在指定的坐标上,左上角对齐这个坐标
putimage(x * 80, y * 60, img);
}
}
Expand Down
12 changes: 6 additions & 6 deletions man/tutorial/t10.cpp
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
//使用IMAGE——拉伸
//使用IMAGE——拉伸
#include <graphics.h>

int main()
Expand All @@ -7,7 +7,7 @@ int main()

initgraph(640, 480);

//先随便画一些东西
//先随便画一些东西
setcolor(EGERGB(0xFF, 0xFF, 0x0));
setfillcolor(EGERGB(0xFF, 0x0, 0x80));
fillellipse(50, 50, 50, 50);
Expand All @@ -16,14 +16,14 @@ int main()
getimage(img, 0, 0, 160, 120);

int x, y;
//把img平铺在屏幕上,使用一个二重循环
//把img平铺在屏幕上,使用一个二重循环
for (y = 0; y < 8; ++y)
{
for (x = 0; x < 8; ++x)
{
//把img整个,拉伸画在指定的矩形里
//需要指定目标矩形,源矩形
//源矩形参数不能忽略,否则会和其它非拉伸功能的贴图函数混淆
//把img整个,拉伸画在指定的矩形里
//需要指定目标矩形,源矩形
//源矩形参数不能忽略,否则会和其它非拉伸功能的贴图函数混淆
putimage(x * 80, y * 60, 80, 60, img, 0, 0, 160, 120);
}
}
Expand Down
14 changes: 7 additions & 7 deletions man/tutorial/t11.cpp
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
//使用IMAGE——透明,半透明
//使用IMAGE——透明,半透明
#include <graphics.h>

int main()
Expand All @@ -7,23 +7,23 @@ int main()

initgraph(640, 480);

//先随便画一些东西
//先随便画一些东西
setcolor(EGERGB(0xFF, 0xFF, 0x0));
setfillcolor(EGERGB(0xFF, 0x0, 0x80));
fillellipse(50, 50, 50, 50);

img = newimage();
getimage(img, 0, 0, 160, 120);

//先画一个非黑色背景,以便于比较
//先画一个非黑色背景,以便于比较
setbkcolor(EGERGB(0x80, 0x80, 0x80));
cleardevice();

//四种贴图比较
//四种贴图比较
putimage(0, 0, img);
putimage_alphablend(NULL, img, 160, 0, 0x80); //半透明度为0x80
putimage_transparent(NULL, img, 0, 80, BLACK); //透明贴图,关键色为BLACK,源图为这个颜色的地方会被忽略
putimage_alphatransparent(NULL, img, 160, 80, BLACK, 0xA0); //同时使用透明和半透明
putimage_alphablend(NULL, img, 160, 0, 0x80); //半透明度为0x80
putimage_transparent(NULL, img, 0, 80, BLACK); //透明贴图,关键色为BLACK,源图为这个颜色的地方会被忽略
putimage_alphatransparent(NULL, img, 160, 80, BLACK, 0xA0); //同时使用透明和半透明

getch();

Expand Down
Loading

0 comments on commit 985083e

Please sign in to comment.