Элементы управления диаграммами ASP.NET и проблемы с кодировкой символов

StackOverflow https://stackoverflow.com/questions/2362812

Вопрос

Я пытаюсь использовать элементы управления диаграммой 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>

Диаграмма создана:

??????
(источник: simonrice.com)

Для меня это указывает на проблему с кодировкой символов, но я не могу найти в объекте диаграммы ничего, что могло бы изменить кодировку элемента управления.

Есть ли способ решить эту проблему?

Обновлять: У нас также есть этот веб-сайт на греческом и иврите, и ни один из этих языков не вызывает у нас никаких проблем с графиками.

Это было полезно?

Решение

Если на вашем компьютере не установлены языковые пакеты, не использующие латиницу, а именно азиатские языки, это единственный способ легко доступны шрифт, который будет отображать эти символы, — Arial Unicode MS.

Настоящим недостатком этого шрифта является то, что он выглядит отвратительно при отображении языков, таких как английский, которые используют латинский алфавит.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top