swirl
Guide to OmniMark 9   OmniMark home
docs home 
IndexConceptsTasksSyntaxLibrariesLegacy LibrariesErrors
 
Functions    
 

Rich Text Format (RTF) (OMRTF)

 
 

You can use the rtf markup parser function to parse an RTF document. Like an XML document, an RTF document consists of markup and data content. The rtf markup parser function maps the markup structures of RTF to OmniMark's markup rules according to the rules detailed below.

The following program illustrates the operation of the rtf markup parser function by implementing a crude RTF to XML converter:

  import "omrtf.xmd" unprefixed
  
  
  process
     do markup-parse rtf scan file #args[1]
        output "%c"
     done
  
  
  element #implied
     output "<%q"
     repeat over attributes as a
        output " " || key of attribute a || '="%v(a)"'
     again
     output ">%c</%q>%n"
  
  
  translate "<"
     output "&lt;"
  
  
  translate ">"
     output "&gt;"
  
  
  translate "&"
     output "&amp;"
          

How RTF structures are mapped to markup rules

The only markup rules rules fired by the rtf markup parser function are:

RTF commands are translated into markup events, as follows:

RTF commands considered destinations

The OMRTF library is based on version 1.7 of the RTF spec, according to which, the RTF command names that are destinations are the following:

     aftncn
     aftnsep
     aftnsepc
     annotation
     atnauthor
     atndate
     atnicn
     atnid
     atnparent
     atnref
     atntime
     atrfend
     atrfstart
     author
     background
     bkmkend
     bkmkstart
     buptim
     category
     colortbl
     comment
     company
     creatim
     datafield
     do
     doccomm
     docvar
     dptxbxtext
     falt
     fchars
     ffdeftext
     ffentrymcr
     ffexitmcr
     ffformat
     ffhelptext
     ffl
     ffname
     ffstattext
     field
     file
     filetbl
     fldinst
     fldrslt
     fldtype
     fname
     fontemb
     fontfile
     fonttbl
     footer
     footerf
     footerl
     footerr
     footnote
     formfield
     ftncn
     ftnsep
     ftnsepc
     g
     generator
     gridtbl
     header
     headerf
     headerl
     headerr
     htmltag
     info
     keycode
     keywords
     lchars
     levelnumbers
     lfolevel
     list
     listlevel
     listname
     listoverride
     listoverridetable
     listpicture
     listtable
     listtext
     manager
     mhtmltag
     nesttableprops
     nextfile
     nonesttables
     objalias
     objclass
     objdata
     object
     objname
     objsect
     objtime
     oldcprops
     oldpprops
     oldsprops
     oldtprops
     operator
     panose
     pgp
     pgptbl
     picprop
     pict
     pn
     pnseclvl
     pntext
     pntxta
     pntxtb
     printim
     private
     pwd
     pxe
     result
     revtbl
     revtim
     rsidtbl
     rtf
     rxe
     shp
     shpinst
     shppict
     stylesheet
     subject
     tc
     template
     title
     txe
     ud
     upr
     urtf
     userprops
     xe
            

Functions
 
 

Top [ INDEX ] [ CONCEPTS ] [ TASKS ] [ SYNTAX ] [ LIBRARIES ] [ LEGACY LIBRARIES ] [ ERRORS ]

OmniMark 9.1.0 Documentation Generated: September 2, 2010 at 1:54:44 pm
If you have any comments about this section of the documentation, please use this form.

Copyright © Stilo International plc, 1988-2010.