不开源项目aspose.3d最新版23.10.0的一些科普
Asposeadmin 发布于:2024-09-27 16:50:01
阅读:loading
前面在摸索了Aspose的Cells、Words、Pdf等多款组件,分别是常见的Word/Excel/Pdf办公软件,闲下心来又继续了解了一下Aspose For Java语言的其他软件,经过一些持续的分析和摸索实践越来越多的将它们给科学化,即所有的软件(组件)均不修改任何jar包依赖,纯粹使用反射的形式来调用,也就是说在API的使用前进行一次特殊的代码注册,即可实现授权,全程不需要License之类的xml,或是文档无水印、或是文档页数限制、或是获取内容无限制,等等。
特别说明:只为单纯的学习摸索与自我突破,商业软件请勿直接使用于生产环境(购买商业授权)。
本次实践的是Aspose.3D的23.10.0版本,它是一个功能强大的用于处理 3D 的开发工具包,如果有需要使用Java来操作 3D 文件的需求可以了解一下它。本次示例提供了将 3D 文件obj格式转换的简单示例,更多/更专业的API使用有疑问请自行转至官网查看或学习,示例参考如下几点:
(1)提供了生成将OBJ文件的示例,同时将其转换为:PDF、HTML、STL等格式的文件;
(2)提供了使用反射调用特定的class代码逻辑,无需修改原始的jar;
(3)科学使用的版本有23.10.0,不太懂这种3d格式的文件,转换为PDF也是空白,但是未科学使用前仍然是有水印的,科学使用后无水印(内容仍然是空白);
(4)需要注意这个示例需要JDK9的最低版本;
public class AsposeThreeDReflectTest extends BaseTest {
@Test
public void test() throws Exception {
RegisterThreeD.registerThreeD2310();
//创建scene.obj
{
RectangleShape profile = new RectangleShape();
profile.setRoundingRadius(0.3);
LinearExtrusion extrusion = new LinearExtrusion(profile, 10) {{ setSlices(100); setCenter(true); setTwist(360); setTwistOffset(new Vector3(10, 0, 0));}};
extrusion.setSlices(100);
extrusion.setCenter(true);
extrusion.setTwist(360);
extrusion.setTwistOffset(new Vector3(10, 0, 0));
// create a scene
Scene scene = new Scene();
scene.getRootNode().createChildNode(extrusion);
// save 3D scene
scene.save(super.getRootFile("aspose.3d/scene.obj"), FileFormat.WAVEFRONTOBJ);
}
//创建scene.stl
{
Scene scene = new Scene();
scene.open(super.getRootFile("aspose.3d/scene.obj"));
// 将场景保存为 STL 格式
scene.save(super.getRootFile("aspose.3d/scene.stl"), FileFormat.STL_BINARY);
}
//转换为PDF
{
Scene scene = new Scene();
scene.open(super.getRootFile("aspose.3d/scene.obj"));
final PdfSaveOptions saveOptions = new PdfSaveOptions();
scene.save(super.getRootFile("aspose.3d/scene.pdf"), saveOptions);
}
//转换为HTML
{
Scene scene = new Scene();
scene.open(super.getRootFile("aspose.3d/scene.obj"));
final Html5SaveOptions saveOptions = new Html5SaveOptions();
scene.save(super.getRootFile("aspose.3d/scene.html"), saveOptions);
}
}
}
(创建scene.obj)
(创建scene.stl)
(1)`aspose.xxx`不是开源免费的使用,Github上有示例项目,包含了大量的示例,示例的结果就是生成了一些《Evaluation Warning》警告、水印、内容页数限制、内容文本限制等;
(2)aspose旗下有许多的产品,都是商业付费版本,常见于各种文档格式文件的操作,都需要商业授权使用,也基本都是支持多种编程语言的,如有Java、C++、.NET等等,官网也有多种在线示例;
(3)示例与相关文件下载:《源码下载与示例.zip》,注:下载并不包含具体的科学实现部分,只是源文件与示例输出文件;
(4)未涉及到过3d相关的文件,也不太懂这些格式,示例中输出的html无法直接运行,有JS报错,需要注释掉lookAt、position属性可以运行;切记,若直接使用浏览器打开`scene.html`将提示如下图所示:
需要使用http的形式访问运行,比如使用IDEA打开访问的示例效果如下:
(HTML示例运行,附件有完整清晰版)
点赞
发表评论
评论列表
留言区
- 不开源项目aspose.cells最新版23.10的一些科普
- 不开源项目aspose.words最新版23.10的一些科普
- 不开源项目aspose.pdf最新版23.10的一些科普
- 不开源项目aspose.slides最新版23.10的一些科普
- 不开源项目aspose.diagram最新版23.10的一些科普
- 不开源项目aspose.tasks最新版23.10的一些科普
- 不开源项目aspose.imaging最新版23.10的一些科普
- 不开源项目aspose.html最新版23.10的一些科普
- 不开源项目aspose.zip最新版24.8的一些科普
- 不开源项目aspose.email最新版23.10的一些科普
- 不开源项目aspose.note最新版23.11的一些科普
- 不开源项目aspose.cad最新版23.10的一些科普
- 不开源项目aspose.ocr最新版23.10.0的一些科普
- 不开源项目aspose.psd最新版23.10的一些科普
- 不开源项目aspose.barcode最新版23.10的一些科普
- 不开源项目aspose.page最新版23.10的一些科普
- 不开源项目aspose.omr最新版23.11的一些科普
- 不开源项目aspose.pub最新版22.8的一些科普
- 不开源项目aspose.font最新版23.10的一些科普
- 不开源项目aspose.tex最新版23.11的一些科普