How to: create DWF/PDF automatically when you save AutoCAD drawing

Plotter worker

© Alfonso de Tomás –

Do you need to create DWF or PDF for your drawing to share it with your coworkers? Sometimes you have to do this because not everyone have access to AutoCAD. Of course, you can ask them to install DWG TrueView, free DWG viewer from Autodesk. But not everyone want to install it, especially if they don’t have a good hardware.

PDF probably is a better choice if you often share your drawing with non CAD users. Almost everybody today has PDF reader installed in their computer. And you can open DWFx by using Internet Explorer 7 or later (doesn’t work with other internet browser, only IE. Try this link to open a sample DWFx)

Auto Publish

AutoCAD offers automatic publish to DWF or PDF. You can choose it to create DWF/PDF automatically when you save your file. When you share your drawing on a shared location, you can be sure if the PDF is also updated. No need to worry that you forget to update it!

To enable Auto publish, open AutoCAD options. In ‘Plot and Publish’ tab, you can enable Automatic Publish on the bottom left of the dialog.


Auto Publish options

If you click ‘Automatic Publish Settings…’ you can change some options, so it will suit your needs.


First, Publish On. You can choose to auto publish every time you save the drawing or when you close it. Or let AutoCAD to ask you first. Publish when close is more relevant. Because we often save drawings even we haven’t finished it yet. We don’t want people to see unfinished drawings, aren’t we?

You can set the save location, what to save (model and/or layouts) and file format.

Let the others see your drawings!

This is a nice option to have, if we work with many non CAD users. It’s tedious to update the PDF/DWF every time we make changes. And we often forget to do it, so people may see old drawings instead of the last version.

Share on Pinterest
Share with your friends

More share buttons



    Leave a Reply

    Your email address will not be published. Required fields are marked *

  1. Akhtar Rashid says

    Dear Edwin Prakoso,

    I am a great fan of your useful tips and tricks posted on this website. I have a problem to be solved through your nice help.

    I do not have a plotter installed on my computer. Usually I go to market for printing large sheets and get prints through model space. I want to prepare my layouts at home and get them printed from the market. How is possible without a plotter installed on the computer. If I select None printing deceive, will it still be printed in the same way, I mean the borders I have selected/set in my layout and the settings of the actual printing device will not affect it. Or is there another way to set the layout for an unknown printing device.

    Thanks for helping me.


    Akhtar Rashid

    • RenderMan says

      While the AUTOMATICPUB System Variable is a global setting, one can easily change it as needed via one's AcadDoc.lsp file at drawing open.

      For example, one can search the DWGPREFIX System Variable to check for if a given drawing is a Model, or a Sheet (presuming these are kept in different directories, or have specific file naming conventions), and employ the SETVAR function accordingly:

      (setvar 'automaticpub 1) ;; on

      (setvar 'automaticpub 0) ;; off

      Now, to make this a complete automation, one *should* also incorporate a Visual LISP DocManager Reactor, specifically monitoring the :vlr-DocumentBecameCurrent Event, so that this setting is updated each time one switches to an open drawing (given that current versions are MDI environment and all). Lemon squeezy.

      • RenderMan says

        Pseudo code (written quickly):



        (defun Automaticpub:Start ()
        (or *Automaticpub_Reactor*
        (setq *Automaticpub_Reactor*
        "My automaticpub reactor"
        (prompt "nAutomaticpub reactor loaded. ")

        (defun Automaticpub:DocumentBecameCurrent (rea doc)
        (prompt "nAutomaticpub = ")
        (setq dwgPrefix (strcase (getvar 'dwgprefix)))
        (T 0)

        (defun c:AutomaticpubOff ()
        (if *Automaticpub_Reactor*
        (vlr-remove *Automaticpub_Reactor*)
        (setq *Automaticpub_Reactor* nil)
        (prompt "n** Automaticpub reactor stopped ** ")

        (prompt "nInvoke "AUTOMATICPUBOFF" to end. ")


        ** Note – Just noticed that this posting system removes the text formatting.

        • says

          Thank you very much RenderMan… Great to see your comment here.

          Nice code, I believe many can use it. It looks like many people like auto publish.

          Yes, the posting system doesn't support bbcode like in forums. It's very unfortunate, but this is the best system I know to fight spam comments.