AutoCAD for Mac Forum
Welcome to Autodesk’s AutoCAD for Mac Forums. Share your knowledge, ask questions, and explore popular AutoCAD for Mac topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Export to PDF command line help.

60 REPLIES 60
SOLVED
Reply
Message 1 of 61
gobluejd
4284 Views, 60 Replies

Export to PDF command line help.

hmsilva Has helped me get a auto PDF generator to work in windows.  The lisp replaces the qsave command and when you type qsave, it auto generates to a specific location and works really good.  I wanted to try on the MAC.  You can see whole convo here.  

 

More specifically he stared helping on the MAC but he is not a mac user.  That convo starts here.

 

I am pretty sure it can be come but need some assistance and hopefully someone can help out.

 

Basically I want to see I can create a PDF completely from the command line and use in the aucaddoc.lsp which I have confirmed loads and works.

 

 

 

 

60 REPLIES 60
Message 2 of 61
maxim_k
in reply to: gobluejd

Hi Jeff,

Which AutoCAD version do you have on your Mac?
I'm asking, because the code in AutoLISP routine you want depends on AutoCAD version: in 2016 version the printing process was changed in compare to 2015 and 2014 versions.

Actually I have the solution and ready to post it, but i want to be sure that it will work in your AutoCAD installation.

Maxim

Do you find the posts helpful? "LIKE" these posts!
Have your question been answered successfully? Click 'ACCEPT SOLUTION' button.


Maxim Kanaev
Architect
MARSS

MacACAD | Linkedin

Etiquette and Ground Rules of Autodesk Community
Message 3 of 61
gobluejd
in reply to: maxim_k

I am using 2016.
Message 4 of 61
maxim_k
in reply to: gobluejd

OK, here it is:

 

This version works without redefinig QSAVE command - after loading yoiu will get ne command QS:

 

