gpt4 book ai didi

java - 获取字符串的像素

转载 作者:行者123 更新时间:2023-12-04 18:05:20 24 4
gpt4 key购买 nike

在使用 drawstring() 方法做一些事情时,我想知道是否有一种方法可以从字符串参数中提取像素数组,以便返回类型适合 2d像素阵列?该方法还需要调整尺寸和着色。

我已经成功地使用 drawstring() 将字符串绘制到附加了像素监听器的图形参数,然后简单地从该特定区域获取数据。但我想知道它们是否是一种无需绘制即可获取像素的方法?

我希望能够使用我拥有的像素引擎添加波浪、3d 旋转和炫酷粒子效果等效果,因此绘制然后抓取像素需要很大的更新空间!

请记住,在将字符串提取到像素数组之前,会对其进行缩放、着色和转换,因此绘制一次字符串将无法正常工作。

最佳答案

绘制字符串的操作很复杂。字符串中的文本数据首先必须被解码为给定字体的一系列字形。然后通过与字体曲线定义相交的线以您正在渲染的比例对它们进行光栅化。 (实际上,通过一个称为“提示”的过程,这甚至更加复杂。)一旦您对字形进行了光栅化,您就拥有了可以发送到显示设备的像素阵列。

你想要做的是通过将文本转换为一组从字体字形创建的曲线来在中间中断这个过程。如下代码将为您提供曲线:

Graphics graphics;
Font font = new Font("ComicSans", Font.PLAIN, 12);
GlyphVector vector = font.createGlyphVector(graphics.getFontMetrics(font).getFontRenderContext(), "Lorem ipsum");
Shape shape = vector.getOutline();
// transform shape

关于java - 获取字符串的像素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27943953/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com