Utf 8 如何使用coldfusion 11和pdf文档正确呈现拉丁文1字符

Utf 8 如何使用coldfusion 11和pdf文档正确呈现拉丁文1字符,utf-8,coldfusion,character-encoding,Utf 8,Coldfusion,Character Encoding,我很难在由ColdFusion代码生成的pdf中正确显示拉丁字符ä。我得到的是Ã而不是ä。我正在将cfprocessing指令设置为UTF-8。我可以硬编码ä并在pdf中正确显示ä字符。因此pdf可以处理字符的显示 大多数帖子都提到了导致这个mojibake的编码不匹配,但我看不出哪里有不匹配。用作pdf文档输入的值来自接受用户输入的表单(ColdFusion),CF代码中的表单标记设置了以下属性: accept-charset="utf-8" 在输入表单和处理提交的cfm文件中,处理

我很难在由ColdFusion代码生成的pdf中正确显示拉丁字符
ä
。我得到的是
Ã
而不是
ä
。我正在将cfprocessing指令设置为UTF-8。我可以硬编码
ä
并在pdf中正确显示
ä
字符。因此pdf可以处理字符的显示

大多数帖子都提到了导致这个mojibake的编码不匹配,但我看不出哪里有不匹配。用作pdf文档输入的值来自接受用户输入的表单(ColdFusion),CF代码中的表单标记设置了以下属性:

accept-charset="utf-8"

在输入表单和处理提交的cfm文件中,处理指令设置为UTF-8。有人有什么建议吗?

我最终解决了我的问题。这显然是编码不匹配,因为用户输入的数据通过javascript逻辑传递到另一个cfm页面,我猜我得到的是一个单字节字符表示…它不能显示拉丁语-1…所以我使用了CharsetDecode和CharsetEncode方法。我用windows-1252解码了用户字符串,然后用utf-8编码,瞧,没有问题了。我对我的解决方案不是很满意,但在玩了几天之后,我很高兴终于“击败”了它。

我无法重现您描述的w/CF11。你能发布你的CF版本和a吗?不。我不能发布我的代码。但我最终解决了我的问题。这显然是编码不匹配,因为用户输入的数据通过javascript逻辑传递到另一个cfm页面,我猜我得到的是一个单字节字符表示…它不能显示拉丁语-1…所以我使用了CharsetDecode和CharsetEncode方法。我用windows-1252解码了用户字符串,然后用utf-8编码,瞧,没有问题了。我对我的解决方案不是很满意,但在玩了几天之后,我很高兴终于“击败”了它。哦……我使用的是CF11No,不是您的完整代码;-),这只是一个再现这个问题的小例子。通过只提取相关的代码位并使用它们创建一个小的、独立的、重现问题的示例来隔离问题。在您的例子中,一个简单的表单包含一个文本字段和一个使用该表单字段的基本cfdocument调用。ie基本上是您通常在故障排除过程中所做的。顺便说一句,cfprocessingdirective仅在将字符硬编码到cfm脚本中时才有必要。对我的解决方案不太满意如果你有一个小的复制案例,我相信有人可以帮助你找到一个更可靠的解决方案。