📄 mainform.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Mainform.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
if(this->OpenPictureDialog1->Execute())
{
AnsiString StrFileName=this->OpenPictureDialog1->FileName;
this->Image1->Picture->LoadFromFile(StrFileName);
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn3Click(TObject *Sender)
{
this->Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn2Click(TObject *Sender)
{//平均值法将彩色图像转换为黑白图像
for(int i=0;i<this->Image1->Width;i++)
for(int j=0;j<this->Image1->Height;j++)
{
int Pixel=this->Image1->Picture->Bitmap->Canvas->Pixels[i][j];
int ColorRed=GetRValue(Pixel);
int ColorGreen=GetGValue(Pixel);
int ColorBlue=GetBValue(Pixel);
int NewPixel=((ColorRed+ColorGreen+ColorBlue)/3);
this->Image1->Picture->Bitmap->Canvas->Pixels[i][j]=RGB(NewPixel,NewPixel,NewPixel);
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn4Click(TObject *Sender)
{//最大值法将彩色图像转换为黑白图像
for(int i=0;i<this->Image1->Width;i++)
for(int j=0;j<this->Image1->Height;j++)
{
int Pixel=this->Image1->Picture->Bitmap->Canvas->Pixels[i][j];
int ColorRed=GetRValue(Pixel);
int ColorGreen=GetGValue(Pixel);
int ColorBlue=GetBValue(Pixel);
int NewPixel=ColorRed>ColorGreen?ColorRed:ColorGreen;
NewPixel=NewPixel>ColorBlue?NewPixel:ColorBlue;
this->Image1->Picture->Bitmap->Canvas->Pixels[i][j]=RGB(NewPixel,NewPixel,NewPixel);
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn5Click(TObject *Sender)
{//加权平均值法将彩色图像转换为黑白图像
for(int i=0;i<this->Image1->Width;i++)
for(int j=0;j<this->Image1->Height;j++)
{
int Pixel=this->Image1->Picture->Bitmap->Canvas->Pixels[i][j];
int ColorRed=GetRValue(Pixel);
int ColorGreen=GetGValue(Pixel);
int ColorBlue=GetBValue(Pixel);
int NewPixel=ColorRed*0.6+ColorGreen*0.3+ColorBlue*0.1;
this->Image1->Picture->Bitmap->Canvas->Pixels[i][j]=RGB(NewPixel,NewPixel,NewPixel);
}
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -