Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 29.990.312 Times

The_RTF_Cookbook 1.11

  Date Added: March 24, 2010  |  Visits: 636

The_RTF_Cookbook

Report Broken Link
Printer Friendly Version


Product Homepage
Download (77 downloads)

The_RTF_Cookbook is a RTF overview and quick reference. SYNOPSIS # Time-stamp: "2003-09-23 21:27:56 ADT" # This document is in Perl POD format, but you can read it # with just an ASCII text viewer, if you want. RTF is a nearly ubiquitous text formatting language devised by Microsoft. Microsofts Rich Text Format Specification is widely available, but its usable mainly just as a reference for the languages entire command set. This short document, however, is meant as a quick reference and overview. It is meant for people interested in writing programs that generate a minimal subset of RTF. NOTE : Ive mostly superceded this document with my book RTF Pocket Guide, which is much longer and more comprehensive -- see http://www.oreilly.com/catalog/rtfpg/ INTRODUCTION RTF code consists of plaintext, commands, escapes, and groups: Plaintext contains seven bit (US ASCII) characters except for , {, and }. Returns and linefeeds can be present but are ignored, and are harmless (as long as they are not in the middle of an RTF command). Space (ASCII 0x20) characters are significant -- five spaces means five spaces. (The only exception is a space that ends an RTF command; such a space is ignored.) Example of plaintext: "I like pie". An RTF command consists of a backslash, then some characters a-z, and then an optional positive or negative integer argument. The command is then terminated either by a space, return, or linefeed (all of which are ignored), or by some character (like brace or backslash, etc.) that couldnt possibly be a continuation of this command. A simple rule of thumb for emitting RTF is that every command should be immediately followed either by a space, return, or linefeed, (as in "foo bar"), or by another command (as in "foobar"). Examples of RTF commands: "page" (command "page" with no parameter), "f3" (command "f" with parameter 3), "li-320" (command "li" with parameter -320). An RTF escape consists of a backslash followed by something other than a letter. There are few of these in the language, and the basic ones to know now are the two-byte long escape sequences: {, }, (to convey a literal openbrace, closebrace, or backslash), and the only four-byte-long escape sequence, xx, where xx is two hexadecimal digits. This is used for expressing any byte value in a document. For example, xBB expresses character value BB (decimal 187), which for Latin-1/ANSI is close-angle-quote (which looks like a little ">>"). An RTF group consists of an openbrace "{", any amount of RTF code (possibly including other groups), and then a closebrace "}". Roughly speaking, you can treat an RTF group as the conceptual equivalent of an SGML element. Effectively, a group limits the scope of commands in that group. So if youre in a group and you turn on italics, then that can apply only as far as the end of the group -- regardless of whether you do this at the start of the group, as in {i I like pie}, or the middle, as in {I like i pie}. Note that you must emit just as many openbraces as closebraces -- otherwise your document is syntactally invalid, and RTF readers will not tolerate that. This is an example of a paragraph using plaintext, escapes, commands, and groups: {pardfs32b NOTESpar} {pardfs26 Recently I skimmed {i Structure and Interpretation of Computer Programs}, by Sussman and Abelson, and I think there should have been more pictures. line I like pictures. Is that so naefve? par} (ef makes an i-dieresis, in the Latin-1/ANSI character set.) Note that "foo[newline]bar" isnt the same as "foo bar", its the same as "foobar", because the newline is ignored. So if you mean "foo bar", and want to work in a newline, you should consider "foo[newline] bar", or "foo [newline]bar", or even things like "fo[newline]o bar". Note that newlines arent needed in your output file at all, and theres no reason to get your RTF code to be wrapped at 72 columns or anywhere else; but its very useful to be able to open a RTF file in a plaintext editor and see something other than a giant sea of unbroken text. So at the very least, I emit a newline before every paragraph. (Note that if you are ambitiously trying to wrap your RTF code by inserting newlines, consider that just about the only really harmful places to insert a newline are in the middle of a command or an escape -- because "pa[newline]ge" doesnt mean the same as "page", it means the same as "pa ge" (i.e., a pa command, and then two text characters "ge"); and "f[newline]8" is not good RTF. So I suggest making wrapping algorithms insert a newline only after a space character -- a guaranteed safe spot.).

