Image_save&Load

概要:イメージの絵画とbmpとしての保存・読み込み、及び印刷

<作業>

ソース


以下、ソース。

/*--------------------------------------------------------------------------- イメージを表示し、フォーム全体をプリントアウトする。 ---------------------------------------------------------------------------*/ #include #pragma hdrstop #include "Unit1.h" #include //--------------------------------------------------------------------------- #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { /* 絵画 */ for(int i = 10; i < 200; i++) { Image1->Canvas->Pixels[i][10] = clRed; } Image1->Canvas->Brush->Color = clBlack; Image1->Canvas->Brush->Style = bsDiagCross; Image1->Canvas->Ellipse(0, 0, Image1->Width, Image1->Height); } //--------------------------------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) { /* 印刷 */ if ( PrintDialog1->Execute() ) { Print(); } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button3Click(TObject *Sender) { /* プリンタの設定 */ PrinterSetupDialog1->Execute(); } //--------------------------------------------------------------------------- //--------------------------------------------------------------------------- void __fastcall TForm1::Button4Click(TObject *Sender) { char szFileName[15]; /* デフォルトの拡張子を".txt"に設定 */ SaveDialog1->DefaultExt = "bmp"; /* ファイルの拡張子を.bmpに設定 */ SaveDialog1->Filter = "ビットマップ(*.bmp)|*.bmp"; if (SaveDialog1->Execute()) { /* 同名のファイルが既存すればバックアップを取って上書き */ if (FileExists(SaveDialog1->FileName)) { fnsplit(SaveDialog1->FileName.c_str(), 0, 0, szFileName, 0); strcat(szFileName, ".BAK"); RenameFile(SaveDialog1->FileName, szFileName); } // 書き込む。 Image1->Picture->SaveToFile(SaveDialog1->FileName); } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button5Click(TObject *Sender) { TFileName NameOfFile; /* デフォルトの拡張子を".bmp"に設定 */ OpenDialog1->DefaultExt = "bmp"; /* ファイルの拡張子を.datに設定 */ OpenDialog1->Filter = "ビットマップ(*.bmp)|*.bmp"; if(OpenDialog1->Execute()) { NameOfFile = OpenDialog1->FileName; Image1->Picture->LoadFromFile(NameOfFile); } } //---------------------------------------------------------------------------

C++Builder入門トップ