Skip to content

Instantly share code, notes, and snippets.

@gooderist
Last active May 12, 2020 17:44
Show Gist options
  • Save gooderist/6fe95487b066f47a2affb2026b3be64f to your computer and use it in GitHub Desktop.
Save gooderist/6fe95487b066f47a2affb2026b3be64f to your computer and use it in GitHub Desktop.
Pro6 RTFData Spec

(Unofficial) Pro6 RTFData Spec

Notes regarding the RTF format used in ProPresenter6. All slide text data (RTFData) is rich text formatted and base64 encoded. I had to figure this out so I could create tools to generate slides outside of ProPresenter. There are a few additional rtf codes in the Propresenter version of RTF. The following are notes taken from inspecting the Windows version of RTFData. Mac has a different set of RTF codes (that will work on Windows). It is my goal to find the minimal subset that will work on both platforms while minimizing the amount of boilerplate we have to generate.

References:

Header

Prolog

\rtf1 - standard rtf header code \prortf1 - propresenter specific(?) / Not generated on Mac? Seems optional. \ansi - standard \ansicpg1252 - code page 1252 (en) / JP 932 \uc1 - single byte unicode characters(*) \htmautsp - html auto spacing \deffN - font table entry to use as default

Font Table \fonttble

\fN - font entry \fcharset0 - Windows character set

Color Table \colortbl

\redN - [0 - 255] red value \greenN - [0 - 255] green value \blueN - [0 - 255] blue value

Other

\loch - uses 1 byte low characters \hich - uses 1 byte high characters \dbch - uses 2 byte(*) \pard - beginning of paragraph \slleading0 - PP specific(?) \plain - plain formatting \ltrpar - left to right paragraph \itap0 - paragraph nesting level 0 (main document)

Paragraph

\lang1033 - English language \fsN - 2x font pt size \outlN - outline size \strokewidthN - PP specific(?) \strokecN - PP specific(?) stroke color (table entry) \fN - font table entry \cfN - foreground color entry \ql - Left justification

\liN - left indent \saN - space after \sbN - space before \fiN - first line indent \qc - centered justification \par - end of paragraph

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment