?? embed.h
字號:
#if !defined(AFX_EMBED_H__08FC68A8_8311_4C93_9219_A8F4F648F4DE__INCLUDED_)
#define AFX_EMBED_H__08FC68A8_8311_4C93_9219_A8F4F648F4DE__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// Embed.h : header file
//
#include "Dib.h"
/////////////////////////////////////////////////////////////////////////////
// CEmbed dialog
class CEmbed : public CDialog
{
// Construction
public:
CEmbed(CWnd* pParent = NULL); // standard constructor
// Dialog Data
//{{AFX_DATA(CEmbed)
enum { IDD = IDD_EMBED_DIALOG };
int m_encrypt;
//}}AFX_DATA
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CEmbed)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
public:
void SetImagePixel(CDC *pdc,int x_start,int y_start,int height,int width,RGBQUAD **m_imagedata,float m,float n);//點亮水印后的圖像m,n控制縮放比例
void ShowText(CString s,RECT re,CEdit *edit);
void Encrypt();
protected:
void LSB_watermarking(int i,int j,BYTE a,BYTE b,BYTE c);//將C高四位給A低四位,低四位給B低四位,i,j是像素點坐標
RGBQUAD **m_ImageData;
RGBQUAD **m_WaterImageData;
RGBQUAD **m_WaterEmbedData;
RGBQUAD **m_WaterEncryptData;
void GetImageData();//把圖像轉換成數據存儲
void GetWaterImageData();//把水印圖像轉換成數據存儲
CString ImageFilename;
CString WaterImageFilename;
CString str1,str2;//顯示位圖長寬
// CString watername;
RECT rect[3];
BITMAP bm[3];
HBITMAP hBitmap[3];
HDC hSrcDC[3];
HDC hDesDC[3];
BOOL show[3];
CWnd *m_hwnd[3];
CDib *m_dib,*m_dib1;
long ImageHeight;
long ImageWidth;
long WaterImageHeight;
long WaterImageWidth;
CEdit *m_edit1,*m_edit2;
RECT r,r1;
int biBitCount,biBitCount1;
int num;//沒有被0填充像素點數
int a11,a12,a21,a22;
int T,N;
BOOL flag;//是否點了加密按鈕
// Generated message map functions
//{{AFX_MSG(CEmbed)
afx_msg void OnOpenImage();
afx_msg void OnTimer(UINT nIDEvent);
afx_msg void OnOpenWaterImage();
afx_msg void OnClearAll();
afx_msg void OnEmbedWaterImage();
afx_msg void OnSaveWaterMarking();
afx_msg void OnSecret();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_EMBED_H__08FC68A8_8311_4C93_9219_A8F4F648F4DE__INCLUDED_)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -