我在使用一种算法来“展平”PDF 文档中的页面时遇到内存问题。
HBITMAP hbmp = CreateDibSection(...);
ThirdPartyBmpManipulation(hbmp, "C:\\file.pdf", 0); //renders page 0 in file.pdf
void * hdib = ConvertBitmap(hbmp); //copy a Dib Section to a Dib
DeleteObject(hbmp); //frees the HBitmap while the Dib is now in memory
问题是我有一个非常大的位图,在某些情况下,当我分配要复制的 DIB 时,我无法将 HBitmap 保留在内存中。
所以这是一个很长的镜头,但我可以以某种方式在磁盘上分配 Dib 部分并且仍然有一个 HBITMAP 吗?(对我的 ConvertBitmap 函数使用相同的句柄)