La Lozère Posté(e) le 10 septembre 2009 Posté(e) le 10 septembre 2009 Salut, Depuis pas mal de temps, je me bas avec l'impression automatisée des profils en travers. J'utilise PDFCréator pour pouvoir assembler tous les profils dans un seul fichier PDF pour créer un cahier de profils en travers. Mon soucis est que quelque soit la méthode de saisie des profils à imprimer (un par un, par fenêtre) l'ordre de profils n'est pas respecté. Par moment j'ai un profil qui ne se trouve pas à la bonne place. Je vais avoir: 1 puis 2 puis 4 puis 3 puis 5 ..............................17 puis 19 puis 20.........................35 puis 18 puis 36 etc. Et ce de façon aléatoire et pour une même liste de PT entre 2 essais, le résultat varie. Pour savoir si cela ne venait pas de PDFcréator, j'ai fais un test sur une imprimante papier .......... même résultat. Bref, je craque. On a 2 postes concernés. Par contre sur celui de ma collègue, pas de problèmes. Mais bon à force c'est elle qui va craquer, mais pas pour les mêmes raisons. ;) Quelqu'un a-t-il déjà eu ce problème? Avec la V2009 + Covadis V10 j'avais le même problème. Merci. Autocad V2009 Covadis - Autopiste V11.0a www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
x_all Posté(e) le 10 septembre 2009 Posté(e) le 10 septembre 2009 j'ai bien eu ce type de pb avec pdfcreator.. par contre pas de pb avec DwgtoPdf (autocad 2007 et sup) ça à l'ai d'etre un pb de buffer les pages arrivant un peu dans l'ordre ou elle ont été finie de traiter et pas dans l'ordre ou on les envoi.. si tu est sur covadis, utilise l'assistant d'imprétion avec DwgtoPdf ça passe pas mal... sinon il y avait impa4 qui marche trés bien aprés des adaptations minimes suivant ta configuration quelques trucs sur autocad
fredbross Posté(e) le 11 septembre 2009 Posté(e) le 11 septembre 2009 Bonjour, avant j'avais aussi ce problème, j'utilisais alors le lisp suivant qui impose un délai de 10 secondes entre chaque profils, ainsi il sont dans l'ordre. (defun c:impauto() (vl-load-com) (setvar "cmdecho" 0) (setq pl (getlayer "Selectionne le calque des cadres à imprimer:")) (setq SS (ssget "_W" (getpoint "pt haut gauche") (getpoint "pt bas droit") (list(cons 0 "LWPOLYLINE") (cons 8 pl)))) (setvar "expert" 5) (if (and SS (> (sslength SS) 0)) (progn (repeat (setq iPTS (sslength SS)) (setq EN (entget (ssname SS (setq iPTS (1- iPTS)))) PTS (cons (cdr (assoc 10 EN)) PTS) ) ) (setq iPTS (vl-sort-i PTS '(lambda (A B) ;;eval as T if A is supposed to be in front of B (cond ( ;(equal (car A) (car B) (expt 0.1 (getvar "LUPREC"))) ;;same X? (> (cadr A) (cadr B)) ;;return T if Y1 < Y2 ) ((= 1 1) T);;X1 < X2 ;((< (car A) (car B)) T);;X1 < X2 (T nil))))) (foreach iX iPTS (setq ent (ssname SS iX)) (setq ent(entget ent)) (setq j! 0) (setq l_cadre (list )) (setq nb_sommets 0) (repeat (length ent) (setq entit (nth j! ent)) (setq code_entit (car entit)) (if (= code_entit 10) (progn (setq l_cadre (cons (list (car (cdr entit))(cadr (cdr entit))) l_cadre)) (setq nb_sommets(+ nb_sommets 1)) );fin du progn );fin du if (setq j! (+ j! 1)) ) (if (= nb_sommets 4) (progn (setq p1 (car l_cadre)) (setq p2 (caddr l_cadre)) (command "-traceur" "o" "" "PDFCreator.pc3" "A3" "M" "A" "N" "F" p1 p2 "10:1" "C" "N" "acad.ctb" "O" "f" "n" "n" "o") )) (setq tt 0) (setq time (getvar "date")) (setq ti (setq time (* 86400.0 (- time (fix time))))) (while (< tt (+ ti 10)) (setq time (getvar "date")) (setq tt (setq time (* 86400.0 (- time (fix time))))) ) ) ))) (defun getlayer (titre / lay lst tmp file what_next dcl_id nom) (while (setq lay (tblnext "LAYER" (not lay))) (setq lst (cons (cdr (assoc 2 lay)) lst)) ) (setq lst (acad_strlsort lst) tmp (vl-filename-mktemp "Tmp.dcl") file (open tmp "w") ) (write-line (strcat "getlayer:dialog{label=" (cond (titre (vl-prin1-to-string titre)) ("\"Choisir un calque\"") ) ";initial_focus=\"tp\"; :boxed_column{:row{ :column{:text{label=\"Sélectionner un objet\";alignment=left;}} :column{:button{label=\">>\";key=\"obj\";alignment=right;fixed_width=true;} spacer;}} :edit_box{key=\"tp\";edit_width=50;allow_accept=true;} :popup_list{key=\"lay\";edit_width=50;} spacer;}ok_cancel;}" ) file ) (close file) (setq dcl_id (load_dialog tmp)) (setq what_next 2) (while (>= what_next 2) (if (not (new_dialog "getlayer" dcl_id)) (exit) ) (start_list "lay") (mapcar 'add_list lst) (end_list) (or nom (setq nom (vlax-ldata-get "getLayer" "n")) (setq nom (vlax-ldata-put "getLayer" "n" "0")) ) (if (member nom lst) (set_tile "lay" (itoa (- (length lst) (length (member nom lst)))) ) (set_tile "lay" "0") ) (set_tile "tp" nom) (action_tile "obj" "(done_dialog 3)") (action_tile "tp" "(setq nom $value)") (action_tile "lay" (strcat "(if (or (= $reason 1) (= $reason 4))" "(progn" "(setq nom (nth (atoi $value) lst))" "(set_tile \"tp\" (nth (atoi $value) lst))" "(mode_tile \"tp\" 2)))" ) ) (action_tile "accept" (strcat "(if (tblsearch \"LAYER\" nom)" "(progn (done_dialog 1)" "(vlax-ldata-put \"getLayer\" \"n\" nom))" "(progn" "(alert (strcat \"Le calque \" nom \" est introuvable.\"))" "(setq nom nil) (set_tile \"tp\" (vlax-ldata-get \"getLayer\" \"n\"))" "(mode_tile \"tp\" 2)))" ) ) (setq what_next (start_dialog)) (cond ((= what_next 3) (if (setq nom (car (entsel))) (setq nom (cdr (assoc 8 (entget nom)))) (setq nom nil) ) ) ((= what_next 0) (setq nom nil) ) ) ) (unload_dialog dcl_id) (vl-file-delete tmp) nom ) Sinon il faut passer à autocad 2010 et surtout ne rien faire d'autre sur l'ordi pendant le processus d'impression, pour moi c'est bon. Bonne journée.
La Lozère Posté(e) le 11 septembre 2009 Auteur Posté(e) le 11 septembre 2009 Merci, fredboss,Je vais tester. Mais serait-il possible de descendre la valeur de 10s. Car pour une 50aine de profils, l'impression serait de presque 9mn. Est-ce cette valeur du code qui gère l'intervalle: PTS (cons (cdr (assoc 10 EN)) PTS) A plus. www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
fredbross Posté(e) le 11 septembre 2009 Posté(e) le 11 septembre 2009 Il suffit de changer la valeur à la ligne:(while (< tt (+ ti 10)) Mais si tu met trop peu tu auras à nouveau des profils dans le désordre.
La Lozère Posté(e) le 11 septembre 2009 Auteur Posté(e) le 11 septembre 2009 Peux-tu m'expliquer comment fonctionne cette routine. Je ne vois pas comment on sélectionne l'imprimante, le format, etc.A moins qu'il faille être en espace papier avec une fenêtre par profil l!!!!!A plus. www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
fredbross Posté(e) le 11 septembre 2009 Posté(e) le 11 septembre 2009 C'est uniquement pour utiliser pdfcreator au format A3 paysage, sinon il faut modifier le lisp.
La Lozère Posté(e) le 11 septembre 2009 Auteur Posté(e) le 11 septembre 2009 OK, je vois comment cela fonctionne.Mais voilà ce qu'autocad me retourne lorsque je fais un test sur UN profil. IMPAUTO pt haut gauchept bas droitCommande inconnue "O". Appuyez sur F1 pour obtenir de l'aide.Commande inconnue "F". Appuyez sur F1 pour obtenir de l'aide.Commande inconnue "N". Appuyez sur F1 pour obtenir de l'aide.Commande inconnue "N". Appuyez sur F1 pour obtenir de l'aide.Commande inconnue "O". Appuyez sur F1 pour obtenir de l'aide.; erreur: type d'argument incorrect: lentityp nil www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
fredbross Posté(e) le 11 septembre 2009 Posté(e) le 11 septembre 2009 Vous avez du changer le "N" devant le "acat.ctb" de ce fait les paramètres après changent.Vous pouver tester la syntaxe au clavier (sans les guillemets)"-traceur" "o" "" "PDFCreator.pc3" "A3" "M" "A" "N" "F" p1 p2 "10:1" "C" "N" "acad.ctb" "O" "f" "n" "n" "o"Ainsi vous verrez les paramètres qu'il vous faut. Bon courage.
La Lozère Posté(e) le 11 septembre 2009 Auteur Posté(e) le 11 septembre 2009 Je n'ai rien changé à part le délai. J'ai testé la syntaxe au clavier et elle marche. Bizarre :P www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
Calecx Posté(e) le 19 avril 2010 Posté(e) le 19 avril 2010 Bonjour,Tout d'abord merci pour cette lisp, mais j'ai plus d'une centaine de profils à imprimer, donc j'ai cherché une autre solution, dites moi ce que vous en pensez:par le menu "démarrer" de Windows, aller sur les imprimantes, puis propriétés de PdfCreator, ensuite dans l'onglet "Avancé", cocher "Imprimer directement sur l'imprimante" au lieu de "Spooler l'impression..."Chez moi cette manip' marche.Par contre j'ai un autre problème, parfois le bas de mes pages (j'imprime mes profils en A4 paysage) est tronqué, c'est à dire que la date et le nom du fichier généré par PDFCreator disparait d'une façon apparemment aléatoire (donc je ne pense pas que ce soit une question de mise en page).Avec la lisp ci-dessus, je ne rencontre pas ce problème, par contre, problème bien différent, l'ordre de mes profils est inversé, je clic pourtant comme il est indiqué: d'abord Haut gauche puis bas droit, mais je me retrouve avec un document commençant par la fin.J'espère avoir été assez clair dans mes explications. Cordialement.
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