Requirements: No special requirements
Platforms: Linux
Keyword: Ascii Bar Command Cookbook Group I Like Libraries Newline Programming Rtf Same As Space Thertfcookbook
Users rating: 0/10

License: Freeware Size: 57.34 KB
THE_RTF_COOKBOOK RELATED
Wallpaper Tools  -  Universe Crimson 1.1.1
Universe Crimson is a red theme with some hubble images as the wallpaper, but i like it. This theme is great, works with every thing, w00t a dark theme that works!. Universe Crimson KDE-Look.org Community Portal for KDE Themes Wallpapers Icons...
1.7 MB  
Networking  -  Facebook I Like Button 1.2
The plugin is a light implementation of the new Facebook - I Like Button social plugin. It implements both iframe and XFBML. Defaults to iframe for stability. Choose XFBML for true experience and performance.The Like button enables readers to make...
10 KB  
Education  -  1st Grade Reading - I Like Writing 1.3
The I Like books are fantastic stories to learn to read Approved by parents, teachers, and kids the world over. The only FULLY customizable children's book app of its kind! The "I Like" children's picture books are a magical...
13.7 MB  
Education  -  2nd Grade Reading - I Like Horses 1.4
If you kid loves horses, they will love this picture book Approved by parents, teachers, and kids the world over. The only FULLY customizable children's book app of its kind! The "I Like" children's picture books are a magical...
15.7 MB  
Education  -  3rd Grade Reading - I Like Grandma 1.3
The series of "I Like Books" are fantastic. We already downloaded over a dozen of them and this one is precious too Approved by parents, teachers, and kids the world over. The only FULLY customizable children's book app of its...
23.7 MB  
Books  -  Childrens Book - I Like Colors 1.5
A pure joy! What a lovely children's book Approved by parents, teachers, and kids the world over. The only FULLY customizable children's book app of its kind! The "I Like" children's picture books are a magical way to...
21.9 MB  
Social Networking  -  Events I Like 1.0
EVENTS I LIKE ajuda voce a gerenciar seus eventos do Facebook de forma simples e de acordo com seus interesses. Visualize os eventos mais relevantes: ? Eventos que voce criou ? Eventos que voce foi convidado ? Eventos criados...
12.8 MB  
File Cataloguers  -  Rizone File Checker 0.0.9.91
Now and then, just for some peace of mind, I like to do a System File Scan in Windows XP (SFC /SCANNOW). But this is an irritating command line typing way of checking your system files. So, I decided to make a SFC wrapper to make the task as...
676 KB  
Programming  -  niftilib 2.0.0 Alpha
Niftilib is a set of i/o libraries for reading and writing files in the nifti-1 data format. nifti-1 is a binary file format for storing medical image data, e.g. magnetic resonance image (MRI) and functional MRI (fMRI) brain images.
256 KB  
Shell Enhancements  -  WinOne Free Command Prompt for Windows 8.5
Are you looking for a better Command Prompt for your Windows operating system? a more powerful and comprehensive Command Line? Would you like a replacement for CMD.EXE? Maybe, you are looking for a command prompt whos batch file capabilities have...
7.62 MB  
NEW DOWNLOADS IN PROGRAMMING, LIBRARIES
Programming  -  FLEX-db Digital Asset Manager 3.0.9
FLEX-db - an enterprise Digital Asset Manager (DAM). It ingests and links metadata with files, creates thumbnails, and processes files using business rules. FLEX-db has a JSP client, Java app server for file input and output and an EJB metadata...
21.57 MB  
Programming  -  Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....
20.48 KB  
Programming  -  dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by freedesktop.org, it is used to describe information about an application such as the name and...
327.68 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  libyasl 0.2
Libyasl is a C++ class library to easily realize TCP/UDP/Multicast clientsand servers in IPv4 and IPv6 environments under GNU/Linux systems.
143.36 KB  
Libraries  -  wolfSSL 3.12.0
The wolfSSL embedded SSL/TLS library is a lightweight SSL library written in ANSI standard C and targeted for embedded and RTOS environments - primarily because of its small size, speed, and feature set. It is commonly used in standard operating...
2.73 MB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB