summaryrefslogtreecommitdiff
path: root/projects/rufl
diff options
context:
space:
mode:
authorDaniel Silverstone <dsilvers@digital-scurf.org>2012-07-01 13:18:47 +0100
committerDaniel Silverstone <dsilvers@digital-scurf.org>2012-07-01 13:18:47 +0100
commit5f5fa631013417dd4c9010e3b12084f3bd805895 (patch)
tree30956a49dffdb9382cb37dcec71c36a6feebacad /projects/rufl
downloadnetsurf-website-5f5fa631013417dd4c9010e3b12084f3bd805895.tar.gz
netsurf-website-5f5fa631013417dd4c9010e3b12084f3bd805895.tar.bz2
Transfer current state of netsurfweb as a fresh line of history
Diffstat (limited to 'projects/rufl')
-rw-r--r--projects/rufl/images/rufl_chars.pngbin0 -> 79165 bytes
-rw-r--r--projects/rufl/index.en74
2 files changed, 74 insertions, 0 deletions
diff --git a/projects/rufl/images/rufl_chars.png b/projects/rufl/images/rufl_chars.png
new file mode 100644
index 0000000..39eea80
--- /dev/null
+++ b/projects/rufl/images/rufl_chars.png
Binary files differ
diff --git a/projects/rufl/index.en b/projects/rufl/index.en
new file mode 100644
index 0000000..9f3bc46
--- /dev/null
+++ b/projects/rufl/index.en
@@ -0,0 +1,74 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd">
+<html>
+<head>
+<title>RUfl for RISC OS</title>
+<link rel="stylesheet" type="text/css" href="/projects/projects.css">
+<link rel="icon" type="image/png" href="/webimages/favicon.png">
+</head>
+<body>
+
+<div class="projects">
+<ul>
+<li><a href="/">NetSurf</a></li>
+<li><a href="/projects/hubbub/">Hubbub</a></li>
+<li><a href="/projects/libcss/">LibCSS</a></li>
+<li><a href="/projects/libdom/">LibDOM</a></li>
+<li><a href="/projects/libparserutils/">LibParserUtils</a></li>
+<li><a href="/projects/libwapcaplet/">LibWapcaplet</a></li>
+<li><a href="/projects/libsvgtiny/">Libsvgtiny</a></li>
+<li><a href="/projects/libnsfb/">LibNSFB</a></li>
+<li><a href="/projects/libnsbmp/">Libnsbmp</a></li>
+<li><a href="/projects/libnsgif/">Libnsgif</a></li>
+<li><a href="/projects/librosprite/">LibROSprite</a></li>
+<li><a href="/projects/iconv/">Iconv</a></li>
+<li><strong>RUfl</strong></li>
+<li><a href="/projects/ttf2f/">TTF2f</a></li>
+<li><a href="/projects/tinct/">Tinct</a></li>
+<li><a href="/projects/libpencil/">Libpencil</a></li>
+</ul>
+</div>
+
+<h1>RUfl for RISC OS</h1>
+
+<h2>What is RUfl?</h2>
+
+<p>RUfl is the RISC OS Unicode font library. It provides a high-level interface to rendering and measuring Unicode text. RUfl was developed to enable NetSurf to handle Unicode text on RISC OS. It is available for use in other applications.</p>
+
+<p class="screenshot"><img src="images/rufl_chars.png" alt="" title="Screenshot of rufl_chars"></p>
+
+<h2>Features</h2>
+
+<ul>
+<li>Uses native fonts and the Font Manager</li>
+<li>Takes advantage of Unicode fonts on RISC OS 5</li>
+<li>Substitutes missing characters with other fonts</li>
+<li>Handles all the complexities &ndash; just feed RUfl with UTF-8 text and it does the rest</li>
+<li>C and Python interfaces</li>
+<li>MIT licence</li>
+</ul>
+
+<h2>Details</h2>
+
+<p>RUfl simplifies the task of making best use of the underlying font manager and provides functionality that the font manager does not. Applications (such as NetSurf) just feed RUfl with UTF-8 encoded text and RUfl does the rest for them.</p>
+
+<p>If the underlying font manager is Unicode capable, then RUfl will plot the text using the selected font. If a particular glyph does not exist in the selected font, then it looks up a substitute font that does contain the glyph and uses that. If no fonts on the system contain the glyph, a Unicode codepoint is plotted in place of the glyph.</p>
+
+<p>When running on a non-Unicode font manager, RUfl checks whether the selected font contains the glyph, and if it does, which font encoding contains it. It then converts to an 8 bit character code and plots the text using the encoding found. This enables applications to make full use of fonts, such as Homerton and Trinity, that contain additional glyphs in other encodings. If the font did not contain a particular glyph, it looks for another font that does. If it finds one, it does the same encoding lookup and plots it accordingly. If no fonts on the system contain the glyph, a Unicode codepoint is plotted in place of the glyph.</p>
+
+<p>RUfl manages to do all this efficiently by maintaining cached lookup tables containing various mappings.</p>
+
+<h2>Source code</h2>
+
+<p>You can <a href="http://source.netsurf-browser.org/trunk/rufl/">browse the source code</a> via the online interface. Alternatively, you can check it out of SVN:</p>
+
+<p class="svncommand">$ svn co svn://svn.netsurf-browser.org/trunk/rufl</p>
+
+<p>RUfl is licensed under the <a href="http://opensource.org/licenses/mit-license.php">MIT Licence</a>.</p>
+
+<h2>Contact</h2>
+
+<p>Please report any problems with this library to the <a href="http://www.netsurf-browser.org/lists/netsurf-dev">developer mailing list</a>.</p>
+
+</body>
+</html> \ No newline at end of file