CreateDIBSectionに失敗した
-
22-07-2019 - |
質問
BITMAPINFO bmi;
memset(&bmi,0,sizeof(BITMAPINFO));
bmi.bmiHeader.biSize = sizeof(BITMAPINFOHEADER);
bmi.bmiHeader.biWidth =m_pImg->GetWidth();
bmi.bmiHeader.biHeight =m_pImg->GetHeight();
bmi.bmiHeader.biPlanes = 1;
//if( m_pImg->GetInfo()->biBitCount!=16)
//{
// bmi.bmiHeader.biBitCount = m_pImg->GetInfo()->biBitCount;
//}
//else
//{
//ASSERT((m_pImg->GetInfo())->bmiHeader->biBitCount == 24);
bmi.bmiHeader.biBitCount=24;
bmi.bmiHeader.biCompression = BI_RGB;
if (bmi.bmiHeader.biSizeImage == 0)
bmi.bmiHeader.biSizeImage =
WidthBytes(bmi.bmiHeader.biWidth,bmi.bmiHeader.biBitCount) * bmi.bmiHeader.biHeight;
if(bmi.bmiHeader.biClrUsed == 0 && bmi.bmiHeader.biBitCount <16)
bmi.bmiHeader.biClrUsed=DWORD(1 <<bmi.bmiHeader.biBitCount);
m_nNewSize=bmi.bmiHeader.biSizeImage;
if(m_hbmCanvasBitmap!=NULL)
{
DeleteObject(m_hbmCanvasBitmap);
m_hbmCanvasBitmap=NULL;
m_pCanvasBits=NULL;
}
// 创建直接与DC相关联的位图
m_hbmCanvasBitmap=CreateDIBSection(m_hDC, &bmi, DIB_RGB_COLORS,(void**)&m_pCanvasBits, NULL, NULL);
//後CreateDIBSection このエラーコードは8、十分な資源です。
したいので避ける。していただくために幅:3500高2500 多くの!
解決
と思うのは、その答えと同一の答え以前の質問:おはビットマップ 方法 大きすぎます。
また、お寸法は現在の寸法にビットマップによって、当時全米最大の無料問い推測を行うに先入quadrantsを展開しているが、なかな資源を使って<div>タグを埋め込む先のビットマップ.ということはいませんのビットマップメモリからお前のことを伝え、"よくやった!がありますの再起動してすべてのこと 多く 小さい先。
他のヒント
コマンドを完了するのに十分なメモリがありません。 「修正」できません。メモリ境界を壊そうとする以外は、そのままです。
むしろ、作業中のすべての画像を管理可能なサイズに分割し、それらを交換できるようにする必要があります。
所属していません StackOverflow