资源简介
不用多说了,经典算法。初学者和需要交作业的学生可以参考。完整的源代码和可执行程序。
代码片段和文件信息
// dibapi.cpp
//
// Source file for Device-Independent Bitmap (DIB) API. Provides
// the following functions:
//
// PaintDIB() - Painting routine for a DIB
// CreateDIBPalette() - Creates a palette from a DIB
// FindDIBBits() - Returns a pointer to the DIB bits
// DIBWidth() - Gets the width of the DIB
// DIBHeight() - Gets the height of the DIB
// PaletteSize() - Gets the size required to store the DIB‘s palette
// DIBNumColors() - Calculates the number of colors
// in the DIB‘s color table
// CopyHandle() - Makes a copy of the given global memory block
//
// This is a part of the Microsoft Foundation Classes C++ library.
// Copyright (C) 1992-1997 Microsoft Corporation
// All rights reserved.
//
// This source code is only intended as a supplement to the
// Microsoft Foundation Classes Reference and related
// electronic documentation provided with the library.
// See these sources for detailed information regarding the
// Microsoft Foundation Classes product.
#include “stdafx.h“
#include “dibapi.h“
#include
#include
#include
#define DIB_HEADER_MARKER ((WORD) (‘M‘ << 8) | ‘B‘)
#ifdef _MAC
#define SWAPWORD(x) MAKEWORD(HIBYTE(x) LOBYTE(x))
#define SWAPLONG(x) MAKELONG(SWAPWORD(HIWORD(x)) SWAPWORD(LOWORD(x)))
void ByteSwapHeader(BITMAPFILEHEADER* bmiHeader);
void ByteSwapInfo(LPSTR lpHeader BOOL fWin30Header);
#endif
/*************************************************************************
*
* PaintDIB()
*
* Parameters:
*
* HDC hDC - DC to do output to
*
* LPRECT lpDCRect - rectangle on DC to do output to
*
* HDIB hDIB - handle to global memory with a DIB spec
* in it followed by the DIB bits
*
* LPRECT lpDIBRect - rectangle of DIB to output into lpDCRect
*
* CPalette* pPal - pointer to CPalette containing DIB‘s palette
*
* Return Value:
*
* BOOL - TRUE if DIB was drawn FALSE otherwise
*
* Description:
* Painting routine for a DIB. Calls StretchDIBits() or
* SetDIBitsToDevice() to paint the DIB. The DIB is
* output to the specified DC at the coordinates given
* in lpDCRect. The area of the DIB to be output is
* given by lpDIBRect.
*
************************************************************************/
BOOL WINAPI PaintDIB(HDC hDC
LPRECT lpDCRect
HDIB hDIB
LPRECT lpDIBRect
CPalette* pPal)
{
LPSTR lpDIBHdr; // Pointer to BITMAPINFOHEADER
LPSTR lpDIBBits; // Pointer to DIB bits
BOOL bSuccess=FALSE; // Success/fail flag
HPALETTE hPal=NULL; // Our DIB‘s palette
HPALETTE hOldPal=NULL; // Previous palette
/* Check for valid DIB handle */
if (hDIB == NULL)
return FALSE;
/* Lock down the DIB and get a pointer to the beginning of the bit
* buffer
*/
l
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 66614 2004-06-30 00:54 离散余弦变换\离散余弦变换\测试图片\DCT变换结果.bmp
..A.SH. 8192 2009-05-21 16:15 离散余弦变换\离散余弦变换\测试图片\Thumbs.db
文件 66614 2004-06-29 22:59 离散余弦变换\离散余弦变换\测试图片\原始lena图像.bmp
文件 28549 2009-05-21 16:16 离散余弦变换\离散余弦变换\源代码\Debug\MainFrm.obj
文件 5068580 2009-05-21 16:16 离散余弦变换\离散余弦变换\源代码\Debug\MainFrm.pch
文件 25600 2009-05-21 16:16 离散余弦变换\离散余弦变换\源代码\Debug\MainFrm.pdb
文件 181248 2009-05-21 16:16 离散余弦变换\离散余弦变换\源代码\Debug\vc60.idb
文件 69632 2009-05-21 16:16 离散余弦变换\离散余弦变换\源代码\Debug\vc60.pdb
文件 23782 2004-03-07 17:05 离散余弦变换\离散余弦变换\源代码\dibapi.cpp
文件 1876 2000-02-03 07:29 离散余弦变换\离散余弦变换\源代码\dibapi.h
文件 2506 2004-05-20 14:25 离散余弦变换\离散余弦变换\源代码\MainFrm.cpp
文件 3413 2009-05-21 16:16 离散余弦变换\离散余弦变换\源代码\MainFrm.dsp
文件 522 2009-05-21 16:16 离散余弦变换\离散余弦变换\源代码\MainFrm.dsw
文件 1581 2004-05-20 14:25 离散余弦变换\离散余弦变换\源代码\MainFrm.h
文件 33792 2009-05-21 16:16 离散余弦变换\离散余弦变换\源代码\MainFrm.ncb
文件 49664 2009-05-21 16:16 离散余弦变换\离散余弦变换\源代码\MainFrm.opt
文件 1381 2009-05-21 16:16 离散余弦变换\离散余弦变换\源代码\MainFrm.plg
文件 3157 2004-05-20 17:49 离散余弦变换\离散余弦变换\源代码\mydib.cpp
文件 72 2004-05-20 17:26 离散余弦变换\离散余弦变换\源代码\mydib.h
文件 46272 2004-06-30 00:52 离散余弦变换\离散余弦变换\源代码\MyDIP.aps
文件 2615 2004-06-30 00:51 离散余弦变换\离散余弦变换\源代码\MyDIP.clw
文件 4158 2004-05-20 14:25 离散余弦变换\离散余弦变换\源代码\MyDIP.cpp
文件 4781 2004-05-20 17:54 离散余弦变换\离散余弦变换\源代码\MyDIP.dsp
文件 533 2004-05-20 14:25 离散余弦变换\离散余弦变换\源代码\MyDIP.dsw
文件 1345 2004-05-20 14:25 离散余弦变换\离散余弦变换\源代码\MyDIP.h
文件 12279 2004-06-30 00:52 离散余弦变换\离散余弦变换\源代码\MyDIP.rc
文件 4007 2004-05-20 17:10 离散余弦变换\离散余弦变换\源代码\MyDIPDoc.cpp
文件 1830 2004-05-20 15:17 离散余弦变换\离散余弦变换\源代码\MyDIPDoc.h
文件 11084 2004-06-30 00:54 离散余弦变换\离散余弦变换\源代码\MyDIPView.cpp
文件 1852 2004-06-30 00:51 离散余弦变换\离散余弦变换\源代码\MyDIPView.h
............此处省略20个文件信息
- 上一篇:稀疏表示和协同编码哪个对人脸识别起了作用
- 下一篇:H3C_ER3100配置
相关资源
- 一种非常好的快速DCT算法
- 数字水印 经典代码
- snomedct 3.4中文电子版
- STM32_ADC+TIM+DMA
- 基于DCT算法视频压缩内含实验报告和
- GridCtrl控件源码及Demo
- 基于hash的图像检索软件
- chen fast dct
- DCT域图像数字水印算法的分析和实现
- 基于DCT变换信息隐藏图片嵌入水印课
- 采用[FFT傅立叶变换,DCT离散余弦变化
- DCT域图像数字水印算法的分析和实现
- 基于离散分数余弦变换的图像加密算
- CGridCtrl表格控件
- DCT图像重建
- 离散余弦变换编码的现状与发展研究
- DCT域自适应混沌加密的二值图像数字
- DCT图像压缩
- H.264的整数DCT变换编码与量化过程
- 列表库GridCtrl,包含源码、说明和两种
- 信号DCT字典稀疏表示
- 图像编码程序,基于DCT的JPEG编码过程
- 基于DCT变换的数字水印算法
- VC表格控件/开源/GridCtrl
- DCT数字水印嵌入与提取过程
- opencv处理图像88分块DCT变换和量化
- DCT变换编码
- 2019.4 DDCTF web题--滴 writeup
- 离散余弦变换的最小二乘法相位解包
- opencv处理图像8*8分块DCT变换和量化
评论
共有 条评论