不开源项目aspose.font最新版23.10的一些科普
Asposeadmin 发布于:2024-09-28 12:43:57
阅读:loading
前面在摸索了Aspose的Cells、Words、Pdf等多款组件,分别是常见的Word/Excel/Pdf办公软件,闲下心来又继续了解了一下Aspose For Java语言的其他软件,经过一些持续的分析和摸索实践越来越多的将它们给科学化,即所有的软件(组件)均不修改任何jar包依赖,纯粹使用反射的形式来调用,也就是说在API的使用前进行一次特殊的代码注册,即可实现授权,全程不需要License之类的xml,或是文档无水印、或是文档页数限制、或是获取内容无限制,等等。
特别说明:只为单纯的学习摸索与自我突破,商业软件请勿直接使用于生产环境(购买商业授权)。
本次实践的是Aspose.font的23.10版本,它是一个字体操作API解决方案的开发工具包,为使用 .NET、Java 和 C++ 的开发人员提供的字体操作解决方案。我们提供高质量的代码 API 和免费应用程序,使您能够无缝加载、渲染和转换多种字体格式。让我们与众不同的是我们对独立性的承诺——我们的工具不需要依赖于任何其他软件,为您提供无忧且高效的体验。立即使用我们的多功能解决方案改进您的字体管理流程!
通俗的来说它可以用于体验字体操作的应用,在基于 Java 的应用程序中加载、编辑、转换和保存字体,包括 TrueType、CFF、OpenType 和 Type1!更多/更专业的API使用有疑问请自行转至官网查看或学习,示例参考如下几点:
(1)提供了将ttf格式的文件转换为svg、woff、ttf等其他格式类型文件;
(2)提供了将otf格式的文件生成文文本输出到jpg格式图片的示例;
(3)提供了将pfb格式的文件生成文文本输出到jpg格式图片的示例;
(4)一些示例并不需要来科学的使用,这些格式的文件也属实不知道使用在哪里,哪里需要去科学,上述两个示例如果使用到了第三方字体会报错“LicenseRestrictionException”,科学使用则不会;
(5)提供了使用反射调用特定的class代码逻辑,无需修改原始的jar;
(6)科学使用的版本有23.10;
public class AsposeFontReflectTest extends cn.chendd.cells.base.BaseTest {
@Test
public void test() throws Exception {
/*注册 23.10*/
RegisterFont.registerFont2310();
File file = new File(getClass().getResource("/Montserrat-Bold.ttf").getPath());
FontDefinition fontDefinition = new FontDefinition(FontType.TTF , new FontFileDefinition(file));
final TtfFont font = (TtfFont) Font.open(fontDefinition);
font.saveToFormat(Files.newOutputStream(Paths.get(super.getRootFile("aspose.font/Montserrat-Bold.svg"))), FontSavingFormats.SVG);
font.saveToFormat(Files.newOutputStream(Paths.get(super.getRootFile("aspose.font/Montserrat-Bold.woff"))), FontSavingFormats.WOFF);
font.saveToFormat(Files.newOutputStream(Paths.get(super.getRootFile("aspose.font/Montserrat-Bold.ttf"))), FontSavingFormats.TTF);
}
}
public class RenderingTextOtfTest extends cn.chendd.cells.base.BaseTest {
@Test
public void test() throws Exception {
/*注册 23.10*/
RegisterFont.registerFont2310();
String fileName = getClass().getResource("/Xiaowei.otf").getPath();
FontDefinition fd = new FontDefinition(FontType.TTF, new FontFileDefinition("ttf", new FileSystemStreamSource(fileName)));
Font font = Font.open(fd);
drawText("Hello world11 中国制造", font, 14, Color.WHITE, Color.BLACK, super.getRootFile("aspose.font/hello1_Xiaowei_out.jpg"));
drawText("Hello world22 中国制造", font, 14, Color.YELLOW, Color.RED, super.getRootFile("aspose.font/hello2_Xiaowei_out.jpg"));
}
}
public class RenderingTextPfbTest extends cn.chendd.cells.base.BaseTest {
@Test
public void test() throws Exception {
/*注册 23.10*/
RegisterFont.registerFont2310();
String fileName = getClass().getResource("/courier.pfb").getPath();
FontDefinition fd = new FontDefinition(FontType.Type1, new FontFileDefinition("pfb", new FileSystemStreamSource(fileName)));
Type1Font font = (Type1Font) Font.open(fd);
drawText("Hello world11", font, 14, java.awt.Color.WHITE, java.awt.Color.BLACK, super.getRootFile("aspose.font/hello1_type1_out.jpg"));
drawText("Hello world22", font, 14, java.awt.Color.YELLOW, java.awt.Color.RED, super.getRootFile("aspose.font/hello2_type1_out.jpg"));
}
}
(输出全量示例文件)
(使用某字体文件生成文本并生成图片)
(使用某字体文件生成文本并生成图片)
(1)`aspose.xxx`不是开源免费的使用,Github上有示例项目,包含了大量的示例,示例的结果就是生成了一些《Evaluation Warning》警告、水印、内容页数限制、内容文本限制等;
(2)aspose旗下有许多的产品,都是商业付费版本,常见于各种文档格式文件的操作,都需要商业授权使用,也基本都是支持多种编程语言的,如有Java、C++、.NET等等,官网也有多种在线示例;
(3)示例与相关文件下载:《源码下载与示例.zip》,注:下载并不包含具体的科学实现部分,只是源文件与示例输出文件;
点赞
发表评论
评论列表
留言区
- 不开源项目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.3d最新版23.10.0的一些科普
- 不开源项目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.tex最新版23.11的一些科普