4

我正在尝试将匕首“†”符号写入转换为 PDF 文档的 HTML 页面,但这在 PDF 上显示为“—

我知道我需要使用这个符号的 HTML 代码,即†.

我已经为“€”成功地完成了这项工作,但在这些情况下,我已将代码直接写入 HTML。在这种情况下,我正在从 XML 文件中读取符号。当我检查包含该符号的变量的值时,它显示为“†”。

我应该注意,我已经尝试从 XML 文件中读取符号和代码,如下所示:

<fund id="777" countryid="N0" append="&#8224;" />

<fund id="777" countryid="N0" append="†" />

但两者都作为符号存储在变量中,当我将它们写入页面时,两者都呈现为“”。另外,我尝试了以下方法:

string code = "&#8224;";
string symbol = "†";
string htmlEncodedCode = HttpUtility.HtmlEncode(code);
string htmlEncodedSymbol = HttpUtility.HtmlEncode(symbol);

tc.Text = fund.Name + code + " " + symbol + " " + 
    htmlEncodedCode + " " + htmlEncodedSymbol;

但只有第一个作品。它在文档中显示为:

FundName† †&#8224; â€

有人可以建议我如何让它工作吗?

更新:

@James Curran 下面的回答是正确的。只是为了清楚起见,我不得不将 XML 更改为:

<fund id="777" countryid="N0" append="&amp;dagger;" /> 

在我的 C# 中:

tc.Text = fund.Name + append;
4

3 回答 3

5

该符号通常被称为“匕首”,并由实体在 html 中表示: &dagger;

于 2010-08-05T14:29:20.787 回答
1

这是一个编码问题。†可能是 UTF-8 中匕首的 Latin-1 表示。尝试将匕首从 UTF-8 转换为 ISO-8859-1。

于 2010-08-05T14:28:14.800 回答
0

对于 XML 文件,您可能想要做的事情类似于:

<fund id="777" countryid="N0" append="&amp;#8224;" />

原因是 XML 文件将解释&amp;为 & 符号,其余的解释为文字文本。因此,在您的 html 中,您将获得&#8224;并且应该这样做。

于 2010-08-05T14:53:17.040 回答