Harfizer est un puissant package qui convertit les nombres, les dates et les heures en texte. Grâce à l'utilisation de plugins spécifiques à chaque langue, Harfizer vous permet de transformer facilement des valeurs numériques et temporelles en leur représentation textuelle.
Si vous préférez utiliser une autre langue, veuillez cliquer sur les liens correspondants ci-dessus ou en bas de ce document.
- Harfizer — Lisez vos nombres, dates et heures à haute voix en français
Installez Harfizer via npm :
npm install harfizerImportez le plugin et la classe CoreConverter depuis le package :
import { CoreConverter, FrenchLanguagePlugin } from 'harfizer';
const frenchPlugin = new FrenchLanguagePlugin();
const converter = new CoreConverter(frenchPlugin);Convertit un nombre (entier ou décimal, éventuellement négatif) en sa représentation textuelle en français. La partie décimale est traitée chiffre par chiffre avec le mot "virgule".
Paramètres :
- input : un nombre, une chaîne numérique ou un bigint.
- options (facultatif) : un objet pour personnaliser la conversion :
customZeroWord– remplace le mot par défaut pour zéro.customNegativeWord– remplace le mot par défaut pour les nombres négatifs.customSeparator– remplace le séparateur par défaut entre les groupes.
Retour :
Une chaîne représentant le nombre en toutes lettres.
Exemple :
converter.convertNumber("123");
// Sortie : "cent vingt-trois"
converter.convertNumber("-456.78");
// Sortie : "moins quatre cent cinquante-six virgule sept huit"Convertit un nombre à trois chiffres (ou moins) en sa représentation textuelle en français.
Paramètres :
- num : une valeur numérique (jusqu’à 3 chiffres).
Retour :
Une chaîne représentant le nombre en toutes lettres (ex. "quatre cent cinquante-six").
Exemple :
converter.convertTripleToWords(789);
// Sortie : "sept cent quatre-vingt-neuf"Convertit une chaîne de date (au format "YYYY/MM/DD" ou "YYYY-MM-DD") en sa représentation textuelle en français. Le format de sortie est "jour mois année" (par exemple, "premier avril deux mille vingt-trois").
Paramètres :
- dateStr : la chaîne de date.
- calendar (facultatif) : pour le français, utilisez "gregorian" (par défaut).
Retour :
Une chaîne représentant la date en toutes lettres.
Exemple :
converter.convertDateToWords("2023/04/05");
// Sortie : "premier avril deux mille vingt-trois"Convertit une chaîne de temps (au format "HH:mm") en sa représentation textuelle en français.
Si les minutes sont égales à zéro, retourne par exemple "Il est neuf heures" ; sinon, "Il est neuf heures cinq minutes".
Paramètres :
- timeStr : une chaîne de temps au format "HH:mm".
Retour :
Une chaîne représentant le temps en toutes lettres.
Exemple :
converter.convertTimeToWords("09:00");
// Sortie : "Il est neuf heures"
converter.convertTimeToWords("09:05");
// Sortie : "Il est neuf heures cinq minutes"Voici un exemple d'utilisation du FrenchLanguagePlugin avec CoreConverter :
import { CoreConverter, FrenchLanguagePlugin } from 'harfizer';
const frenchPlugin = new FrenchLanguagePlugin();
const converter = new CoreConverter(frenchPlugin);
console.log(converter.convertNumber("123"));
// Sortie : "cent vingt-trois"
console.log(converter.convertDateToWords("2023/04/05"));
// Sortie : "premier avril deux mille vingt-trois"
console.log(converter.convertTimeToWords("09:05"));
// Sortie : "Il est neuf heures cinq minutes"La méthode convertNumber accepte un objet optionnel ConversionOptions pour personnaliser la conversion :
const options = {
customZeroWord: "zéro",
customNegativeWord: "moins",
customSeparator: " "
};
console.log(converter.convertNumber("-123", options));
// Sortie : "moins cent vingt-trois"Pour consulter la documentation des autres plugins, veuillez vous référer aux fichiers suivants :
- 🇬🇧 Documentation du plugin anglais
- 🇮🇷 Documentation du plugin persan
- 🇫🇷 Documentation du plugin français
- 🇯🇵 Documentation du plugin japonais
- 🇨🇳 Documentation du plugin chinois
- 🇷🇺 Documentation du plugin russe
- 🇩🇪 Documentation du plugin allemand
- 🇪🇸 Documentation du plugin espagnol
Ce package est distribué sous la licence MIT.