【问题标题】:Simple 2D graphics C library for windows with the following requirements?适用于具有以下要求的 Windows 的简单 2D 图形 C 库?
【发布时间】:2010-10-14 20:43:05
【问题描述】:

我遇到一个项目,需要在 Windows 下的窗体上绘制一些 2D 图形,并且能够执行以下任务:

  • 读取图像格式 jpg、GIF、png,具有透明度
  • 监视此表单的鼠标和键盘输入
  • 绘制简单的二维形状,例如。线、椭圆、矩形、像素设置/清除、多边形、...
  • 绘制具有真实字体类型和大小的文本并测量不同字符串的文本大小
  • 用 C 语言编写,可以集成到 Visual Studio 2008 C 项目中

我尝试过 OpenCV,但它缺乏透明度、字体类型和 GIF 解码等方面

我需要你的帮助,如果该库易于学习和使用就很好了

谢谢大家

【问题讨论】:

    标签: c graphics visual-studio-2005


    【解决方案1】:

    对于SDL 来说,这听起来像是一份完美的工作

    【讨论】:

    【解决方案2】:

    为什么不使用 Windows 内置的 GDI?

    传统 GDI 文档 - http://msdn.microsoft.com/en-us/library/dd145203%28v=VS.85%29.aspx 较新的 GDI+ 文档 - http://msdn.microsoft.com/en-us/library/ms533798%28VS.85%29.aspx

    添加了更多信息:

    我想我不明白你的要求。是否需要跨平台支持?如果是,那么使用 C 和人们提到的一些跨平台库。如果这只是 Windows,那么为什么不使用 Windows 附带的 API?

    既然您已经在使用 Visual Studio 并且希望易于学习和开发,为什么不使用 C# 和 .NET 库呢?在 2010 年,这确实是构建仅 Windows 程序的最简单方法。 Windows 窗体可能会满足您的所有需求。如果你真的必须用 C 编写并且你只是 Windows,那么使用 GDI+(如果你需要支持旧版本的 Windows,则使用 GDI)。如果您想学习经典的 Windows C 编程,请转到源代码 - http://www.charlespetzold.com/pw5/

    【讨论】:

      【解决方案3】:

      正如 daddz 所说,您可以使用 SDL 进行输入和图像读取。为了渲染您的 2D 图元,OpenGL 将完成这项工作(确保在调用 SDL_CreateWindow 时创建一个 OpenGL 兼容窗口)。关于字体渲染,它不是直接在 SDL 中实现的,但可以使用几个库(参见 Survey Of OpenGL Font Technology)。

      【讨论】:

      • 感谢您的回答和评论,但是我认为使用 openGL 和 SDL 来提供解决方案看起来太复杂了,添加字体库使得解决设计挑战的技术过于庞大,我认为世界上一定还有其他更直接的解决方案
      猜你喜欢
      • 1970-01-01
      • 2010-09-25
      • 2023-04-10
      • 2011-04-06
      • 2023-03-15
      • 1970-01-01
      • 2018-08-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多