Tronquer un texte à un nombre de mots précis
Transformez un texte long en aperçu concis en choisissant le nombre maximal de mots à conserver.
Lancer gratuitement
L’outil compte les mots, s’arrête à la limite demandée et ajoute des points de suspension uniquement si le texte d’origine contient des mots supplémentaires. Comme il ne coupe jamais un mot, le résultat reste naturel dans les cartes, les résultats de recherche, les aperçus d’e-mails, les catalogues et les résumés éditoriaux. Vous pouvez également choisir une terminaison personnalisée si les trois points ne correspondent pas à votre charte. Le traitement est déterministe et n’accède pas au réseau : une même entrée avec les mêmes réglages produit donc toujours le même résultat.
Choisissez une limite de mots pertinente
Commencez par déterminer où l’extrait sera affiché et quelle place ce support peut raisonnablement lui accorder. Une carte compacte exige parfois une limite très courte, tandis qu’un index d’articles ou un rapport interne peut accueillir un aperçu plus développé. Saisissez la source dans le champ de texte, puis indiquez dans le champ des mots le nombre que vous souhaitez conserver. La limite porte sur les mots séparés par des espaces blancs, et non sur les caractères : un mot court et un mot long comptent chacun pour une unité. Cette règle est simple à communiquer aux équipes éditoriales et reste cohérente entre des contenus aux vocabulaires différents. Si la source ne dépasse pas la quantité choisie, le texte normalisé complet est renvoyé sans points de suspension. Si elle contient davantage de mots, l’outil garde exactement le nombre demandé et ajoute la terminaison sélectionnée. Le résultat fournit aussi les nombres de mots initial et conservé, ce qui permet de vérifier l’opération avant une publication ou une transmission à une autre étape de traitement.
Comprenez les espaces et les frontières des mots
Les mots sont reconnus comme des suites de caractères autres que des espaces blancs. Les espaces, les tabulations et les sauts de ligne les séparent, tandis que des espaces répétés ne créent aucun mot vide. La sortie réunit les mots conservés avec une espace unique. Elle forme ainsi un extrait propre sur une ligne, même si la source provient de paragraphes copiés, d’une cellule de feuille de calcul ou d’un texte à l’espacement irrégulier. La ponctuation reste attachée au mot voisin : les virgules, points, apostrophes et traits d’union sont préservés, et non réécrits. Cet outil ne tente ni segmentation linguistique avancée ni correction grammaticale ; il applique une règle transparente et prévisible pour les clients API comme pour les utilisateurs du navigateur. Les points de suspension constituent un suffixe et ne sont pas compris dans le nombre de mots conservés. Vous pouvez remplacer les trois points par un autre marqueur court, y compris un caractère d’ellipse unique ou une chaîne vide. Vérifiez les textes au format inhabituel si leurs conventions typographiques sont déterminantes.
Intégrez le résultat dans des processus reproductibles
Pour les tâches récurrentes, conservez la même limite de mots et la même terminaison pour tous les éléments destinés à un emplacement donné. Les grilles de produits, les lettres d’information, les bases de connaissances et les pages de recherche gagnent ainsi en régularité visuelle, tandis que les contributeurs disposent d’une consigne claire. L’indicateur de troncature permet au code en aval de distinguer un extrait créé d’une source qui respectait déjà la limite. Les nombres de mots initial et final facilitent les audits, les tests et les chaînes éditoriales qui doivent attester la transformation. L’opération est déterministe : un texte, une limite et un suffixe identiques donnent une sortie identique, sans variation de modèle ni dépendance réseau. Elle convient donc aux scripts de construction et aux traitements par lots pour lesquels des aperçus stables sont essentiels. Le prix de base par requête est de $0.002 avec la capacité hébergée ; l’exécution dans le navigateur repose sur le même algorithme. Considérez l’extrait comme un texte de présentation, et non comme un résumé automatique, car il conserve le début sans repérer les informations importantes placées plus loin.
Cas d’usage
Cartes d’articles et de blogs
Créez des accroches uniformes pour les pages de listes tout en veillant à ce que chaque carte se termine après un mot entier.
Aperçus de produits et de catalogues
Raccourcissez de longues descriptions selon un budget commun de mots afin d’alléger les grilles, les flux et les comparatifs.
Extraits d’e-mails et de notifications
Préparez des débuts de messages prévisibles sans couper un nom ou un mot courant en son milieu.
Questions fréquentes
Les points de suspension comptent-ils dans la limite de mots ?
Non. La limite détermine le nombre de mots source conservés ; les points sont ajoutés ensuite, uniquement lorsque du contenu est retiré.
Que se passe-t-il si le texte est déjà assez court ?
Le texte est renvoyé sans points de suspension et l’indicateur de troncature signale qu’aucune coupe n’a eu lieu.
Comment les mots sont-ils comptés ?
Un mot est une suite de caractères autres que des espaces blancs. Espaces, tabulations et sauts de ligne séparent les mots ; les séparateurs répétés n’en créent pas de vides.
Puis-je modifier ou supprimer les points de suspension ?
Oui. Indiquez une terminaison personnalisée de 32 caractères au maximum, ou une chaîne vide pour retirer le suffixe visible.
L’outil résume-t-il ou reformule-t-il la source ?
Non. Il garde les premiers mots dans leur ordre d’origine jusqu’à la limite demandée et supprime la suite sans interpréter le contenu.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/str/truncate-words \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"The quick brown fox jumps over the lazy dog","words":5}'const res = await fetch("https://api.kit.forhosting.com/str/truncate-words", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "The quick brown fox jumps over the lazy dog",
"words": 5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/truncate-words",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "The quick brown fox jumps over the lazy dog",
"words": 5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/truncate-words", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"The quick brown fox jumps over the lazy dog","words":5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"The quick brown fox jumps over the lazy dog","words":5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/truncate-words", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"text": "The quick brown fox jumps over the lazy dog",
"words": 5
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.truncate_words",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
max_chars | 100000 |
max_words | 10000 |
max_ellipsis_chars | 32 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |