Aller au contenu

Texte


speedy

Messages recommandés

Bonjour à toutes et à tous

Comment 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

Lien vers le commentaire
Partager sur d’autres sites

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

Lien vers le commentaire
Partager sur d’autres sites

Coucou

 

je viens de te taper vite fait un morceau de code

qui va concaténer les caractères

pas de contrôle ni rien, mais c'est une base

pour la sélection je te conseille le TRAJET

depuis la droite vers la gauche

sinon il faudra des contrôles dans le lisp

pour ordonner les caractères

dans 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

Lien vers le commentaire
Partager sur d’autres sites

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)

Lien vers le commentaire
Partager sur d’autres sites

Bonjour à toutes et à tous

dé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

Lien vers le commentaire
Partager sur d’autres sites

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 compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité