Aller au contenu

Messages recommandés

Posté(e)

Bonjour,

 

Voilà le "petit" soucis que je rencontre.

J'ai un fichier modèle de présentation (59 présentations).

Chaque présentation est configurée avec DWG to PDF et avec un style de tracé : "Aucun".

J'aurais besoin, lorsque je publie les 59 présentations de changer les plumes.

J'ai bien trouver la solution d'utiliser une mise en page nommé mais les 59 présentations sont toutes différentes. Du coup je perd les formats de papier et/ou traceur...

La solution (à la main) que j'ai trouvé est de copier une présentation "non nommée" de la "nommer" pour une plume couleur et de faire de nouveau la manip, pour une plume N&B.

Mais bon 2*59 présentations, ça va être super long.

 

Une solution plus rapide ?

 

Merci d'avance.

Posté(e)

regarde les lisp de partick35

 

de mémoire c'est "MPL V1.03" qui devrai faire ton bonheur

 

harf...édit------------

après test, ça recopie une config complète on a pas la main sur le fichier de plume seul...

 

autre idée:

dans tes 59 présentation met un fichier de plume on va dire temp0.ctb

 

puis crée temp1, temps2, ... avant d'imprimer, il te suffit de "d'enregistrer sous" temp1 en écrasant temp0; ou temp2 en écrasant temp0 avec la même présentation tu fera tes 2 sorties...

Posté(e)

Effectivement merci, c'est une très bonne "bidouille". A creuser...

Cependant il y a des gens, à mon travail, pas très à l'aise avec la manipulation de fichier, j'ai peur que la manip soit un peux lourde.

 

Mais en tout cas merci, ça va,perso, bien me dépanner pour l'instant.

Posté(e)

Bon et bien la solution est venu d'un de mes collègue de boulo qui à lu le forum...:rolleyes: !!

La voici :

;;;=================================================================
;;;
;;; CTB.LSP V1.01
;;;
;;; Changer le style d'impression des Présentations
;;;
;;; Copyright (C) Charles Piro
;;; 
;;;
;;;=================================================================

(defun c:ctb(/ s *errctb* MsgBox)

 ;;;---------------------------------------------------------------
 ;;;
 ;;; Gestion des erreurs
 ;;;
 ;;;---------------------------------------------------------------

 (defun *errctb* (msg)
   (if (/= msg "Function cancelled")
     (if (= msg "quit / exit abort")
(princ)
(princ (strcat "\nErreur : " msg))
     )
     (princ)
   )
   (setq *error* s)
   (vla-endundomark (vla-get-activedocument (vlax-get-acad-object)))
   (princ)
 )

 ;;;---------------------------------------------------------------
 ;;;
 ;;; Message
 ;;;
 ;;;---------------------------------------------------------------

 (defun MsgBox (Titre Bouttons Message / Reponse WshShell)
   (vl-load-com)  
   (setq WshShell (vlax-create-object "WScript.Shell"))
   (setq Reponse  (vlax-invoke WshShell 'Popup Message 7 Titre (itoa Bouttons)))
   (vlax-release-object WshShell)
   Reponse
 )

 ;;;---------------------------------------------------------------
 ;;;
 ;;; Routine principale
 ;;;
 ;;;---------------------------------------------------------------

 (defun multiplie_pre(/ config doc init_ctb lay liste_lay lst n position positiondests resultat tra)

   (if (findfile "ctb.dcl")
     (progn
(setq init_ctb (load_dialog (findfile "ctb.dcl")))
(setq liste_lay nil n 0 position "0" positiondest "0" doc (vla-get-activedocument (vlax-get-acad-object)))
(setq tra (vlax-safearray->list (vlax-variant-value (vla-getplotStyleTablenames (vla-get-layout (vla-get-modelspace doc))))))
(if (vl-position "Aucun" tra)
  (setq tra (vl-remove "Aucun" tra))
)
(vlax-for lay (vla-get-layouts (vla-get-activedocument (vlax-get-acad-object)))
  (setq lst (append lst (list (cons (vla-get-taborder lay) lay))))
)
(while (assoc n lst)
  (setq liste_lay (append liste_lay (list (vla-get-name (cdr (assoc n lst))))))
  (setq n (1+ n))
)
(if (vl-position "Model" liste_lay)
  (setq liste_lay (vl-remove "Model" liste_lay))
)
(new_dialog "ctb" init_ctb "")
(start_list "ctb")
(mapcar 'add_list tra)
(end_list)
(start_list "dest")
(mapcar 'add_list liste_lay)
(end_list)
(set_tile "titre" "Sélection Styles d'impression V1.01")
(set_tile "ctb" position)
(set_tile "dest" positiondest)
(mode_tile "ctb" 2)
(while (and (/= resultat 1)(/= resultat 0))
  (action_tile "ctb"    "(setq position $value)")
  (action_tile "dest"   "(setq positiondest $value)")
  (action_tile "accept" "(done_dialog 1)")
  (action_tile "cancel" "(done_dialog 0)")
  (setq resultat (start_dialog))
)
(unload_dialog init_ctb)
(if (eq resultat 1)
  (while (not (eq positiondest ""))
    (setq n (read positiondest))
    (vlax-for lay (vla-get-layouts doc)
      (if (eq (nth n liste_lay) (vla-get-name lay))
	(progn
	  (vla-put-StyleSheet lay (nth (atoi position) tra))
	  (princ (strcat "\nPrésentation " (vla-get-name lay) " Configurée avec " (nth (atoi position) tra)))
	)
      )
    )
    (setq positiondest (substr positiondest (+ 2 (strlen (itoa n))) (strlen positiondest)))
  )
)
     )
     (msgbox "ctb" 16 "Fichier ctb.DCL introuvable")
   )
 )
 ;;;---------------------------------------------------------------
 ;;;
 ;;; Routine de lancement
 ;;;
 ;;;---------------------------------------------------------------

 (vl-load-com)
 (setq s *error*)
 (setq *error* *errctb*)
 (vla-startundomark (vla-get-activedocument (vlax-get-acad-object)))
 (multiplie_pre)
 (vla-endundomark (vla-get-activedocument (vlax-get-acad-object)))
 (setq *error* s)
 (princ)
)

(setq nom_lisp "ctb")
(if (/= app nil)
 (if (= (strcase (substr app (1+ (- (strlen app) (strlen nom_lisp))) (strlen nom_lisp))) nom_lisp)
   (princ (strcat "..." nom_lisp " chargé."))
   (princ (strcat "\n" nom_lisp ".LSP Chargé.....Tapez " nom_lisp " pour l'éxecuter.")))
 (princ (strcat "\n" nom_lisp ".LSP Chargé......Tapez " nom_lisp " pour l'éxecuter.")))
(setq nom_lisp nil)
(princ)

 

Et je vous met en prime le .dcl qui va bien ;)

 

Encore merci !!

ctb.dcl

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é