fcBitmap.hpp
上传用户:hylc_2004
上传日期:2014-01-23
资源大小:46800k
文件大小:7k
源码类别:

Delphi控件源码

开发平台:

Delphi

  1. // Borland C++ Builder
  2. // Copyright (c) 1995, 1999 by Borland International
  3. // All rights reserved
  4. // (DO NOT EDIT: machine generated header) 'fcBitmap.pas' rev: 5.00
  5. #ifndef fcBitmapHPP
  6. #define fcBitmapHPP
  7. #pragma delphiheader begin
  8. #pragma option push -w-
  9. #pragma option push -Vx
  10. #include <SysUtils.hpp> // Pascal unit
  11. #include <fcChangeLink.hpp> // Pascal unit
  12. #include <fcGraphics.hpp> // Pascal unit
  13. #include <Classes.hpp> // Pascal unit
  14. #include <Graphics.hpp> // Pascal unit
  15. #include <Windows.hpp> // Pascal unit
  16. #include <SysInit.hpp> // Pascal unit
  17. #include <System.hpp> // Pascal unit
  18. //-- user supplied -----------------------------------------------------------
  19. namespace Fcbitmap
  20. {
  21. //-- type declarations -------------------------------------------------------
  22. #pragma pack(push, 1)
  23. struct TfcColor
  24. {
  25. Byte b;
  26. Byte g;
  27. Byte r;
  28. } ;
  29. #pragma pack(pop)
  30. typedef TfcColor *PfcColor;
  31. typedef TfcColor TfcLine[1];
  32. typedef TfcColor *PfcLine;
  33. typedef TfcColor *TfcPLines[1];
  34. typedef PfcLine *PfcPLines;
  35. class DELPHICLASS TfcBitmap;
  36. class PASCALIMPLEMENTATION TfcBitmap : public Graphics::TGraphic 
  37. {
  38. typedef Graphics::TGraphic inherited;
  39. private:
  40. bool FSmoothStretching;
  41. Graphics::TColor FTransparentColor;
  42. int FWidth;
  43. int FHeight;
  44. int FGap;
  45. Graphics::TBitmap* FMaskBitmap;
  46. int FRowInc;
  47. int FSize;
  48. void *FBits;
  49. int FHandle;
  50. HDC FDC;
  51. Graphics::TCanvas* FCanvas;
  52. void *FMemoryImage;
  53. int FMemorySize;
  54. #pragma pack(push, 1)
  55. tagSIZE FMemoryDim;
  56. #pragma pack(pop)
  57. Graphics::TPixelFormat FPixelFormat;
  58. HPALETTE FPalette;
  59. bool FRespectPalette;
  60. bool FUseHalftonePalette;
  61. bool FIgnoreChange;
  62. Classes::TList* FChangeLinks;
  63. #pragma pack(push, 1)
  64. tagBITMAPINFO bmInfo;
  65. #pragma pack(pop)
  66. #pragma pack(push, 1)
  67. tagBITMAPINFOHEADER bmHeader;
  68. #pragma pack(pop)
  69. bool __fastcall GetSleeping(void);
  70. void __fastcall InitHeader(void);
  71. protected:
  72. bool Assigning;
  73. bool SkipPalette;
  74. virtual void __fastcall RestoreBitmapPalette(Graphics::TCanvas* ACanvas, HPALETTE OldPalette);
  75. virtual void __fastcall SelectBitmapPalette(Graphics::TCanvas* ACanvas, HPALETTE &OldPalette);
  76. virtual bool __fastcall GetEmpty(void);
  77. virtual int __fastcall GetHeight(void);
  78. virtual int __fastcall GetWidth(void);
  79. virtual void __fastcall AssignTo(Classes::TPersistent* Dest);
  80. virtual void __fastcall Changed(System::TObject* Sender);
  81. virtual void __fastcall Draw(Graphics::TCanvas* ACanvas, const Types::TRect &Rect);
  82. virtual void __fastcall SetHeight(int Value);
  83. virtual void __fastcall SetWidth(int Value);
  84. virtual void __fastcall CleanUp(void);
  85. virtual void __fastcall Initialize(void);
  86. virtual void __fastcall NotifyChanges(void);
  87. virtual void __fastcall PaletteNeeded(void);
  88. __property int Gap = {read=FGap, nodefault};
  89. __property int RowInc = {read=FRowInc, nodefault};
  90. __property HDC DC = {read=FDC, nodefault};
  91. public:
  92. Variant Patch;
  93. PfcLine *Pixels;
  94. tagRGBQUAD Colors[256];
  95. __fastcall virtual TfcBitmap(void);
  96. __fastcall virtual ~TfcBitmap(void);
  97. virtual void __fastcall Assign(Classes::TPersistent* Source);
  98. virtual void __fastcall RegisterChanges(Fcchangelink::TfcChangeLink* ChangeLink);
  99. virtual void __fastcall UnRegisterChanges(Fcchangelink::TfcChangeLink* ChangeLink);
  100. virtual void __fastcall Clear(void);
  101. virtual void __fastcall FreeMemoryImage(void);
  102. virtual void __fastcall LoadBlank(int AWidth, int AHeight);
  103. virtual void __fastcall LoadFromBitmap(Graphics::TBitmap* Bitmap);
  104. virtual void __fastcall LoadFromJPEG(Graphics::TGraphic* JPEG);
  105. virtual void __fastcall LoadFromClipboardFormat(Word AFormat, unsigned AData, HPALETTE APalette);
  106. virtual void __fastcall LoadFromGraphic(Graphics::TGraphic* Graphic);
  107. virtual void __fastcall LoadFromMemory(void * ABits, int ASize, const tagSIZE &Dimensions);
  108. virtual void __fastcall LoadFromStream(Classes::TStream* Stream);
  109. virtual void __fastcall SaveToBitmap(Graphics::TBitmap* Bitmap);
  110. virtual void __fastcall SaveToClipboardFormat(Word &AFormat, unsigned &AData, HPALETTE &APalette);
  111. virtual void __fastcall SaveToStream(Classes::TStream* Stream);
  112. virtual void __fastcall SetSize(const int AWidth, const int AHeight);
  113. Graphics::TBitmap* __fastcall GetMaskBitmap(void);
  114. PfcPLines __fastcall CopyPixels(void);
  115. void __fastcall Fill(Graphics::TColor Color);
  116. virtual void __fastcall Resize(int AWidth, int AHeight);
  117. virtual void __fastcall Sleep(void);
  118. virtual void __fastcall SmoothStretchDraw(Graphics::TCanvas* ACanvas, const Types::TRect &Rect);
  119. virtual void __fastcall StretchDraw(Graphics::TCanvas* ACanvas, const Types::TRect &Rect);
  120. virtual void __fastcall TileDraw(Graphics::TCanvas* ACanvas, const Types::TRect &ARect);
  121. virtual void __fastcall TransparentDraw(Graphics::TCanvas* ACanvas, const Types::TRect &Rect);
  122. virtual void __fastcall Wake(void);
  123. void __fastcall AlphaBlend(TfcBitmap* Bitmap, int Alpha, bool Stretch);
  124. virtual void __fastcall Blur(int Amount);
  125. virtual void __fastcall Contrast(int Amount);
  126. virtual void __fastcall Emboss(void);
  127. virtual void __fastcall Flip(bool Horizontal);
  128. virtual void __fastcall GaussianBlur(int Amount);
  129. virtual void __fastcall Grayscale(void);
  130. virtual void __fastcall Invert(void);
  131. virtual void __fastcall Brightness(int Amount);
  132. virtual void __fastcall Mask(TfcColor MaskColor);
  133. virtual void __fastcall ChangeColor(TfcColor OldColor, TfcColor NewColor);
  134. virtual void __fastcall ColorTint(int ra, int ga, int ba);
  135. virtual void __fastcall Colorize(int ra, int ga, int ba);
  136. virtual void __fastcall Rotate(const Types::TPoint &Center, Extended Angle);
  137. virtual void __fastcall Saturation(int Amount);
  138. virtual void __fastcall Sharpen(int Amount);
  139. virtual void __fastcall Sponge(int Amount);
  140. virtual void __fastcall Wave(Extended XDiv, Extended YDiv, Extended RatioVal, bool Wrap);
  141. __property void * Bits = {read=FBits};
  142. __property Graphics::TCanvas* Canvas = {read=FCanvas};
  143. __property int Handle = {read=FHandle, nodefault};
  144. __property bool IgnoreChange = {read=FIgnoreChange, write=FIgnoreChange, nodefault};
  145. __property Graphics::TBitmap* MaskBitmap = {read=GetMaskBitmap};
  146. __property bool RespectPalette = {read=FRespectPalette, write=FRespectPalette, nodefault};
  147. __property bool UseHalftonePalette = {read=FUseHalftonePalette, write=FUseHalftonePalette, nodefault};
  148. __property bool SmoothStretching = {read=FSmoothStretching, write=FSmoothStretching, nodefault};
  149. __property bool Sleeping = {read=GetSleeping, nodefault};
  150. __property int Size = {read=FSize, nodefault};
  151. __property Graphics::TColor TransparentColor = {read=FTransparentColor, write=FTransparentColor, nodefault};
  152. };
  153. //-- var, const, procedure ---------------------------------------------------
  154. extern PACKAGE TfcColor __fastcall fcGetColor(Graphics::TColor Color);
  155. extern PACKAGE Graphics::TColor __fastcall fcGetStdColor(TfcColor Color);
  156. extern PACKAGE TfcColor __fastcall fcRGB(Byte r, Byte g, Byte b);
  157. extern PACKAGE Byte __fastcall fcIntToByte(int Value);
  158. extern PACKAGE int __fastcall fcTrimInt(int i, int Min, int Max);
  159. } /* namespace Fcbitmap */
  160. #if !defined(NO_IMPLICIT_NAMESPACE_USE)
  161. using namespace Fcbitmap;
  162. #endif
  163. #pragma option pop // -w-
  164. #pragma option pop // -Vx
  165. #pragma delphiheader end.
  166. //-- end unit ----------------------------------------------------------------
  167. #endif // fcBitmap