文本缓冲几何体(TextGeometry)

优质
小牛编辑
130浏览
2023-12-01

一个用于将文本生成为单一的几何体的类。 它是由一串给定的文本,以及由加载的Font(字体)和该几何体ExtrudeGeometry父类中的设置所组成的参数来构造的。 请参阅FontFontLoaderCreating_Text页面来查看更多详细信息。

// iOS iframe auto-resize workaround if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) { const scene = document.getElementById( 'scene' ); scene.style.width = getComputedStyle( scene ).width; scene.style.height = getComputedStyle( scene ).height; scene.setAttribute( 'scrolling', 'no' ); }

代码示例

const loader = new THREE.FontLoader();
loader.load( 'fonts/helvetiker_regular.typeface.json', function ( font ) {
  const geometry = new THREE.TextGeometry( 'Hello three.js!', {
    font: font,
    size: 80,
    height: 5,
    curveSegments: 12,
    bevelEnabled: true,
    bevelThickness: 10,
    bevelSize: 8,
    bevelSegments: 5
  } );
} );

例子

geometry / text

构造器

TextGeometry(text : String, parameters : Object)

text — 将要显示的文本。
parameters — 包含有下列参数的对象:

  • font — THREE.Font的实例。
  • size — Float。字体大小,默认值为100。
  • height — Float。挤出文本的厚度。默认值为50。
  • curveSegments — Integer。(表示文本的)曲线上点的数量。默认值为12。
  • bevelEnabled — Boolean。是否开启斜角,默认为false。
  • bevelThickness — Float。文本上斜角的深度,默认值为20。
  • bevelSize — Float。斜角与原始文本轮廓之间的延伸距离。默认值为8。
  • bevelSegments — Integer。斜角的分段数。默认值为3。

可用的字体

文本几何体使用 typeface.json所生成的字体。 一些已有的字体可以在/examples/fonts中找到,且必须在页面中引入。

字体字重风格文件路径
helvetikernormalnormal/examples/fonts/helvetiker_regular.typeface.json
helvetikerboldnormal/examples/fonts/helvetiker_bold.typeface.json
optimernormalnormal/examples/fonts/optimer_regular.typeface.json
optimerboldnormal/examples/fonts/optimer_bold.typeface.json
gentilisnormalnormal/examples/fonts/gentilis_regular.typeface.json
gentilisboldnormal/examples/fonts/gentilis_bold.typeface.json
droid sansnormalnormal/examples/fonts/droid/droid_sans_regular.typeface.json
droid sansboldnormal/examples/fonts/droid/droid_sans_bold.typeface.json
droid serifnormalnormal/examples/fonts/droid/droid_serif_regular.typeface.json
droid serifboldnormal/examples/fonts/droid/droid_serif_bold.typeface.json

属性

共有属性请参见其基类ExtrudeGeometry

.parameters : Object

一个包含着构造函数中每个参数的对象。在对象实例化之后,对该属性的任何修改都不会改变这个几何体。

方法(Methods)

共有方法请参见其基类ExtrudeGeometry

源代码

src/geometries/TextGeometry.js