Programlama | Programlama Dilleri | C Programlama Dili |C++

Anasayfa Programlama C++ Builder Resim veya Fotoğraf Üzerinde Zoom İşlemi Yapmak


Resim veya Fotoğraf Üzerinde Zoom İşlemi Yapmak

AÇIKLAMA

C++ Builder 6 ile uyumludur. Bu programda TrackBar nesnesi kullanılarak resim veya fotoğraf üzerinde zoom işleminin yapılması sağlanmıştır. Programda fotoğraf veya resimini üzerinde büyütme ve küçültme işlemleri yapılmıştır. Resimin bir scrollbox yapısı içine koyulması sağlanarak tüm resim de görüntülebilir. Program daha da geliştirilirek tam bir resim büyütme ve küçültme programı yapılabilir.

Programın Tamamını Aşağıdaki Linkten İndirebilirsiniz

Linki Görebilmeniz İçin Üye Olmanız Gerekmektedir...

Üye Kayıt 

Program Kodu:

Unit1.cpp

  1.  
  2.  
  3. //---------------------------------------------------------------------------
  4.  
  5. #include <vcl.h>
  6. #pragma hdrstop
  7.  
  8. #include "Unit1.h"
  9. #include "jpeg.hpp"
  10. //---------------------------------------------------------------------------
  11. #pragma package(smart_init)
  12. #pragma resource "*.dfm"
  13. TForm1 *Form1;
  14. //---------------------------------------------------------------------------
  15. __fastcall TForm1::TForm1(TComponent* Owner)
  16.         : TForm(Owner)
  17. {
  18. }
  19. //---------------------------------------------------------------------------
  20.  
  21.  
  22. void __fastcall TForm1::FormCreate(TObject *Sender)
  23. {
  24. TrackBar1->Orientation=trHorizontal;
  25. TrackBar1->Max=5*Image1->Width;
  26. TrackBar1->Position=Image1->Width;
  27. TrackBar1->Left=Image1->Left;
  28. TrackBar1->Top=Image1->Top-TrackBar1->Height;
  29. Label1->Top=TrackBar1->Top;
  30. Label1->Left=TrackBar1->Left+TrackBar1->Width;
  31. Image2->Left=Image1->Left;
  32. Image2->Top=Image1->Top;
  33. Image2->Width=Image1->Width;
  34. Image1->Visible=false;
  35. }
  36. //---------------------------------------------------------------------------
  37.  
  38. void __fastcall TForm1::TrackBar1Change(TObject *Sender)
  39. {
  40. TRect t;
  41. TJPEGImage *Resim = new TJPEGImage();
  42. Resim->Assign(Image1->Picture);
  43. t.left=0;
  44. t.Top=0;
  45. t.Right=TrackBar1->Position;
  46. t.Bottom=TrackBar1->Position;
  47. if(TrackBar1->Position>545)
  48. Image2->Width=545;
  49. else
  50. Image2->Width=TrackBar1->Position;
  51. if(TrackBar1->Position>545)
  52. Image2->Height=545;
  53. else
  54. Image2->Height=TrackBar1->Position;
  55.  
  56. Image2->Canvas->StretchDraw(t,Resim);
  57. Label1->Caption="x" +FloatToStr((float)TrackBar1->Position/Image1->Width);
  58. }
  59. //---------------------------------------------------------------------------
  60.  
  61.  
  62.  

Yorumlar (0)
Sadece kayıtlı kullanıcılar yorum yazabilir!