如何创建位图(C语言)?
我想知道如何在C语言中导入和导出位图。我基本上不知道从哪里开始。术语“位图”有点通用,除非你特别指位图如何创建位图(C语言)?,c,image-processing,bitmap,C,Image Processing,Bitmap,我想知道如何在C语言中导入和导出位图。我基本上不知道从哪里开始。术语“位图”有点通用,除非你特别指位图 我建议在您的平台上使用图像处理库(如)。一个好的图形库有一些例程,可以对各种格式的图像进行输入和输出 您看过ImageMagick的C API包装器了吗如果您想仔细阅读文档。内存中的位图与此类似: struct Image { int width; int height; char *data; // 1 byte per channel & only 1
我建议在您的平台上使用图像处理库(如)。一个好的图形库有一些例程,可以对各种格式的图像进行输入和输出 您看过ImageMagick的C API包装器了吗如果您想仔细阅读文档。内存中的位图与此类似:
struct Image {
int width;
int height;
char *data; // 1 byte per channel & only 1 channel == grayscale
}
struct Image theImage;
theImage.width = 100;
theImage.height = 100;
theImage.data = malloc(sizeof(char) * theImage.width * theImage.height);
至于导入和导出,有一些非常简单的文件格式,请看。对于更复杂的格式,最好使用已有的库
大多数框架已经为最常见的文件格式提供了加载/保存方法。如果您正在寻找一个轻量级库,您可以看看。我喜欢使用虚拟驱动程序。您可以像在屏幕上一样在内存缓冲区中进行绘制,然后将其保存为PNG或其他类似格式
另一个流行的库是。简单的答案是使用合适的库。合适的库取决于您使用的平台。在GUI平台上,GUI API/框架将包括这些功能。非常出色。我将其用于我自己的游戏开发工作,它支持多种格式。以下是支持的功能和格式列表-我喜欢/tools,尽管我通常喜欢命令行;这个API很有效,但使用起来没有多大乐趣
这学期我写了大量的软件给初学的学生用来操作图像;你可能想查看塔夫茨课程的家庭作业和支持软件。从头开始创建位图或通过库创建位图?你应该学习位图文件的结构。然后创建位图并不困难,就像在填充文件头后玩位一样。我看了100页API手册,我不确定这是谁的人有困难开始的来源…用户名+密码的最后一个链接所需的?