社区
图形处理/算法
帖子详情
建立自己的类库
shushenlw
2009-05-25 03:36:11
刚接触VC,老师让自己做一个DIB类库,说是处理位图的时候要用,不知道如何建立,希望各位帮助,谢谢。
...全文
131
14
打赏
收藏
建立自己的类库
刚接触VC,老师让自己做一个DIB类库,说是处理位图的时候要用,不知道如何建立,希望各位帮助,谢谢。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
IONPhantom
2009-06-04
打赏
举报
回复
楼上的观点...服了,靠抄就能会吗?抄根本就是不走脑子的活动
Eleven
2009-06-04
打赏
举报
回复
[Quote=引用 13 楼 lambochan 的回复:]
你不抄难道一开始你就会自己编?
估计99%的都是从抄"hello world"开始的..hohoho..
只不过现在进化了些..抄...DIB类.
[/Quote]
说的好听一点那叫借鉴一下
lambochan
2009-06-04
打赏
举报
回复
你不抄难道一开始你就会自己编?
估计99%的都是从抄"hello world"开始的..hohoho..
只不过现在进化了些..抄...DIB类.
lambochan
2009-06-04
打赏
举报
回复
[Quote=引用 10 楼 P_hantom 的回复:]
楼上的观点...服了,靠抄就能会吗?抄根本就是不走脑子的活动
[/Quote]
晕,让你抄1百1千次BITMAPINFOHEADER..你猜你会不会烂熟里面的所有值域.
你抄都不抄听老师讲完就算,你猜你会不会知道里面是什么东西?
注意这个"抄"字..不是"粘贴"..
所以,应该体谅老师的苦衷..
当然,抄都不抄直接down个下来交差那就不在偶说之内了..
lambochan
2009-06-03
打赏
举报
回复
老师做法是正确的,明知你们怎么也写不出(也许连老师自己都写不出),实质上就是叫你们去抄,好过你们连抄都懒得抄..
shushenlw
2009-06-03
打赏
举报
回复
呵呵,看来是的。
IONPhantom
2009-05-30
打赏
举报
回复
刚接触VC就让自己写GDI类库?老师是不是太2了!
BruceLin2008
2009-05-29
打赏
举报
回复
我有完整的代码,要的话给你发一份。iamhycljc@163.com
sld009
2009-05-29
打赏
举报
回复
this->FileName=FileName;
if (Bitmap.bmBits!=NULL)
{
delete[]Bitmap.bmBits;
}
Bitmap.bmBits=NULL;
if (pPixels)
{
delete[]pPixels;
}
pPixels=NULL;
Open(FileName,CFile::modeRead,NULL);
ULONGLONG FileStart=GetPosition();
Read(&FileHeader,sizeof(BITMAPFILEHEADER));
Read(&InfoHeader,sizeof(BITMAPINFOHEADER));
nPixels=InfoHeader.biSizeImage;
Bitmap.bmBits=new BYTE[nPixels];
if (NULL==Bitmap.bmBits)
{
return false;
}
pPixels=new BYTE[nPixels];
if (NULL==pPixels)
{
return false;
}
Seek(FileStart+FileHeader.bfOffBits,CFile::begin);
Read(Bitmap.bmBits,nPixels);
memcpy(pPixels,Bitmap.bmBits,nPixels);
Bitmap.bmWidth=InfoHeader.biWidth;
Bitmap.bmHeight=InfoHeader.biHeight;
Bitmap.bmWidthBytes=InfoHeader.biBitCount/8*Bitmap.bmWidth;
Close();
return true;
打开文件用的 我们上课就用这个
laoma_hbu
2009-05-27
打赏
举报
回复
《Visual C++.NET图像处理编程》作者: 陆宗骐,金登男;出版社:清华大学
书不错,排版太差了,看着不舒服。
shushenlw
2009-05-26
打赏
举报
回复
多谢,不过向世明的那本书我有,但是我照着做出来后开始->打开,然后找一个位图,结果位图不能显示啊。
99
2009-05-25
打赏
举报
回复
faint
不能输入了
.....QQ43248007,给你发一个吧.哈哈
99
2009-05-25
打赏
举报
回复
/////////////////////////////////////////////////////////////////////////////////
//
// Dib.h: interface for the CDib class.
//
////////////////////////////////////////////////////////////////////////////////
// 版权所有(2002)
// Copyright(2002)
// 编写者: 向世明
// Author: Xiang Shiming
#ifndef _CDIB_H
#define _CDIB_H
class CDib : public CObject
{
DECLARE_DYNAMIC(CDib)
protected:
BOOL m_bValid; //是否有效
RGBQUAD* m_pRGBQuad; //RGBQUAD 表项
BYTE* m_pDibData; //位图像素数据
LONG m_nWidth; //宽度
LONG m_nHeight; //高度
BYTE m_nBitCount; //每个像素占有的位数
UINT m_nTotalColors; //颜色总数
char* m_pszFileName;
BITMAPFILEHEADER* m_pBitmapFileHeader;
BITMAPINFOHEADER* m_pBitmapInfoHeader;
BITMAPINFO* m_pBitmapInfo;
HGLOBAL m_hDIB;
public:
CDib();
CDib(const char* pszDibFileName);
~CDib();
int Draw(HDC hdc, int XDest, int YDest, int nDestWidth, int nDestHeight, int XSrc, int YSrc, int nSrcWidth, int nSrcHeight, UINT iUsage, DWORD dwRop);
DWORD GetDdbData32(LPBYTE lpbyDdb32);
DWORD GetDdbData24(LPBYTE lpbyDdb24);
DWORD GetDibWidthBytes(int nWidth, BYTE byBitCount);
BYTE GetBitCount() const;
DWORD GetSize();
LONG GetWidth() const;
LONG GetHeight() const;
UINT GetColorNumber() const;
char* GetFileName() const;
BOOL IsValid() const ;
RGBQUAD* GetRGBQuad() const ;
BYTE* GetDibData() const ;
BITMAPINFO* GetBmpInfo() const;
DWORD GetGrayData(LPBYTE lpdata);
public:
void ClearMemory();
HPALETTE CreateBitmapPalette();
#ifdef _DEBUG
virtual void Dump(CDumpContext& dc) const;
virtual void AssertValid() const;
#endif
protected:
void LoadFile(const char* pszDibFileName);
private:
void Init();
};
#endif
建立
自己的.net
类库
本文介绍了
建立
自己的.NET
类库
的详细步骤,包括创建Class Library工程、为Dll工程加强名、编译工程生成Dll文件、将Dll文件注册到GAC、在注册表添加键值等。最后总结可将常用组件注册成GAC,在.NET里全局引用,以提高便利性。
建立
属于自己的
类库
文章介绍了如何创建和使用
类库
来存放.class文件,以及如何配置系统的classpath环境变量来引用这些类。作者详细阐述了在Windows环境下设置系统变量的步骤,并提供了编写及运行Java程序的示例,包括包声明和类的导入。
arduino学习6——
类库
的
建立
本文介绍如何为Arduino平台上的SR04超声波传感器开发
类库
,包括创建头文件、实现.cpp文件、设置关键字高亮显示、添加库至Arduino IDE以及创建示例程序。
Eclipse中
建立
自己的
类库
,给不同的工程使用
本文介绍如何在Eclipse中创建一个自定义
类库
,用于整合多个工程中所需的jar包,以避免重复导入的问题。通过新建
类库
并导入所需jar包,简化项目依赖管理。
java创建一个自己的
类库
_
建立
并使用自己的
类库
本文介绍了如何创建一个自定义的Java
类库
,通过使用反转域名的方式为
类库
命名,例如`cn.baixo.test`。在创建了
类库
之后,详细说明了如何配置环境变量CLASSPATH来使用该
类库
,并提供了示例代码展示如何导入和运行自定义的类。
图形处理/算法
19,464
社区成员
50,678
社区内容
发帖
与我相关
我的任务
图形处理/算法
VC/MFC 图形处理/算法
复制链接
扫一扫
分享
社区描述
VC/MFC 图形处理/算法
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章