create Powerpoint via com

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Alan Isaac

    create Powerpoint via com

    Can someone point me to a simple example
    or better yet tutorial for creating
    a Powerpoint using Python.

    Thanks,
    Alan Isaac
  • kyosohma@gmail.com

    #2
    Re: create Powerpoint via com

    Alan,

    On Aug 30, 1:37 pm, Alan Isaac <ais...@america n.eduwrote:
    Can someone point me to a simple example
    or better yet tutorial for creating
    a Powerpoint using Python.
    >
    Thanks,
    Alan Isaac
    You should check our the following for information on using COM
    itself:



    Core Python Programming by Chun has an example in it using Tkinter. I
    did it a while back, so here's the source:


    <code>

    # Core Python Chp 23, pg 994
    # ppoint.pyw

    from Tkinter import Tk
    from time import sleep
    from tkMessageBox import showwarning
    import win32com.client as win32

    warn = lambda app: showwarning(app , 'Exit?')
    RANGE = range(3, 8)

    def ppoint():
    app = 'PowerPoint'
    ppoint = win32.gencache. EnsureDispatch( '%s.Application ' % app)
    pres = ppoint.Presenta tions.Add()
    ppoint.Visible = True

    s1 = pres.Slides.Add (1, win32.constants .ppLayoutText)
    sleep(1)
    sla = s1.Shapes[0].TextFrame.Text Range
    sla.Text = 'Python-to-%s Demo' % app
    sleep(1)
    slb = s1.Shapes[1].TextFrame.Text Range
    for i in RANGE:
    slb.InsertAfter ("Line %d\r\n" % i)
    sleep(1)
    slb.InsertAfter ("\r\nTh-th-th-that's all folks!\r\n")

    warn(app)
    pres.Close()
    ppoint.Quit()

    if __name__ == '__main__':
    Tk().withdraw()
    ppoint()

    </code>

    I recommend getting ActiveState's Python distro as it comes with an
    IDE that can browse COM objects fairly easily.

    Hope that helps!

    Mike

    Comment

    • Alan Isaac

      #3
      Re: create Powerpoint via com

      kyosohma@gmail. com wrote:
      Hope that helps!
      Yes indeed.
      Thanks!
      Alan

      Comment

      • Alan Isaac

        #4
        Re: create Powerpoint via com

        kyosohma@gmail. com wrote:
        <code>
        OK, creating bulleted lists, or tables,
        or adding pictures is all straightforward .
        How about chart creation (in Ppt 2003)?
        I do not see how to do this with Python.

        Thanks,
        Alan

        Comment

        • kyosohma@gmail.com

          #5
          Re: create Powerpoint via com

          On Aug 30, 11:55 pm, Alan Isaac <ais...@america n.eduwrote:
          kyoso...@gmail. com wrote:
          <code>
          >
          OK, creating bulleted lists, or tables,
          or adding pictures is all straightforward .
          How about chart creation (in Ppt 2003)?
          I do not see how to do this with Python.
          >
          Thanks,
          Alan
          Alan,

          You probably need to browse the COM object using PythonWin, which is a
          part of the ActiveState distro. You can also use Python's builtin
          function, dir, to find out various methods of COM.

          Here's some info in messing with charts in Excel, which should be
          similar to chart manipulation in PowerPoint.






          Mike

          Comment

          • Alan Isaac

            #6
            Re: create Powerpoint via com

            >>How about chart creation (in Ppt 2003)?
            >>I do not see how to do this with Python.
            kyosohma@gmail. com wrote:
            You probably need to browse the COM object using PythonWin, which is a
            part of the ActiveState distro. You can also use Python's builtin
            function, dir, to find out various methods of COM.
            >
            Here's some info in messing with charts in Excel, which should be
            similar to chart manipulation in PowerPoint.
            >



            http://mathieu.fenniak.net/plotting-...ugh-pythoncom/

            Thanks!
            Alan

            Comment

            • Alan Isaac

              #7
              Re: create Powerpoint via com

              Well, my needs were very limited so the
              result is too, but in case someone else
              just needs to get started:


              Comments, suggestions, additions welcom.

              Alan Isaac

              Comment

              Working...