0

我正在尝试将基于 three.js 的 3D 对象添加到 PDF 页面。似乎没有直接的出口商可以这样做。所以我正在尝试做以下事情,

  1. gltf/stl/obj文件转换为U3D文件
  2. .u3d 文件添加到 PDF 页面

我正在尝试执行以下过程,但我不确定这种方法是否可行。如果有任何支持可用于执行以下任何一种转换,这将是一个很大的帮助。另外,如果您知道任何其他可能的方法,请更新我!

     Input formats      output format

        GLTF
        OBJ                U3D
        STL
       (any
       three.js supported
       3D formats)

谢谢。

4

1 回答 1

0

将 three.js 图形导出为 PDF 的选项很少(静态内容不是动态 U3D 资产)

静态内容

  1. 使用从three.js webGL渲染器/画布渲染器获取渲染数据toDataURL("image/jpeg"),将MIME类型更改为JPG/PNG并将生成的流作为图像添加到PDF(这对我有用)

    示例 - https://plnkr.co/edit/Ty8BZaDcflCJH5tH?preview

  2. 和上面的方法一样,我们可以使用three.js svgrenderer 将渲染器内容导出为SVG 数据流,可以添加到PDF 中(纹理、网格可能无法100% 复制)

  3. 旧版 API - “threejs-pdf-renderer”可用于将 three.js 动画直接导出为 PDF。我们不需要任何其他依赖项来创建 PDF。但这是一个使用旧版three.js 的旧版API,需要做很多工作才能使API 与最新的three.js 版本兼容。

    示例 - https://satheeshks10.github.io/ThreejsPDFGenerator/

动态 3D 内容

我们可以将three.js的动画导出成一个U3D文件(目前还没有直接支持),这个U3D文件可以直接嵌入到PDF中。示例 - https://tetra4d.com/pdf-samples/

于 2020-08-19T13:45:34.877 回答