Squiggly, correcteur d'orthographe Made in Adobe
Encore une nouvelle librairie venue des Adobe Labs avec cette fois un nom difficilement prononçable pour nous francophones, Squiggly. Squiggly est une librairie permettant d'ajouter facilement un correcteur d'orthographe à des applications Flex et Air. Il peut être ajouté sur n'importe quel composant Flex 3 de texte (TextInput, TextArea, RichTextEditor).
Allez Sur la page officielle de Squiggly
Voir l'application d'exemple de Squiggly
Utilisation de Squiggly
L'utilisation est très simple, il suffit d'appeler une méthode static de la class SpellUI en lui passant le composant sur lequel Squiggly doit agir, et le dictionnaire à charger:
SpellUI.enableSpelling(sta, "usa.zwl");
Pour le choix du fichier dictionnaire, vous avez le choix. Vous pouvez utiliser le dictionnaire English qui est livré avec Squiggly, ou utiliser l'utilitaire DictionaryGenerator.air pour compiler votre propre liste de mots.
Vous pouvez aussi l'utiliser de manière basique en n'oubliant pas que le chargement du dictionnaire est asynchrone et qu'il faut donc attendre qu'il soit chargé avant de vérifier un mot:
private var _newdict:SpellingDictionary = new SpellingDictionary();
private var sp:SpellChecker= new SpellChecker("en");
private function init():void
{
_newdict.addEventListener(Event.COMPLETE, handleLoadComplete);
var myURL:URLRequest = new URLRequest("assets/usa.zwl");
_newdict.load(myURL);
}
private function handleLoadComplete(evt:Event):void
{
sp.addDictionary(_newdict);
}
private function checkWord(var someWord:String):void
{
var correct:Boolean = sp.checkWord(someWord);
if( correct )
{
trace("Correctly spelled");
// ...
}
else
{
trace("Incorrectly spelled");
// ...
}
}
Limitations
Pour l'instant, Squiggly ne fonctionne pas avec les composants Flex 4 mais j'imagine que cela va rapidement changer. L'algorithme de correction est pour l'instant basé sur l'anglais. Pour l'instant il n'est pas disponible pour les langages comme le français (ce doit être un Phonex ou un Soundex et comme les sons sont différents entre les langues, l'algo n'est pas le même). Squiggly n'est pas non plus exempt de bugs, si dans l'application de démonstration, vous essayer de vérifier un mot avant que le dictionnaire soit chargé (avec une petite connexion), vous aurez une RTE (RunTime Error) sur une méthode isWord() de Squiggly, ce qui est dommage.
Si vous voulez une solution éprouvée et commerciale pour votre correcteur d'orthographe, vous pouvez utiliser la librairie Spelling Plus Library (SPL) de Grant Skinner.
Articles similaires
- Flash Player 10.1 beta 2 et les versions FP 10.1 debugger sur Adobe Labs
- Flex ActionScript – Héritage en ActionScript 3
- Flex FileReference – IOError lors de l'appel à download() [Résolu]
- Flex ActionScript – Getter/Setter en ActionScript 3
- Flex ActionScript – Méthodes en ActionScript 3
Aucun trackbacks pour l'instant





