# Sumatra PDF is a PDF, ePub, MOBI, CHM, XPS, DjVu, CBZ, CBR reader for Windows

Sumatra can be controlled in a limited way from other software by sending DDE commands. They are mostly used to use SumatraPDF as a preview tool from e.g. LaTeX editors that generate PDF files.

## Format of DDE comands

Single DDE command: `[Command(parameter1, parameter2, ..., )]`
Multiple DDE commands: `[Command1(parameter1, parameter2, ..., )][Command2(...)][...]`

## List of DDE commands:

- Open file
  - format: `[Open("<pdffilepath>"[,<newwindow>,<focus>,<forcerefresh>])]`
  - arguments:
    - if `newwindow` is 1 then a new window is created even if the file is already open
    - if `focus` is 1 then the focus is set to the window
    - if `forcerefresh` is 1 the command forces the refresh of the file window if already open (useful for files opened over network that don't get file-change notifications)".
  - example: `[Open("c:\file.pdf", 1, 1, 0)]`

- Forward-search
  - format: `[ForwardSearch(["<pdffilepath>",]"<sourcefilepath>",<line>,<column>[,<newwindow>,<setfocus>])]`
  - arguments:
    - `pdffilepath` : path to the PDF document (if this path is omitted and the document isn't already open, SumatraPDF won't open it for you)
    - `column` : this parameter is for future use (just always pass 0)
    - `newwindow` : 1 to open the document in a new window (even if the file is already opened)
    - `focus` : 1 to set focus to SumatraPDF's window.
  - examples
    - `[ForwardSearch("c:\file.pdf","c:\folder\source.tex",298,0)]`
    - `[ForwardSearch("c:\folder\source.tex",298,0,0,1)]`

- Jump to named destination command
  - format: `[GotoNamedDest("<pdffilepath>","<destination name>")]`
  - example: `[GotoNamedDest("c:\file.pdf", "chapter.1")]`
  - note: the pdf file must be already opened

- Go to page
  - format: `[GotoPage("<pdffilepath>",<page number>)]`
  - example: `[GotoPage("c:\file.pdf", 37)]`
  - note: the pdf file must be already opened.

- Set view settings
  - format: `[SetView("<pdffilepath>","<view mode>",<zoom level>[,<scrollX>,<scrollY>])]`
  - arguments:
    - `view mode`:
      - "single page"
      - "facing"
      - "book view"
      - "continuous"
      - "continuous facing"
      - "continuous book view"
    - `zoom level` : either a zoom factor between 8 and 6400 (in percent) or one of -1 (Fit Page), -2 (Fit Width) or -3 (Fit Content)
    - `scrollX, scrollY` : PDF document (user) coordinates of the point to be visible in the top-left of the window
  - example: `[SetView("c:\file.pdf","continuous",-3)]`
  - note: the pdf file must already be opened

suggest change to this page