Comment convertir plusieurs objets TEXT (texte sur une ligne) en objets MTEXT (texte multiligne) dans AutoCAD, en traitant chaque TEXT individuellement sans les regrouper en un seul MTEXT, et ce, sur une sélection ou l’ensemble du dessin ?
Le comportement par défaut de la commande TXT2MTXT des Express Tools est souvent de regrouper tous les objets TEXT sélectionnés en un seul objet MTEXT, ce qui n’est pas toujours souhaité. Voici deux méthodes pour convertir des objets TEXT en MTEXT de manière individuelle, sans regroupement, applicables à une sélection ou à l’ensemble du dessin.
Méthode 1 : Utilisation de la commande TXT2MTXT des Express Tools avec les paramètres (Recommandé)
Cette méthode, disponible dans les versions récentes d’AutoCAD (et déjà présente dans les Express Tools d’AutoCAD 2005 et ultérieures), permet de contrôler précisément le comportement de la conversion.
-
Lancer la commande sans sélection préalable :
- Tapez
TXT2MTXTdans la ligne de commande et appuyez sur Entrée. - Ne sélectionnez aucun objet immédiatement.
- Tapez
-
Accéder aux paramètres :
- Lorsque le message « Sélectionner des objets ou [PAramètres]: » apparaît, tapez
PA(ouPselon la version et la langue) et appuyez sur Entrée pour accéder aux options.
- Lorsque le message « Sélectionner des objets ou [PAramètres]: » apparaît, tapez
-
Désactiver le regroupement :
- Dans la boîte de dialogue « Convertir le texte en texte multiligne », assurez-vous que l’option « Combiner dans un seul objet TextMult » est décochée.
- Vous pouvez également ajuster d’autres paramètres comme le tri des objets ou la conversion des codes de contrôle.
- Cliquez sur « OK » pour valider les paramètres.
-
Sélectionner les objets à convertir :
- AutoCAD vous demandera à nouveau de « Sélectionner des objets: ».
- Sélectionnez maintenant tous les objets TEXT que vous souhaitez convertir.
- Appuyez sur Entrée pour finaliser la commande.
Chaque objet TEXT sera converti en un MTEXT distinct, conservant sa position et ses propriétés (justification, rotation, etc.) dans la mesure du possible.
Méthode 2 : Utilisation d’un LISP dédié (Historique mais fonctionnel)
Pour les versions plus anciennes d’AutoCAD (comme AutoCAD 2005) ou si la méthode Express Tools ne donne pas le résultat escompté, un script LISP peut être utilisé. Ce LISP parcourt tous les objets TEXT du dessin et applique la conversion individuellement.
-
Copier le code LISP :
;;Text to Mtext - one line at a time. ;; Paul Kirill 2002 (DEFUN C:T2MT_1 (/ selset elist) (setq SELSET (ssget "X" (list (cons 0 "TEXT")) ) ) (setq C -1) (if SELSET (repeat (sslength SELSET) (setq ELIST (entget (ssname SELSET (setq C (1+ C)))) ELIST (cdr (assoc -1 ELIST)) ) (command "TXT2MTXT" ELIST "") ) ) (princ) ) -
Enregistrer le fichier LISP :
- Collez ce code dans un éditeur de texte (comme le Bloc-notes).
- Enregistrez le fichier sous un nom significatif, par exemple
convtext.lsp.
-
Charger le LISP dans AutoCAD :
- Dans AutoCAD, allez dans le menu
Outils>AutoLISP>Charger l'application.... - Naviguez jusqu’à votre fichier
convtext.lspet cliquez surCharger. - Alternativement, vous pouvez glisser-déposer le fichier
.lspdirectement dans la zone graphique d’AutoCAD.
- Dans AutoCAD, allez dans le menu
-
Exécuter la commande LISP :
- Tapez
T2MT_1dans la ligne de commande et appuyez sur Entrée. - Ce LISP sélectionnera et convertira automatiquement tous les objets TEXT du dessin en MTEXT individuels.
- Tapez
Remarque sur le LISP : Ce script utilise la commande TXT2MTXT en interne. Il est conçu pour traiter chaque TEXT indépendamment. Cependant, des utilisateurs ont rapporté que la justification et la rotation des textes originaux pouvaient ne pas être parfaitement conservées dans certains cas, surtout pour des textes avec des rotations complexes. Il est donc conseillé de vérifier le résultat.
Bonnes Pratiques
- Sauvegardez votre dessin avant d’effectuer des conversions massives.
- Testez la conversion sur une petite sélection d’objets ou sur une copie du dessin pour vous assurer que le résultat correspond à vos attentes.
- Vérifiez la justification et la rotation des MTEXT convertis, en particulier si les TEXT originaux avaient des propriétés non standard.