I've checked that data in MySQL are loaded correctly with UTF-8 encoding,
and I can select data out of it with SELECT. However, since I'm using OGR to
connect to MySQL, I'm not sure whether there were any encoding issue here.
But I'm suspecting that the TTF font I'm using may not correct. I've tried
some fonts, like Arial, Arial unicode, and another TTF font of Big5
encoding. But none works. The original encoding of the text is Big5, I've
converted and loaded them to MySQL as UTF-8, and they show up correct inside
MySQL, what fonts should I use to display them on a map?
----- Original Message -----
From: "Stephen Woodbridge" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Saturday, June 23, 2007 02:45
Subject: Re: [UMN_MAPSERVER-USERS] working with database in UTF-8
Jackey,
I suspect that the font file is not utf8 or the data is already mangled
before it gets to mapserver. The mapserver stuff works fine for me with
utf-8 data in shapefiles as long as I set the ENCODING 'utf8' in the
LABEL. A bigger issue might be:
What is the encoding on the source data?
what is the encoding on the database?
was the data loded correct with respect to the encoding?
if you do a select * from table in mysql does the data display correctly?
if you slect the records with ogrinfo? to a file or you monitor do they
show corectly?
There are a WHOLE lot oof steps where things could have broken before it
gets to mapserver. You need to validate the data is still good as it comes
into mapserver.
-Steve W.
Steve Lime wrote:
Hmmm... All the encoding parameter does is tell MapServer to convert from
the supplied encoding to
unicode so I don't think it has any effect. If you already have
unicode/utf-8 strings then this should
just work assuming your font has the right characters.
Does a simple shapefile work?
Steve
On 6/22/2007 at 2:56 AM, in message
<[EMAIL PROTECTED]>, Jackey
Cheung
<[EMAIL PROTECTED]> wrote:
Greetings!
I'm trying to setup a mapserver that supports multiple languages with
MySQL.
The database uses UTF-8, while the map server use a select statement to
retrieve records. The layer goes as:
LAYER
NAME sr
STATUS OFF
TYPE POINT
CONNECTIONTYPE OGR
CONNECTION "<OGRVRTDataSource>
<OGRVRTLayer name='sr'>
<SrcDataSource>MYSQL:MapSQL,user=root,password=123456,host=localhost,port=3306
,tables=POI</SrcDataSource>
<SrcSQL>SELECT `Name`,
geom
FROM `POI` WHERE `ID` = %o%</SrcSQL>
<GeometryType>wkbPoint</GeometryType>
</OGRVRTLayer>
</OGRVRTDataSource>"
DATA "sr"
UNITS METERS
MAXFEATURES 1
LABELITEM "Name"
CLASS
SYMBOL "point"
MINSIZE 10
COLOR 250 0 0
OUTLINECOLOR 0 128 0
LABEL
ENCODING "utf-8"
COLOR 255 0 0
OUTLINECOLOR 255 255 255
TYPE TRUETYPE
FONT arial
SIZE 8
ANTIALIAS TRUE
POSITION UC
PARTIALS FALSE
BUFFER 5
FORCE TRUE
END
END
END
All Chinese characters are shown as question marks (?) on the map, no
mater
using arial or Chinese fonts.
Any advise?