517 lines
26 KiB
HTML
517 lines
26 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||
"http://www.w3.org/TR/html4/strict.dtd">
|
||
<html lang="en">
|
||
<head>
|
||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||
<title>Raphaël Reference</title>
|
||
<meta name="author" content="Dmitry Baranovskiy">
|
||
<meta name="description" content="Vector Graphics JavaScript™ Library">
|
||
<link rel="stylesheet" href="raphael.css" type="text/css" charset="utf-8" media="screen,projection">
|
||
<link rel="stylesheet" type="text/css" media="print" href="/dmitry-print.css">
|
||
<link rel="shortcut icon" href="/favicon16.png" type="image/x-icon">
|
||
<link rel="apple-touch-icon" href="/favicon.png">
|
||
<script src="../jquery.js" type="text/javascript" charset="utf-8"></script>
|
||
<script src="../dmitry.js" type="text/javascript" charset="utf-8"></script>
|
||
</head>
|
||
<body class="raphael" id="raphael.dmitry.baranovskiy.com">
|
||
<div id="header">
|
||
<a href="http://twitter.com/statuses/user_timeline/17180567.atom" id="rss" name="rss">rss</a>
|
||
<h1>
|
||
Raphaël—JavaScript Library
|
||
</h1>
|
||
</div>
|
||
<div id="content">
|
||
<div>
|
||
<div>
|
||
<div id="column-1">
|
||
<h2>Main Function</h2>
|
||
<h3 id="Raphael">
|
||
Raphael
|
||
</h3>
|
||
<p>
|
||
Function that creates canvas for future drawing.
|
||
</p>
|
||
<h4>Parameters</h4>
|
||
<ol>
|
||
<li>container <em>HTMLElement</em> or <em>string</em></li>
|
||
<li>width <em>number</em></li>
|
||
<li>height <em>number</em></li>
|
||
</ol>
|
||
<p>or</p>
|
||
<ol>
|
||
<li>x <em>number</em></li>
|
||
<li>y <em>number</em></li>
|
||
<li>width <em>number</em></li>
|
||
<li>height <em>number</em></li>
|
||
</ol>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>
|
||
// Creates canvas 320 × 200 at 10, 50</code>
|
||
<code>var paper = Raphael(10, 50, 320, 200);</code>
|
||
<code>var paper = Raphael(document.getElementById("notepad"), 320, 200);</code>
|
||
<code>var paper = Raphael("notepad", 320, 200);</code></pre>
|
||
<h2 id="Element">
|
||
Element’s generic methods
|
||
</h2>
|
||
<p>
|
||
Each object created on the canvas share the same generic methods:
|
||
</p>
|
||
<h3 id="node">
|
||
node
|
||
</h3>
|
||
<p>
|
||
Gives you reference to DOM object, so you can assign event handlers or just randomly mess around.
|
||
</p>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.circle(10, 10, 10);</code>
|
||
<code>c.node.onclick = function () { c.attr("fill", "red"); };</code></pre>
|
||
<h3 id="rotate">
|
||
rotate
|
||
</h3>
|
||
<p>
|
||
Rotates element by given degree around its center.
|
||
</p>
|
||
<h4>Parameters</h4>
|
||
<ol>
|
||
<li>degree <em>number</em> Degree of rotation (0 – 360°)</li>
|
||
<li>isAbsolute <em>boolean</em> [optional] Will rotation be relative or absolute</li>
|
||
</ol>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.circle(10, 10, 10);</code>
|
||
<code>c.rotate(45);</code></pre>
|
||
<h3 id="translate">
|
||
translate
|
||
</h3>
|
||
<p>
|
||
Moves element around the canvas by given dimensions.
|
||
</p>
|
||
<h4>Parameters</h4>
|
||
<ol>
|
||
<li>dx <em>number</em> Pixels of translation by X</li>
|
||
<li>dy <em>number</em> Pixels of translation by Y</li>
|
||
</ol>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.circle(10, 10, 10);</code>
|
||
<code>c.translate(10, 10);</code></pre>
|
||
<h3 id="scale">
|
||
scale
|
||
</h3>
|
||
<p>
|
||
Scales element by given amount of times.
|
||
</p>
|
||
<h4>Parameters</h4>
|
||
<ol>
|
||
<li>Xtimes <em>number</em></li>
|
||
<li>Ytimes <em>number</em></li>
|
||
</ol>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.circle(10, 10, 10);</code>
|
||
<code>c.scale(1.5, 1.5);</code></pre>
|
||
<h3 id="attr">
|
||
attr
|
||
</h3>
|
||
<p>
|
||
Sets attributes of elements.
|
||
</p>
|
||
<h4>Parameters</h4>
|
||
<ol>
|
||
<li>params <em>object</em></li>
|
||
</ol>
|
||
<p>or</p>
|
||
<ol>
|
||
<li>attributeName <em>string</em></li>
|
||
<li>value <em>string</em></li>
|
||
</ol>
|
||
<h4>Possible parameters</h4>
|
||
<ul>
|
||
<li>cx <em>number</em></li>
|
||
<li>cy <em>number</em></li>
|
||
<li>dasharray <em>string</em> [“-”, “.”, “-.”, “-..”, “. ”, “- ”, “--”, “- .”, “--.”, “--..”]</li>
|
||
<li>fill <em>colour</em></li>
|
||
<li>fill-opacity <em>number</em></li>
|
||
<li>font <em>string</em></li>
|
||
<li>font-family <em>string</em></li>
|
||
<li>font-size <em>number</em></li>
|
||
<li>font-weight <em>string</em></li>
|
||
<li>gradient <em>object</em></li>
|
||
<li>height <em>number</em></li>
|
||
<li>opacity <em>number</em></li>
|
||
<li>path <em>pathString</em></li>
|
||
<li>r <em>number</em></li>
|
||
<li>rotation <em>number</em></li>
|
||
<li>rx <em>number</em></li>
|
||
<li>ry <em>number</em></li>
|
||
<li>scale <em>CSV</em></li>
|
||
<li>stroke <em>colour</em></li>
|
||
<li>stroke-linecap <em>string</em> [“butt”, “square”, “round”, “miter”]</li>
|
||
<li>stroke-linejoin <em>string</em> [“butt”, “square”, “round”, “miter”]</li>
|
||
<li>stroke-miterlimit <em>number</em></li>
|
||
<li>stroke-opacity <em>number</em></li>
|
||
<li>stroke-width <em>number</em></li>
|
||
<li>translation <em>CSV</em></li>
|
||
<li>width <em>number</em></li>
|
||
<li>x <em>number</em></li>
|
||
<li>y <em>number</em></li>
|
||
</ul>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.circle(10, 10, 10);</code>
|
||
<code>c.attr("fill", "black");</code>
|
||
<code>c.attr({fill: "#000", stroke: "#f00", opacity: 0.5});</code></pre>
|
||
<h3 id="animate">
|
||
animate
|
||
</h3>
|
||
<p>
|
||
Linearly changes attribute from current to specified in given amount of milliseconds.
|
||
</p>
|
||
<h4>Parameters</h4>
|
||
<ol>
|
||
<li>newAttrs <em>object</em></li>
|
||
<li>ms <em>number</em></li>
|
||
<li>callback <em>function</em> [optional]</li>
|
||
</ol>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.circle(10, 10, 10);</code>
|
||
<code>c.animate({cx: 20, r: 20}, 2000);</code></pre>
|
||
<h3 id="getBBox">
|
||
getBBox
|
||
</h3>
|
||
<p>
|
||
Returns dimensions of given element.
|
||
</p>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.circle(10, 10, 10);</code>
|
||
<code>var width = c.getBBox().width;</code></pre>
|
||
<h3 id="toFront">
|
||
toFront
|
||
</h3>
|
||
<p>
|
||
Moves element to front in hierarchy.
|
||
</p>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.circle(10, 10, 10);</code>
|
||
<code>c.toFront();</code></pre>
|
||
<h3 id="toBack">
|
||
toBack
|
||
</h3>
|
||
<p>
|
||
Moves element to back in hierarchy.
|
||
</p>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.circle(10, 10, 10);</code>
|
||
<code>c.toBack();</code></pre>
|
||
<h2>Graphic Primitives</h2>
|
||
<h3 id="circle">
|
||
circle
|
||
</h3>
|
||
<p>
|
||
Creates circle.
|
||
</p>
|
||
<h4>Parameters</h4>
|
||
<ol>
|
||
<li>x <em>number</em> X coordinate of the centre</li>
|
||
<li>y <em>number</em> Y coordinate of the centre</li>
|
||
<li>r <em>number</em> radius</li>
|
||
</ol>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.circle(10, 10, 10);</code></pre>
|
||
<h3 id="rect">
|
||
rect
|
||
</h3>
|
||
<p>
|
||
Creates rectangle.
|
||
</p>
|
||
<h4>Parameters</h4>
|
||
<ol>
|
||
<li>x <em>number</em> X coordinate of top left corner</li>
|
||
<li>y <em>number</em> Y coordinate of top left corner</li>
|
||
<li>width <em>number</em></li>
|
||
<li>height <em>number</em></li>
|
||
<li>r <em>number</em> [optional] radius for rounded corners, default is 0</li>
|
||
</ol>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>// regular rectangle</code>
|
||
<code>var c = paper.rect(10, 10, 10, 10);</code>
|
||
<code>// rounded rectangle</code>
|
||
<code>var c = paper.rect(10, 10, 100, 50, 10);</code></pre>
|
||
<h3 id="ellipse">
|
||
ellipse
|
||
</h3>
|
||
<p>
|
||
Creates an ellipse.
|
||
</p>
|
||
<h4>Parameters</h4>
|
||
<ol>
|
||
<li>x <em>number</em> X coordinate of the centre</li>
|
||
<li>y <em>number</em> X coordinate of the centre</li>
|
||
<li>rx <em>number</em> Horisontal radius</li>
|
||
<li>ry <em>number</em> Vertical radius</li>
|
||
</ol>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.ellipse(100, 100, 30, 40);</code></pre>
|
||
<h3 id="image">
|
||
image
|
||
</h3>
|
||
<p>
|
||
Embeds an image in SVG/VML area.
|
||
</p>
|
||
<h4>Parameters</h4>
|
||
<ol>
|
||
<li>src <em>string</em></li>
|
||
<li>x <em>number</em></li>
|
||
<li>y <em>number</em></li>
|
||
<li>width <em>number</em></li>
|
||
<li>height <em>number</em></li>
|
||
</ol>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.image("apple.png", 10, 10, 100, 100);</code></pre>
|
||
<h3 id="path">
|
||
path
|
||
</h3>
|
||
<p>
|
||
Initialise path drawing. In general case this function returns empty path object. To draw path use built in methods like <code>lineTo</code> and <code>curveTo</code>.
|
||
</p>
|
||
<h4>Parameters</h4>
|
||
<ol>
|
||
<li>params <em>object</em> Similar to object for <code><a href="#attr">attr</a></code> method</li>
|
||
<li>pathString <em>string</em> [optional] path in SVG path string format. See SVG documentation.</li>
|
||
</ol>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.path({stroke: "#036"}).moveTo(10, 10).lineTo(50, 50);</code></pre>
|
||
<h2>Path Methods</h2>
|
||
<h3 id="absolutely">
|
||
absolutely
|
||
</h3>
|
||
<p>
|
||
Sets trigger to count all following units as absolute ones, unless said otherwise. [<em>on by default</em>]
|
||
</p>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.path({stroke: "#036"}).absolutely()
|
||
.moveTo(10, 10).lineTo(50, 50);</code></pre>
|
||
<h3 id="relatively">
|
||
relatively
|
||
</h3>
|
||
<p>
|
||
Sets trigger to count all following units as relative ones, unless said otherwise.
|
||
</p>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.path({stroke: "#036"}).relatively()
|
||
.moveTo(10, 10).lineTo(50, 50);</code></pre>
|
||
<h3 id="moveTo">
|
||
moveTo
|
||
</h3>
|
||
<p>
|
||
Moves drawing point to given coordinates.
|
||
</p>
|
||
<h4>Parameters</h4>
|
||
<ol>
|
||
<li>x <em>number</em></li>
|
||
<li>y <em>number</em></li>
|
||
</ol>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.path({stroke: "#036"}).moveTo(10, 10).lineTo(50, 50);</code></pre>
|
||
<h3 id="lineTo">
|
||
lineTo
|
||
</h3>
|
||
<p>
|
||
Draws straight line to given coordinates.
|
||
</p>
|
||
<h4>Parameters</h4>
|
||
<ol>
|
||
<li>x <em>number</em></li>
|
||
<li>y <em>number</em></li>
|
||
</ol>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.path({stroke: "#036"}).moveTo(10, 10).lineTo(50, 50);</code></pre>
|
||
<h3 id="cplineTo">
|
||
cplineTo
|
||
</h3>
|
||
<p>
|
||
Draws curved line to given coordinates. Line will have horizontal anchors on start and on finish.
|
||
</p>
|
||
<h4>Parameters</h4>
|
||
<ol>
|
||
<li>x <em>number</em></li>
|
||
<li>y <em>number</em></li>
|
||
<li>width <em>number</em></li>
|
||
</ol>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.path({stroke: "#036"}).moveTo(10, 10).cplineTo(50, 50);</code></pre>
|
||
<h3 id="curveTo">
|
||
curveTo
|
||
</h3>
|
||
<p>
|
||
Draws bicubic curve to given coordinates.
|
||
</p>
|
||
<h4>Parameters</h4>
|
||
<ol>
|
||
<li>x1 <em>number</em></li>
|
||
<li>y1 <em>number</em></li>
|
||
<li>x2 <em>number</em></li>
|
||
<li>y2 <em>number</em></li>
|
||
<li>x3 <em>number</em></li>
|
||
<li>y3 <em>number</em></li>
|
||
</ol>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.path({stroke: "#036"}).moveTo(10, 10).curveTo(10, 15, 45, 45, 50, 50);</code></pre>
|
||
<h3 id="qcurveTo">
|
||
qcurveTo
|
||
</h3>
|
||
<p>
|
||
Draws quadratic curve to given coordinates.
|
||
</p>
|
||
<h4>Parameters</h4>
|
||
<ol>
|
||
<li>x1 <em>number</em></li>
|
||
<li>y1 <em>number</em></li>
|
||
<li>x2 <em>number</em></li>
|
||
<li>y2 <em>number</em></li>
|
||
</ol>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.path({stroke: "#036"}).moveTo(10, 10).curveTo(10, 15, 45, 45, 50, 50);</code></pre>
|
||
<h3 id="addRoundedCorner">
|
||
addRoundedCorner
|
||
</h3>
|
||
<p>
|
||
Draws quarter of circle form current point.
|
||
</p>
|
||
<h4>Parameters</h4>
|
||
<ol>
|
||
<li>r <em>number</em></li>
|
||
<li>dir <em>string</em> two letters direction</li>
|
||
</ol>
|
||
<h4>Possible dir values</h4>
|
||
<dl>
|
||
<dt>lu</dt>
|
||
<dd>left up</dd>
|
||
<dt>ld</dt>
|
||
<dd>left down</dd>
|
||
<dt>ru</dt>
|
||
<dd>right up</dd>
|
||
<dt>rd</dt>
|
||
<dd>right down</dd>
|
||
<dt>ur</dt>
|
||
<dd>up right</dd>
|
||
<dt>ul</dt>
|
||
<dd>up left</dd>
|
||
<dt>dr</dt>
|
||
<dd>down right</dd>
|
||
<dt>dl</dt>
|
||
<dd>down left</dd>
|
||
</dl>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.path({stroke: "#036"}).moveTo(10, 10).addRoundedCorner(10, "rd");</code></pre>
|
||
<h3 id="andClose">
|
||
andClose
|
||
</h3>
|
||
<p>
|
||
Closes the path.
|
||
</p>
|
||
<h4>Usage</h4>
|
||
<pre class="javascript code"><code>var c = paper.path({stroke: "#036"}).moveTo(10, 10).andClose();</code></pre>
|
||
</div>
|
||
<div id="column-2">
|
||
<h2>
|
||
<a href="index.html">Home</a>
|
||
</h2>
|
||
<h2>
|
||
Contents
|
||
</h2>
|
||
<ul id="contents">
|
||
<li>
|
||
<a href="reference.html#Raphael"><code>Raphael</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#node"><code>node</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#rotate"><code>rotate</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#translate"><code>translate</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#scale"><code>scale</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#attr"><code>attr</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#attr"><code>animate</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#getBBox"><code>getBBox</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#toFront"><code>toFront</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#toBack"><code>toBack</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#circle"><code>circle</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#rect"><code>rect</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#ellipse"><code>ellipse</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#image"><code>image</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#path"><code>path</code></a>
|
||
<ul>
|
||
<li>
|
||
<a href="reference.html#absolutely"><code>absolutely</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#relatively"><code>relatively</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#moveTo"><code>moveTo</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#lineTo"><code>lineTo</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#cplineTo"><code>cplineTo</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#curveTo"><code>curveTo</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#qcurveTo"><code>qcurveTo</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#addRoundedCorner"><code>addRoundedCorner</code></a>
|
||
</li>
|
||
<li>
|
||
<a href="reference.html#andClose"><code>andClose</code></a>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
<div id="footer">
|
||
<h3 id="copyright">
|
||
<a href="http://creativecommons.org/licenses/by-sa/3.0/" title="Creative Commons Attribution-ShareAlike 3.0 Unported" rel="license">Some Rights Reserved</a> by <a href="http://dmitry.baranovskiy.com/">Dmitry Baranovskiy</a>
|
||
</h3>
|
||
<h3 id="font">
|
||
A font by <a href="http://www.exljbris.nl">Jos Buivenga</a> | Logo by <a href="http://wasabicube.com/">Wasabicube</a>
|
||
</h3>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<script type="text/javascript">
|
||
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
|
||
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
|
||
</script>
|
||
<script type="text/javascript">
|
||
var pageTracker = _gat._getTracker("UA-616618-3");
|
||
pageTracker._trackPageview();
|
||
</script>
|
||
</body>
|
||
</html>
|