speedy Posté(e) le 20 octobre 2011 Posté(e) le 20 octobre 2011 Bonjour à toutes et à tousComment regrouper un texte qui a été composé lettre par lettre et en faire un texte éditable ?Voici l'exemple ça vient des exports d'un autre logiciel qui décompose le texte des étiquettes réseau. bonne journée à toutes et à tous Michel a
Dinosor Posté(e) le 20 octobre 2011 Posté(e) le 20 octobre 2011 Pfffuuu, je ne vois pas là, Et si l'on fait un fichier de type .PLT et puis qu'on le retansforme en DWG.Je n'ai pas de quoi faire l'essai, et je n'ai aucune idée si cela peut fonctionner... :blink: Seuls nous allons vite, ensemble nous allons plus loin... CPU Intel 3,5Go / Nvidia RTX-3090 AutoCad (Architecture) 2022 - Lumion PRO BMW R-1200-RT, c'est moche, oui... je sais... www.neda.ch
didier Posté(e) le 20 octobre 2011 Posté(e) le 20 octobre 2011 Coucou je viens de te taper vite fait un morceau de codequi va concaténer les caractèrespas de contrôle ni rien, mais c'est une basepour la sélection je te conseille le TRAJETdepuis la droite vers la gauchesinon il faudra des contrôles dans le lisp pour ordonner les caractèresdans un premier temps ça devrait te dépanner dès que je trouve du temps je fais quelque chose de plus fin (setq jeu (ssget)) (setq n 0 chaine "") (repeat (sslength jeu) (setq valtexte (cdr(assoc 1 (entget (ssname jeu n))))) (setq chaine (strcat valtexte chaine)) (setq n (+ 1 n)) ) amicalement Éternel débutant... Mon site perso : Programmer dans AutoCAD
bryce Posté(e) le 20 octobre 2011 Posté(e) le 20 octobre 2011 Bonjour, Tu peux essayer ce lisp:http://www.creao.fr/uploads/lisp/concat.lsp Le code:(defun c:concat ( / *error* acdoc spc oldcmdecho ss ht style ent strings string prev) (vl-load-com) (setq spc (if (or (eq AcModelSpace (vla-get-ActiveSpace (setq acdoc (vla-get-ActiveDocument (vlax-get-acad-object) ) ) ) ) (eq :vlax-true (vla-get-MSpace acdoc)) ) (vla-get-ModelSpace acdoc) (vla-get-PaperSpace acdoc) ) ) (defun *error* (msg) (and msg (or (member (strcase msg) '("FUNCTION CANCELLED" "QUIT / EXIT ABORT" "FONCTION ANNULEE" "QUITTER / SORTIR ABANDON")) (princ (strcat "\nErreur : " msg)) ) ) (if ss (vla-delete ss)) (setvar "cmdecho" oldcmdecho) (vla-endundomark acdoc) (princ) ) (vla-startundomark acdoc) (setq oldcmdecho (getvar "cmdecho")) (setvar "cmdecho" 0) (if (setq ss (ssget '( (0 . "TEXT") )) ) (progn (setq ss (vla-get-activeselectionset acdoc) ht (vla-get-height (vla-item ss 0)) style (vla-get-stylename (vla-item ss 0)) ) (vlax-for ent ss (setq strings (cons (cons (vla-get-textstring ent) (vlax-safearray->list (vlax-variant-value (vla-get-insertionpoint ent))) ) strings ) ) (vla-delete ent) );vlax-for (setq strings (vl-sort strings '(lambda (e1 e2) (< (cadr e1) (cadr e2)) ) )) (setq string "") (setq prev (cdr (car strings))) (mapcar '(lambda (l) (if (> (distance prev (cdr l)) (* 0.9 ht) ) (setq string (strcat string " ")) ) (setq string (strcat string (car l))) (setq prev (cdr l)) ) strings ) (vla-put-stylename (vla-addtext spc string (vlax-3D-point (cdr (car strings))) ht) style) ) ) (*error* nil) ) (princ "Commande à utiliser: CONCAT") (princ) Brice, formateur AutoCAD - Inventor - SolidWorks - ZWCad - DraftSight - SketchUp indépendant
speedy Posté(e) le 21 octobre 2011 Auteur Posté(e) le 21 octobre 2011 [RESOLU] Bonjour à toutes et à tousMerci de votre aide, pour le code de Didier il manquait quelque chose...C'est nickel Bryce pour le code "concat" c'est exactement ça, je vais pouvoir reconstruire mes textes.. Bonne journée à tous Michel a
Dinosor Posté(e) le 21 octobre 2011 Posté(e) le 21 octobre 2011 Ils sont trop forts ! :o Basse prosternation. ;) Seuls nous allons vite, ensemble nous allons plus loin... CPU Intel 3,5Go / Nvidia RTX-3090 AutoCad (Architecture) 2022 - Lumion PRO BMW R-1200-RT, c'est moche, oui... je sais... www.neda.ch
bryce Posté(e) le 21 octobre 2011 Posté(e) le 21 octobre 2011 J'ai fait une petite correction (j'avais oublié de déclarer *error* dans les variables locales), il faudra re-télécharger le lisp. ;) Brice, formateur AutoCAD - Inventor - SolidWorks - ZWCad - DraftSight - SketchUp indépendant
speedy Posté(e) le 22 octobre 2011 Auteur Posté(e) le 22 octobre 2011 Merci Bryce et bon week end.....Michel a
wookichu Posté(e) le 24 octobre 2011 Posté(e) le 24 octobre 2011 Bonjour, Pourquoi ne pas utiliser les express tools?avec "txt2mtxt" tu peux regrouper tes lettres en un seul mtext (tu peu ensuite l'exploser en texte normal)... a+
speedy Posté(e) le 25 octobre 2011 Auteur Posté(e) le 25 octobre 2011 Bonjour à toutes et à tousdésolé wookichu, j'ai supprimer le fichier model du sujet, ta suggestion est bonne mais elle ne fonctionne pas avec ce genre de problème, le lisp pour concatener les lettres est la seule solution qui fonctionne, c'est un programme qui me transmet le texte de cette façon ce n'est pas autocad.... http://www.cijoint.fr/cjlink.php?file=cj201110/cij7LEKFFl.jpg Et bonne journée.....malgré la pluie.... Michel a
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant