2010-03-15 8 views
2

Notre site Web exécute l'entrée de l'utilisateur via HtmlTidy pour le nettoyer. Apparemment, tout en faisant cela, il provoque également de la douleur pour nos abonnés internationaux en convertissant les trémas. Y at-il une option à spécifier pour HtmlTidy de ne pas le faire?Comment empêcher HtmlTidy de convertir des trémas (par exemple ü à ü)

J'ai essayé CharacterEncoding avec toutes les options possibles mais rien ne semble fonctionner.

+0

Modifié ma réponse, peut-être que vous voulez essayer à nouveau. Si cela ne fonctionne pas, vous spécifiez les mauvais encodages. – AndiDog

Répondre

1

simplement fournir un codage de sortie (codage d'entrée est facultative) dans le fichier de configuration:

input-encoding: win1252 
output-encoding: latin1 

Pour un aperçu des encodages disponibles, regardez le output-encoding documentation.

EDIT: Donc, vous utilisez le .NET bindings. Ce sont les mêmes paramètres:

Document d = new Document(new FileStream("in.html", FileMode.Open)); 

d.InputCharacterEncoding = EncodingType.Utf8; 
d.OutputCharacterEncoding = EncodingType.Win1252; 
d.CleanAndRepair(); 

d.Save("out.html"); 

Avec les encodages correctement configuré, vous obtiendrez le résultat correct, sans ü et autres.

+0

Cela n'a pas fonctionné. La sortie est revenue brouillée. –

+0

Etes-vous sûr que le codage d'entrée est correct? Et avez-vous enregistré la sortie dans un fichier? La police de la console (Windows) peut ne pas être en mesure d'afficher les trémas. – AndiDog

+0

Les deux l'entrée et la sortie sont via une page Web. J'utilise la version .Net de Tidy de Mark. –