Tag: gdlib

使用openGL截取屏幕截图并将其另存为png

我正在尝试全屏截图并将其保存为png。 我在这里找到了一个代码并对其进行了一些修改。 对于屏幕截图,我使用openGL和Glut以及在png中保存c的gd库。 我得到的只是一个黑色的png,我无法弄清楚为什么。 我在stackoverflow中搜索并发现了一些post,但不幸的是他们没有帮助。 其中一个是使用glReadBuffer(GL_FRONT); 而不是glReadBuffer(GL_BACK); 我尝试了两个都没有成功。 这是我的代码: int SVimage2file(char *filename){ int width = glutGet(GLUT_SCREEN_WIDTH); int height = glutGet( GLUT_SCREEN_HEIGHT); FILE *png; GLubyte *OpenGLimage, *p; gdImagePtr image; unsigned int r, g, b; int i,j,rgb; png = fopen(filename, “wb”); if (png == NULL) { printf(“*** warning: unable to write to %s\n”,filename); return 1; } OpenGLimage […]