91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 31KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-06-09
  • 語言: C/C++
  • 標(biāo)簽: 數(shù)字水印??c++??

資源簡介

數(shù)字水印的算法c++實(shí)現(xiàn),包括水印嵌入和水印提取

資源截圖

代碼片段和文件信息

//?DIB.cpp


#include?“stdafx.h“
#include?“DIB.h“

CDib::CDib()
{

m_pDib?=?NULL;
m_pWordData?=?NULL;
m_pFile?=?NULL;
m_pOldDibShow?=?NULL;
}

CDib::~CDib()
{


if(?m_pDib?!=?NULL?)
delete?[]?m_pDib;
if(?m_pWordData?!=?NULL?)
delete?[]?m_pWordData;
if?(m_pFile?!=?NULL)
delete?[]?m_pFile;
if?(m_pOldDibShow?!=?NULL)
delete?[]?m_pOldDibShow;

}

BOOL?CDib::Load(?const?char?*pszFilename?)
{

CFile?cf;

if(?!cf.Open(?pszFilename?CFile::modeRead?)?)
return(?FALSE?);


DWORD?dwDibSize;
dwDibSize?=
cf.GetLength()?-?sizeof(?BITMAPFILEHEADER?);

unsigned?char?*pDib;
pDib?=?new?unsigned?char?[dwDibSize];
if(?pDib?==?NULL?)
return(?FALSE?);

BITMAPFILEHEADER?BFH;

try{

if(?cf.Read(?&BFH?sizeof(?BITMAPFILEHEADER?)?)
!=?sizeof(?BITMAPFILEHEADER?)?||

BFH.bfType?!=?‘MB‘?||

cf.Read(?pDib?dwDibSize?)?!=?dwDibSize?){

delete?[]?pDib;
return(?FALSE?);
}
}


catch(?CFileException?*e?){
e->Delete();
delete?[]?pDib;
return(?FALSE?);
}

cf.Close();

if(?m_pDib?!=?NULL?)
delete?m_pDib;


?
if?(BFH.bfReserved1?!=?0)??????????//含有隱藏信息,保存其大小
{
if?(BFH.bfReserved2?==?0)
embfile_size?=?BFH.bfReserved1;
else
embfile_size?=?BFH.bfReserved1?+?65535;
}

m_pDib?=?pDib;
m_dwDibSize?=?dwDibSize;


m_pBIH?=?(BITMAPINFOHEADER?*)?m_pDib;
m_pPalette?=
(RGBQUAD?*)?&m_pDib[sizeof(BITMAPINFOHEADER)];


m_nPaletteEntries?=?1?<biBitCount;
if(?m_pBIH->biBitCount?>?8?)?????????
m_nPaletteEntries?=?0;
else?if(?m_pBIH->biClrUsed?!=?0?)
m_nPaletteEntries?=?m_pBIH->biClrUsed;


m_pDibBits?=?????????????????????
&m_pDib[sizeof(BITMAPINFOHEADER)+
m_nPaletteEntries*sizeof(RGBQUAD)];



if(?m_Palette.GetSafeHandle()?!=?NULL?)
m_Palette.Deleteobject();

if(?m_nPaletteEntries?!=?0?){??????

LOGPALETTE?*pLogPal?=?(LOGPALETTE?*)?new?char
[sizeof(LOGPALETTE)+
m_nPaletteEntries*sizeof(PALETTEENTRY)];

if(?pLogPal?!=?NULL?){

pLogPal->palVersion?=?0x300;
pLogPal->palNumEntries?=?m_nPaletteEntries;

for(?int?i=0;?i pLogPal->palPalEntry[i].peRed?=
m_pPalette[i].rgbRed;
pLogPal->palPalEntry[i].peGreen?=
m_pPalette[i].rgbGreen;
pLogPal->palPalEntry[i].peBlue?=
m_pPalette[i].rgbBlue;
}

m_Palette.CreatePalette(?pLogPal?);
delete?[]?pLogPal;
}
}

m_BitCount?=?24;?????????????//24位位圖
p?=?m_pDibBits;??????????????//指向位圖數(shù)據(jù)的指針,用來執(zhí)行處理操作用
bitmap_size?=?m_dwDibSize?-?(m_pDibBits?-?m_pDib);//真正的位圖數(shù)據(jù)的大小(即除頭結(jié)構(gòu)外)

tag?=?BFH.bfReserved1;
return(?TRUE?);

}

BOOL?CDib::Save(?const?char?*pszFilename?)?//保存含有隱藏信息的bmp
{


if(?m_pDib?==?NULL?)
return(?FALSE?);

CFile?cf;


if(?!cf.Open(?pszFilename
CFile::modeCreate?|?CFile::modeWrite?)?)
return(?FALSE?);


try{


BITMAPFILEHEADER?BFH;
memset(?&BFH?0?sizeof(?BITMAPFILEHEADER?)?);
BFH.

?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----

?????文件???????8128??2004-06-05?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\DIB.cpp

?????文件???????1028??2004-06-05?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\DIB.h

?????文件???????2553??2004-06-04?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\MainFrm.cpp

?????文件???????1598??1998-01-01?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\MainFrm.h

?????文件??????26028??2011-06-27?11:13??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\MyImageWork.aps

?????文件???????4334??2004-06-05?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\MyImageWork.cpp

?????文件???????4843??2004-06-05?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\MyImageWork.dsp

?????文件????????547??2003-05-08?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\MyImageWork.dsw

?????文件???????1411??2003-05-08?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\MyImageWork.h

?????文件??????10325??2004-06-05?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\MyImageWork.rc

?????文件???????1842??2003-05-08?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\MyImageWorkDoc.cpp

?????文件???????1530??2003-05-08?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\MyImageWorkDoc.h

?????文件???????6607??2004-06-05?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\MyImageWorkView.cpp

?????文件???????2224??2004-06-05?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\MyImageWorkView.h

?????文件???????4521??2010-06-20?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\ReadMe.txt

?????文件????????403??2003-05-08?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\res\MyImageWork.rc2

?????文件???????1078??2003-05-08?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\res\MyImageWorkDoc.ico

?????文件???????1078??2004-06-05?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\res\SECUR02A.ICO

?????文件????????694??2009-11-16?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\res\使?用?說?明.txt

?????文件???????1339??2004-06-05?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\resource.h

?????文件????????213??2003-05-08?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\StdAfx.cpp

?????文件???????1054??2003-05-08?00:00??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\StdAfx.h

?????目錄??????????0??2011-09-21?16:34??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork\res

?????目錄??????????0??2011-09-21?16:34??數(shù)字水印實(shí)現(xiàn)算法\MyImageWork

?????目錄??????????0??2011-09-21?16:34??數(shù)字水印實(shí)現(xiàn)算法

-----------?---------??----------?-----??----

????????????????83378????????????????????25


評(píng)論

共有 條評(píng)論