Pod::Simple::RTF(3pm)

πŸ’… Pod::Simple::RTF β€” the manual, but make it make sense

ok bestie, so this is the page for Pod::Simple::RTF (that's the Pod::Simple::RTF(3pm) situation, part of the Perl Programmers Reference Guide). come sit with me 🫢


✨ NAME ✨

Pod::Simple::RTF β€” it formats Pod as RTF. that's the whole gig. iconic, honestly.


πŸŽ€ SYNOPSIS πŸŽ€

  perl -MPod::Simple::RTF -e \
   "exit Pod::Simple::RTF->filter(shift)->any_errata_seen" \
   thingy.pod > thingy.rtf

like, copy-paste that and your thingy.pod comes out the other side as thingy.rtf. slay πŸ’…


🌸 DESCRIPTION 🌸

This class is a formatter that takes Pod and renders it as RTF. so basically it's giving "convert my docs into a format rich enough for other programs to open". it's good for viewing and printing in MSWord, WordPad/write.exe, TextEdit, etc. πŸ”₯

and the best part? this is a subclass of Pod::Simple and it inherits all its methods. so everything Pod::Simple can do, it can do too β€” no cap.


πŸ¦‹ FORMAT CONTROL ATTRIBUTES πŸ¦‹

okay so here's where you get to be the main character. you can set these attributes on the parser object before you call "parse_file" (or a similar method) on it. order matters, bestie β€” set first, then parse πŸ€“

  • $parser->head1_halfpoint_size( halfpoint_integer );
  • $parser->head2_halfpoint_size( halfpoint_integer );
  • $parser->head3_halfpoint_size( halfpoint_integer );
  • $parser->head4_halfpoint_size( halfpoint_integer );

These methods set the size (in half-points, like 52 for 26-point) that these heading levels will appear as. so head1, head2, head3, head4 β€” each one gets its own size dial. per level. obsessed.

  • $parser->codeblock_halfpoint_size( halfpoint_integer ); β€” this method sets the size (in half-points, like 21 for 10.5-point) that codeblocks ("verbatim sections") will appear as. your code deserves its own font size fr fr.
  • $parser->header_halfpoint_size( halfpoint_integer ); β€” this method sets the size (in half-points, like 15 for 7.5-point) that the header on each page will appear in. and the header is usually just "modulename p. pagenumber". cute little running header behavior ✨
  • $parser->normal_halfpoint_size( halfpoint_integer ); β€” this method sets the size (in half-points, like 26 for 13-point) that normal paragraphic text will appear in. the everyday vibe text, y'know?
  • $parser->no_proofing_exemptions( true_or_false ); β€” set this value to true if you don't want the formatter to try putting a hidden code on all Perl symbols (as best as it can notice them) that labels them as being not in English, and so not worth spellchecking. so like… true means "please stop tagging my Perl symbols as foreign, I'm begging" 😭
  • $parser->doc_lang( microsoft_decimal_language_code ) β€” this sets the language code to tag this document as being in. by default, it is currently the value of the environment variable "RTFDEFLANG", or if that's not set, then the value 1033 (for US English). πŸ—£οΈ

Setting this appropriately is useful if you want to use the RTF to spellcheck, and/or if you want it to hyphenate right. so yes, this actually matters, don't skip it.

Here are some notable values:

  1033  US English
  2057  UK English
  3081  Australia English
  4105  Canada English
  1034  Spain Spanish
  2058  Mexico Spanish
  1031  Germany German
  1036  France French
  3084  Canada French
  1035  Finnish
  1044  Norwegian (Bokmal)
  2068  Norwegian (Nynorsk)

If you are particularly interested in customizing this module's output even more, see the source and/or write to me. yes, "write to me" β€” that's a direct quote from the manpage and honestly? king behavior πŸ‘‘


πŸ‘€ SEE ALSO πŸ‘€

  • Pod::Simple
  • RTF::Writer
  • RTF::Cookbook
  • RTF::Document
  • RTF::Generator

go read those, iykyk πŸ’œ


🫢 SUPPORT 🫢

Questions or discussion about POD and Pod::Simple should be sent to the pod-people@perl.org mail list. and to subscribe? send an empty email to pod-people-subscribe@perl.org. that's it, empty email, you're in. simple as. πŸŽ€

This module is managed in an open GitHub repository, <https://github.com/perl-pod/pod-simple/>. feel free to fork and contribute, or to clone <https://github.com/perl-pod/pod-simple.git> and send patches! the repo is literally right there, go be part of history ✨

Patches against Pod::Simple are welcome. Please send bug reports to <bug-pod-simple@rt.cpan.org>. bugs go to the bug address, not the chat list β€” keep it organized bestie 🧚


Copyright (c) 2002 Sean M. Burke.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. πŸ’–

This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. like, it's free, it's hopeful, but it's not promising you anything β€” read that part twice, no cap.

πŸ‘‘ AUTHOR πŸ‘‘

Pod::Simple was created by Sean M. Burke <sburke@cpan.org>. But don't bother him, he's retired. (respect the retirement, bestie πŸ™ˆ)

Pod::Simple is maintained by:

  • Allison Randal "allison@perl.org"
  • Hans Dieter Pearcey "hdp@cpan.org"
  • David E. Wheeler "dwheeler@cpan.org"

that's the whole page, you ate it, periodt πŸ’…

⭐ oh and for the record β€” this was perl v5.42.3, dated 2026-11-03, and it's the Pod::Simple::RTF(3pm) page. mwah, go format something pretty πŸ“

πŸ“¦ where this page comes from