2013-02-07 102 views
0

我正在使用sdl ttf来渲染文本到opengl,实际上一切都很好,但正如你所知,当你打开一个ttf sdl文件时,你可以在像素上指定它,改变字体大小。其实你可以改变字体大小,但是你需要关闭并重新打开字体,这会稍微慢一点,所以,有什么方法可以改变字体大小或类似的东西吗?SDL ttf与opengl,字体大小问题

我需要执行以下操作:字体大小可以调整大小并调整到窗口屏幕(例如,类似于百分比的opengl -1.0f-1.0f范围),多行渲染支持,无背景。

+0

*这会有点慢*你有没有测量过? –

+0

嗯,你是否建议我每次渲染和交换像素缓冲区时都要打开/关闭字体?那会影响opengl的渲染速度?请告诉我:)谢谢 – Spamdark

+0

我刚刚问过你是否真的衡量了对性能的影响。 –

回答

0

您可以将它放在表面上并缩放表面。这可能会使文本变形,这可能是一个问题。

或者你可以有一个文本大小的数组。使用一定范围的文字大小加载相同的字体。在缩放图像时,请使用不同的字体,而不是更改一种字体的大小。

+0

我一直在想,事实上,我打算这么做!好主意,我只是在等待任何确认。 我不喜欢和sdl ttf一起工作......但是,这是我拥有的最接近的图书馆。 – Spamdark

+0

我的项目设置的方式,我无法使FreeType工作(我无法通过一个黑色的矩形)。如果我尝试运行着色器,则不会呈现任何内容。我终于设法让SDL_TTF显示文本,虽然我有一些恼人的闪烁,因为它使用了SDL_Renderer。 – Artorias2718