(defun c:qs (/ *error* echo pdf_file lst mutt)
(defun *error* (msg)
(if mutt
(setvar 'nomutt mutt)
)
(if echo
(setvar 'cmdecho echo)
)
(cond ((not msg))
((member msg '("Function cancelled" "quit / exit abort")))
((princ (strcat "\n** Error: " msg " ** ")))
)
(princ)
)
(setq mutt (getvar 'nomutt)
echo (getvar 'cmdecho))
(setvar 'cmdecho 0)
(setvar 'nomutt 1)

(setq pdf_file (strcat (getvar "dwgprefix") (substr (getvar "dwgname") 1 (- (strlen (getvar "dwgname")) 4))))
(setq lst (dictsearch (namedobjdict) "acad_layout"))
(setq lst (dictsearch (cdar lst) (getvar "ctab")))
(if (or (eq (cdr (assoc 2 lst)) "none_device") (eq (cdr (assoc 2 lst)) "None"))
    (command "_plot" "_N" "" "" "" pdf_file "_N" "_Y")
    (command "_plot" "_N" "" "" "" "_Y" pdf_file "_N" "_Y")
)

(command "_.qsave")
(*error* nil)
(princ)
)

 

after executing QS you will get PDF file with the same name as your drawing file in the same folder where this DWG is. Plus current DWG will be saved with QSAVE command.

 

You can use this routine with or without editing Page Setup in Page Setup manager.

 

If the drawing was previously saved after printing in Windows version of AutoCAD or Page Setups in it were edited on another Mac, you need to edit Page setup for all Layouts in the drawing to avoid errors in PDF output.

 

Maxim


Do you find the posts helpful? "LIKE" these posts!
Have your question been answered successfully? Click 'ACCEPT SOLUTION' button.


Maxim Kanaev
Architect
MARSS

MacACAD | Linkedin

Etiquette and Ground Rules of Autodesk Community
Message 5 of 61
gobluejd
in reply to: maxim_k

Thank you. I am in a meeting most of the day but will test ASAP and let you know.
Message 6 of 61
gobluejd
in reply to: gobluejd

I had a few mintues to test.  It appears to work but the command is asking questions each time

 

Printer Name - have to manually enter (defauly is always the OKI)

Plot to file - Y

Create plot file screen comes up - click save. (it then creates)

Then asked to save changes to page setup. click N is default (accept)

Proceed to plot (say No)

Command over.

 

 

Basically it works, but I have to manually enter the above responses.  Typing export and hitting enter is much much quicker.

 

Here is command line screenshot:

 

Screen Shot 2016-02-02 at 10.48.09 AM.png

 

 

Message 7 of 61
maxim_k
in reply to: gobluejd

Have you read an alert in bold in my previous post?
Current Page Setup in the file you tested was created in AutoCAD for Windows - that is why my routine works incorrectly.
You need to edit and save current Page Setup for each layout in the drawing, than the routine will work without your interaction.
In theory I can add some code in order to temporary reset Page Setup (plotter name), but nobody can adjust paper sizes which are used in page setups. Unfortunately this is one of the limitations in Windows and Mac versions compatibility.

Maxim

Do you find the posts helpful? "LIKE" these posts!
Have your question been answered successfully? Click 'ACCEPT SOLUTION' button.


Maxim Kanaev
Architect
MARSS

MacACAD | Linkedin

Etiquette and Ground Rules of Autodesk Community
Message 8 of 61
gobluejd
in reply to: maxim_k

I did read your bold text and was looking for errors - I was not considering what I meantioned as an error.  I will play around with.  I have over 3k drawings and some have various setups etc.

 

Thank you so much for the time you put into this and I hope it helps someone else as well.

Message 9 of 61
maxim_k
in reply to: gobluejd

Does paper size in PDF output is important for you? If no and you can live with the same paper size (the default paper size from Mac OS System Preferences -> printers and Scanners pane) for all PDFS, than I can add code which will reset temporary page setup and you don't need to do it manually for each Layout in each drawing.

Maxim

Do you find the posts helpful? "LIKE" these posts!
Have your question been answered successfully? Click 'ACCEPT SOLUTION' button.


Maxim Kanaev
Architect
MARSS

MacACAD | Linkedin

Etiquette and Ground Rules of Autodesk Community
Message 10 of 61
gobluejd
in reply to: maxim_k

99% of my prints are printed on 8.5x11. The only differnce in that is it may differ between landscape and portrait.

Message 11 of 61
maxim_k
in reply to: gobluejd

So, do you need modifications in routine?
I'm asking because now I don't have much time and not sure If I can do this quickly.

Maxim

Do you find the posts helpful? "LIKE" these posts!
Have your question been answered successfully? Click 'ACCEPT SOLUTION' button.


Maxim Kanaev
Architect
MARSS

MacACAD | Linkedin

Etiquette and Ground Rules of Autodesk Community
Message 12 of 61
gobluejd
in reply to: maxim_k

If it will make the process quicker, yes.  I am in no rush.  Do when you can.

Message 13 of 61
gobluejd
in reply to: gobluejd

Just checking in - I know I told you no rush - just want to keep this open as Autodesk keeps sending me "Is this resolved" emails.
Message 14 of 61
maxim_k
in reply to: gobluejd

Hi,

If you mean my promise about adding code for resetting pilot device information, than I still have a very limited time, sorry. Can you wait for one - two days?

Maxim

Do you find the posts helpful? "LIKE" these posts!
Have your question been answered successfully? Click 'ACCEPT SOLUTION' button.


Maxim Kanaev
Architect
MARSS

MacACAD | Linkedin

Etiquette and Ground Rules of Autodesk Community
Message 15 of 61
gobluejd
in reply to: maxim_k

Absolutely, - you are helping me.  It can wait until next week if needed.  I just dont want to keep getting Autodesk emails asking if this is resolved.  

Message 16 of 61
maxim_k
in reply to: gobluejd

Hi Jeff,

I need an information from you:
What printing area do you want to get in PDF:
- in Model space: display, limits, window defined in current page setup (if any), Extents or saved model views (if any)?
- in Layout: Layout, Window defined in page setup (if any), Extents or Display?

I'm asking, because if one of the options "What to print" were saved in current page setup, I need to reset it too.

Maxim

Do you find the posts helpful? "LIKE" these posts!
Have your question been answered successfully? Click 'ACCEPT SOLUTION' button.


Maxim Kanaev
Architect
MARSS

MacACAD | Linkedin

Etiquette and Ground Rules of Autodesk Community
Message 17 of 61
gobluejd
in reply to: gobluejd

I do not print from model space, only layout and is a predefined window 99% of time.
Message 18 of 61
maxim_k
in reply to: gobluejd

>>>>only layout and is a predefined window 99% of time
If you want to have output to PDF with predefined window from Layout each time you save drawing (that was the original idea as I remember), than you need at first to define this window in the current page setup of each Layout of each drawing.

Otherwise you will need to define the area you want to plot each time you use my routine, because the default plot area in AutoCAD Layout is "Layout" and AutoCAD (and my routine) cannot know about what part what part of Layout (Window, which is defined by you) you want to save to PDF.

In my routine I can force AutoCAD to save to PDF Layout area, but I don't know which window you want to save in each of the drawing 😞

What do you think about this?

Maxim

Do you find the posts helpful? "LIKE" these posts!
Have your question been answered successfully? Click 'ACCEPT SOLUTION' button.


Maxim Kanaev
Architect
MARSS

MacACAD | Linkedin

Etiquette and Ground Rules of Autodesk Community
Message 19 of 61
gobluejd
in reply to: maxim_k

I am not sure I am following so bare with me.  Almost 90% of my drawings can be batch plotted as the layout is already predifend. So in any of the drawings, when opened, you can export to PDF and it works, without doing anything.

 

If I understatnd you, you are saying that everytime your command begins, it has to get the window coordinates again, then it may not be worth continuing.

 

Currnently I do everything in Windows, however I like the smoothness of how MAC version runs (clean, nice pan etc etc) and would like to start using this.  RIght now I have about 3k in drawings that co-workers do not need to interact with, just open, PDF it and send with quotes etc.  So the idea was to remove them from having to use a DWG Viewer and the plot process.  I have all the drawings created to PDF, so from this point fwd, everytime I save it prints it PDF so the PDF's they see are updated without me having to remember to PDF it.

 

So If my second paragraph is true, then there is probably no need to move forward as I could just keep using WIN version and the save command you did for me there.

 

I have attached a DWG that contains the LAYOUT that I have in probably 75% of all the drawings.  In case you would need to understand.

Message 20 of 61
maxim_k
in reply to: gobluejd

I think I misunderstood you when I read "predefined window".
You mean not "Window" in "What to plot" settings, but rather "Layout".
Is it correct?

Maxim

Do you find the posts helpful? "LIKE" these posts!
Have your question been answered successfully? Click 'ACCEPT SOLUTION' button.


Maxim Kanaev
Architect
MARSS

MacACAD | Linkedin

Etiquette and Ground Rules of Autodesk Community

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report