Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

#1 Wed 07 July 2010 11:22

thieunsy
Juste Inscrit !
Date d'inscription: 7 Jul 2010
Messages: 4

[Mapserver]

Bonjour, je sollicite votre aide pour un problème d'encodage de caractères sur Mapserver.
Je m'explique:

Je dispose d'un Mapserver relié à une base Oracle spatiale.
Lors de l'affichage par un client WMS, d'une couche représentant les toponymes issus de la base, les labels ne contenant que des caractères latins s'affichent bien, mais il s'agit d'une couche à couverture mondiale et les caractères issus d'autres alphabets (cyrillique et arabe en particulier) sont remplacés par des points d'interrogation.

J'ai dès lors précisé l'option:
ENCODING "UTF-8"

dans l'objet LABEL de ma couche (dans le mapfile) mais rien n'y fait.

Je pense que le problème ne vient pas de la table puisque lorsque l'on effectue une requête depuis un client SQL, on obtient bien les noms dans l'alphabet adéquat.

Quelqu'un aurait-il une idée?

Dernière modification par thieunsy (Wed 07 July 2010 11:23)

Hors ligne

 

#2 Wed 07 July 2010 11:28

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9864
Site web

Re: [Mapserver]

Bonjour,

Quel est l'encodage de la base ? A t'il était définie avec un encodage UTF8 ?

Une autre idée : il faut que la police utilisée contiennent tous les caractères que tu veux afficher !

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#3 Wed 07 July 2010 11:43

thieunsy
Juste Inscrit !
Date d'inscription: 7 Jul 2010
Messages: 4

Re: [Mapserver]

Oui, la base est encodée en UTF-8,

Pour la police, ça pourrait en effet être ça, mais j'ai du mal à obtenir des informations sur une police contenant tous les alphabets. Je pensait que le système UNICODE de gestion des polices de caractères de Mapserver permettait une compatibilité avec tous les caractères quelle que soit la police.

Aurais-tu un lien vers un type de police multilingue?

Hors ligne

 

#4 Wed 07 July 2010 13:36

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9864
Site web

Re: [Mapserver]

Bonjour,

Je cite : "utf8 n'est pas une police, c'est une façon de stocker des caractères Unicode sans avoir à ce soucier de quel caractère il s'agit (arabe, européen, cyrillique, note de musique)."

Le problème peut provenir de la police qui ne propose que les caractères européens par exemple. Je ne connais aucune police qui stocke tous les caractères, mais cela peut exister wink

Y.
[edit] un lien intéressant : http://www.fileformat.info/info/unicode/font/index.htm


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#5 Wed 07 July 2010 14:23

thieunsy
Juste Inscrit !
Date d'inscription: 7 Jul 2010
Messages: 4

Re: [Mapserver]

Merci pour tes éclaircissement et pour le lien, je devrais pouvoir me débrouiller avec ça.

Hors ligne

 

#6 Thu 08 July 2010 08:33

Laurent Jégou
Participant assidu
Lieu: Toulouse
Date d'inscription: 5 Sep 2005
Messages: 447
Site web

Re: [Mapserver]

Le projet GNU FreeFont fournit des polices open UTF-8 : http://www.gnu.org/software/freefont/index.html


Enseignant-Chercheur en Géomatique
UT2J - Dept Géo / CNRS UMR LISST-Cieu / Master Sigma - Revue Mappemonde

Hors ligne

 

#7 Thu 08 July 2010 11:37

thieunsy
Juste Inscrit !
Date d'inscription: 7 Jul 2010
Messages: 4

Re: [Mapserver]

j'ai paramétré mon mapfile pour afficher mes labels dans une police UNICODE (essais avec arial_unicode_ms et FreeSerif) contenant les caractères qui ne s'affichaient pas. Or pas d'amélioration (le changement de police est bien pris en compte mais les caractères problématiques sont toujours remplacés par des points d'interrogation).

Conclusion: Je peux éliminer le problème de police.

N'ayant pas d'autre piste pour le moment, j'en reviens à l'encodage de la base, car si j'ai indiqué dans un premier temps que la base était encodée en UTF-8, ce n'est qu'une affirmation du collègue qui gère les tables concernées, et je ne l'ai pas vérifié par moi-même. Ai-je un moyen par un client SQL Server de vérifier l'encodage de la base par une requête?

Où alorsje suis toujours preneur d'une autre piste.

Hors ligne

 

Pied de page des forums

Powered by FluxBB