gpt4 book ai didi

coldfusion - cfdocument PDF 显示印地语字符串为空

转载 作者:行者123 更新时间:2023-12-04 10:59:38 27 4
gpt4 key购买 nike

在这里,根据我的业务逻辑,我应该支持所有语言。所以我根据国家/地区选择显示了一个字符串。我这边一切正常。但是遇到问题 cfdocument .在这里,我想出了我的示例/演示代码。

注意:我已经看过 CFDocument PDF not showing Japanese data但在印地语中帮不了我更多。

<cfoutput>
<table border='1px;'>
<tr>
<td>Name</td>
<td>Age</td>
<td>अनुरोध आईडी</td>
</tr>
<tr>
<td>Kannan</td>
<td>29</td>
<td>108</td>
</tr>
</table>
</cfoutput>

如下图所示,按预期正确显示。

enter image description here

但是当我在不支持的 cfdocument 中使用那个印地语字符串时。就像我下面的图片。
<cfoutput>
<cfdocument format="PDF" overwrite="Yes">
<table border='1px;'>
<tr>
<td>Name</td>
<td>Age</td>
<td>अनुरोध आईडी</td>
</tr>
<tr>
<td>Kannan</td>
<td>29</td>
<td>108</td>
</tr>
</table>
</cfdocument>
</cfoutput>

enter image description here

注意:我试过以下所有类型但没有运气,我试过 cfprocessingdirective , cfsetting SetLocale() meta tags cfsavecontents
如果有任何建议,请告诉我。提前致谢 !

最佳答案

在从 CF10 + Windows 服务器迁移到 Linux + Docker 上的 CF2016(中文、日语、韩语和其他语言)后,我花了很多时间在这些服务器上使用开箱即用的字体,我不记得了我们测试了印地语 - 都坏了。

不幸的是,您的问题没有简单的“正确”答案,因为这取决于正确解决两个关键问题,并且该方法会因您的服务器操作系统、Java 版本和 CF 版本而略有不同。但由于评论时间太长,我将冒险发布作为答案。两个关键点是:

  • 确保在 CF 可以访问并希望找到它们的路径中提供合适的字体 - 使用 CF Admin -> Fonts
  • 确认这一点
  • 确保为您需要支持的每种语言配置了 JVM 字体配置。

  • (1) 是简单的部分,并且在其他地方有详细记录,包括在之前的评论中提到的 Ben Nadel 链接 - https://www.bennadel.com/blog/2987-testing-foreign-and-unicode-character-rendering-with-the-cfdocument-tag-in-coldfusion.htm
    这样做并重新启动 CF 服务将使您达到这样的程度,如果您在 CSS 中明确声明,cfdocument 将能够呈现每种字体。但是,当您需要支持多种语言并且不知道哪一种语言适用于特定元素和/或在一个元素中混合使用多种语言时,这并不理想。

    那就是 (2) 进来,您应该能够在 CSS 中指定一种字体 - 例如 Arial/Helvetica/sans-serif - 用于包含多种语言(例如英语和印地语)以及在同一段落中的元素;然后 Java 检测超出当前字体的字符序列,并使用 JVM 字体配置为这些字符替换合适的字体,而无需在 html/css 中声明它。对于印地语,我相信这通常是 Windows 上的天城文或 Kruti。

    不幸的是,这是一个棘手的部分,因为它因 Java 版本和平台而异,而且似乎没有很好的文档记录。在过去的日子里,Sun 和操作系统供应商非常擅长为我们维护一个体面的基本配置。如今,这似乎是事后的想法,尤其是在许多 Linux 版本上。

    此链接提供了字体配置如何在某些环境下工作的示例: https://docs.oracle.com/javase/8/docs/technotes/guides/intl/fontconfig.html
    不过,您可能会使用不同的方法。如果您搜索 java [your java platform version] font properties config [your OS]那么你应该最终走上正确的道路。

    关于coldfusion - cfdocument PDF 显示印地语字符串为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58915943/

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