191 lines
5.8 KiB
HTML
Raw Normal View History

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>RoboFab Objects</title>
<link href="../default.css" type="text/css" rel="stylesheet" />
</head>
<body>
<div id="modellogo">
<img src="../img/drawmodel_header.jpg" width="595" height="112" />
</div>
<div class="leftcontent">
<h2 class="crb-seealso">
RoboFab
</h2>
<p class="menu">
<a href="../index.html">
Home
</a>
<br />
<a href="../download/license.html">
Download v1.1.1
</a>
<br />
<a href="../intro.html">
Intro
</a>
<br />
<a href="../install.html">
Install Notes
</a>
<br />
<a href="../history.html">
History
</a>
<br />
<a href="../executive.html">
Summary
</a>
</p>
<p class="menu">
<a href="../howto/index.html">
How to's
</a>
<br />
<span class="selected">
Fab Objects
</span>
<br />
<a href="model.html">
Fab Map
</a>
<br />
<a href="../tools/index.html">
Fab Tools
</a>
<br />
<a href="../ufo/index.html">
UFO Overview
</a>
<br />
<a href="../limitations.html">
Fab Limitations
</a>
</p>
<p class="menu">
<a href="../links/index.html">
Links
</a>
<br />
<a href="../glossary/index.html">
Glossary
</a>
<br />
<a href="../credits.html">
Credits
</a>
</p>
<br />
<br />
<p class="crb-uplink"><a href="../index.html">Back to RoboFab Reference</a></p>
<br />
<br />
<p class="menu">
<a href="anchor.html">RAnchor</a><br />
<a href="bpoint.html">bPoint</a><br />
<a href="component.html">RComponent</a><br />
<a href="contour.html">RContour</a><br />
<a href="font.html">RFont</a><br />
<a href="glyph.html">RGlyph</a><br />
<a href="info.html">RInfo</a><br />
<a href="kerning.html">RKerning</a><br />
<a href="lib.html">RLib</a><br />
<a href="model.html">Object model</a><br />
<a href="pen.html">Pen objects</a><br />
<a href="point.html">RPoint</a><br />
<a href="segment.html">RSegment</a><br />
</p>
</div>
<div class="footer">
<a href="../feedback.html">
Feedback
</a>
<br />
<a href="../map.html">
Sitemap
</a>
<br />
Please also refer to the
<a href="../download/license.html">
Legal
</a>
<br />
Copyright 2003-2005 RoboFab
<br />
version 1.1.1
</div>
<div class="content">
<h1>RoboFab's Unified Font Objects Overview</h1>
<p>
The most detailed information about RoboFab objects is available in <strong>robofabDocs</strong> in the RoboFab distribution. This overview here focusses on a couple of the more important objects and offers examples on how to use them.
</p>
<h3>Model</h3>
<p>Here is a <a href="model.html">handy map</a> of the RoboFab objects.</p><br />
<a href="model.html"><img src="../img/logo.gif" alt="" border="0" width="102" height="88" /></a>
<h3>RoboFab Unified Font Objects</h3>
<p>
<ul class="crb-locallink">
<li><a href="anchor.html">RAnchor</a>: a connection point for Components
</li><li><a href="bpoint.html">bPoint</a>: a point on a Contour which behaves like a RoboFog point
</li><li><a href="component.html">RComponent</a>: belongs to a Glyph, refers to other Glyphs
</li><li><a href="contour.html">RContour</a>: belongs to a Glyph, contains Segments
</li><li><a href="font.html">RFont</a>: contains Glyphs, names, kerning, data
</li><li><a href="generic.html"></a>:
</li><li><a href="glyph.html">RGlyph</a>: belongs to a Font, contains contours, components etc.
</li><li><a href="info.html">RInfo</a>: part of a Font, contains all names, dimensions
</li><li><a href="kerning.html">RKerning</a>: part of a Font, contains all kerning data
</li><li><a href="lib.html">RLib</a>: part of a Font, contains all arbitrary data
</li><li><a href="model.html">Object model</a>: a map of the structure.
</li><li><a href="pen.html">Pen objects</a>: about Pen objects
</li><li><a href="point.html">RPoint</a>: a point on a Contour
</li><li><a href="segment.html">RSegment</a>: a part of a Contour, a series of severall off and one oncurve Points
</li></ul>
</p>
<h2>Scope</h2>
<h3>Naming conventions in RoboFab</h3>
<p>
Attributes and method names follow a couple of consistent rules which make it easier to remember what they're called.
<ul>
<li>Class names start with a capital: <strong>R</strong>Glyph, <strong>B</strong>asePen etc.</li>
<li>method and attribute names start with lowercase: glyph.<strong>c</strong>enter(), glyph.<strong>w</strong>idth</li>
<li>private attributes and methods start with underscore. point.<strong>_</strong>index. Note: private methods and attributes are needed to make the objects work, but they're not intended for users to mess with, that's why they're called private. The description of the objects in this manual then do not list them.</li>
<li>all names follow camel<strong>C</strong>ase<strong>N</strong>aming as much as possible. So glyph name becomes glyph<strong>N</strong>ame</li>
</ul>
</p>
<h3>Availability of methods, attributes</h3>
<p>
Unless noted otherwise, the examples, methods and attributes should work in all implementations of RoboFab, so within FontLab as well as NoneLab. These reference pages are written by an experienced RoboFab user, not a robot. All the objects have more attributes and methods than listed here. But these are the most important ones to get started with. For a full list refer to the robofabDocs in the RoboFab distribution.
</p>
<h3>Perhaps not documented yet</h3>
<p>
As noted earlier, this documentation is written by a person, not a machine. So it is possible attributes, objects, methods are missing. Drop us a line if you're missing something.
</p>
</div>
</body>
</html>