我正在尝试将ASP.NET图表控件用于本地化多种语言的网站.然而,当我们最近添加中文本地化时,我们遇到了图表问题 – 所有标签都显示我们实际需要中文字符的方块,如下面的示例所示(请注意我不知道任何中文,所以这可能说什么):
default.aspx(后面没有代码):
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="ChineseChart._Default" %>
<%@ Register Assembly="System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
Namespace="System.Web.UI.DataVisualization.Charting" TagPrefix="asp" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Chart runat="server" Height="270px" Palette="None" PaletteCustomColors="0, 192, 96; 0, 96, 48">
<legends>
<asp:Legend Alignment="Center" Docking="Bottom" Name="Legend1" BorderColor="Black">
</asp:Legend>
</legends>
<titles>
<asp:Title Name="Title1" Text="我的示例图表">
</asp:Title>
</titles>
<series><asp:Series Name="富" ChartType="Pie" Legend="Legend1">
<points>
<asp:DataPoint AxisLabel="酒吧" MapAreaAttributes="" ToolTip="" Url="" YValues="65" />
<asp:DataPoint AxisLabel="富" MapAreaAttributes="" ToolTip="" Url="" YValues="24" />
</points>
</asp:Series>
</series>
<chartareas><asp:ChartArea Name="ChartArea1"></asp:ChartArea></chartareas>
</asp:Chart>
</div>
</form>
</body>
</html>
生成的图表:
我的示例图表 http://www.simonrice.com/so/zhchart.png
这对我来说指向一个字符编码问题,但我在图表对象中找不到任何改变控件编码的东西.
有什么办法可以解决这个问题吗?
更新:我们这个网站还有希腊文和希伯来语,&这些语言都没有引起我们在图表上的任何问题.
最佳答案 如果您没有安装在计算机上的非拉丁字母语言包,特别是亚洲语言,那么显示这些字符的唯一可用字体是Arial Unicode MS.
该字体的真正缺点是,当显示使用拉丁字母的英语等语言时,它看起来像垃圾.