{"route":"/en-US-v0.13.1/reference/layout/length/","title":"Length","description":"Documentation for the Length type.","part":null,"outline":[{"id":"summary","name":"Summary","children":[]},{"id":"example","name":"Example","children":[]},{"id":"fields","name":"Fields","children":[]},{"id":"definitions","name":"Definitions","children":[{"id":"definitions-pt","name":"Points","children":[]},{"id":"definitions-mm","name":"Millimeters","children":[]},{"id":"definitions-cm","name":"Centimeters","children":[]},{"id":"definitions-inches","name":"Inches","children":[]},{"id":"definitions-to-absolute","name":"To Absolute","children":[]}]}],"body":{"kind":"type","content":{"name":"length","title":"Length","keywords":[],"oneliner":"A size or distance, possibly expressed with contextual units.","details":"<p>A size or distance, possibly expressed with contextual units.</p>\n<p>Typst supports the following length units:</p>\n<ul>\n<li>Points: <code><span class=\"typ-num\">72pt</span></code></li>\n<li>Millimeters: <code><span class=\"typ-num\">254mm</span></code></li>\n<li>Centimeters: <code><span class=\"typ-num\">2.54cm</span></code></li>\n<li>Inches: <code><span class=\"typ-num\">1in</span></code></li>\n<li>Relative to font size: <code><span class=\"typ-num\">2.5em</span></code></li>\n</ul>\n<p>You can multiply lengths with and divide them by integers and floats.</p>\n<h2 id=\"example\">Example</h2>\n<div class=\"previewed-code\"><pre><code><span class=\"typ-func\">#</span><span class=\"typ-func\">rect</span><span class=\"typ-punct\">(</span>width<span class=\"typ-punct\">:</span> <span class=\"typ-num\">20pt</span><span class=\"typ-punct\">)</span>\n<span class=\"typ-func\">#</span><span class=\"typ-func\">rect</span><span class=\"typ-punct\">(</span>width<span class=\"typ-punct\">:</span> <span class=\"typ-num\">2em</span><span class=\"typ-punct\">)</span>\n<span class=\"typ-func\">#</span><span class=\"typ-func\">rect</span><span class=\"typ-punct\">(</span>width<span class=\"typ-punct\">:</span> <span class=\"typ-num\">1in</span><span class=\"typ-punct\">)</span>\n\n<span class=\"typ-punct\">#</span><span class=\"typ-punct\">(</span><span class=\"typ-num\">3em</span> <span class=\"typ-op\">+</span> <span class=\"typ-num\">5pt</span><span class=\"typ-punct\">)</span><span class=\"typ-punct\">.</span><span class=\"typ-pol\">em</span> <span class=\"typ-escape\">\\</span>\n<span class=\"typ-punct\">#</span><span class=\"typ-punct\">(</span><span class=\"typ-num\">20pt</span><span class=\"typ-punct\">)</span><span class=\"typ-punct\">.</span><span class=\"typ-pol\">em</span> <span class=\"typ-escape\">\\</span>\n<span class=\"typ-punct\">#</span><span class=\"typ-punct\">(</span><span class=\"typ-num\">40em</span> <span class=\"typ-op\">+</span> <span class=\"typ-num\">2pt</span><span class=\"typ-punct\">)</span><span class=\"typ-punct\">.</span><span class=\"typ-pol\">abs</span> <span class=\"typ-escape\">\\</span>\n<span class=\"typ-punct\">#</span><span class=\"typ-punct\">(</span><span class=\"typ-num\">5em</span><span class=\"typ-punct\">)</span><span class=\"typ-punct\">.</span><span class=\"typ-pol\">abs</span>\n</code></pre><div class=\"preview\"><img src=\"/en-US-v0.13.1/assets/829c0a1d2ef2db0201ec12311845e833.png\" alt=\"Preview\"></div></div>\n<h2 id=\"fields\">Fields</h2>\n<ul>\n<li><code>abs</code>: A length with just the absolute component of the current length\n(that is, excluding the <code>em</code> component).</li>\n<li><code>em</code>: The amount of <code>em</code> units in this length, as a <a href=\"/en-US-v0.13.1/reference/foundations/float/\" title=\"float\">float</a>.</li>\n</ul>","constructor":null,"scope":[{"path":["length"],"name":"pt","title":"Points","keywords":[],"oneliner":"Converts this length to points.","element":false,"contextual":false,"deprecation":null,"details":"<p>Converts this length to points.</p>\n<p>Fails with an error if this length has non-zero <code>em</code> units (such as\n<code>5em + 2pt</code> instead of just <code>2pt</code>). Use the <code>abs</code> field (such as in\n<code>(5em + 2pt).abs.pt()</code>) to ignore the <code>em</code> component of the length (thus\nconverting only its absolute component).</p>","example":null,"self":true,"params":[],"returns":["float"],"scope":[]},{"path":["length"],"name":"mm","title":"Millimeters","keywords":[],"oneliner":"Converts this length to millimeters.","element":false,"contextual":false,"deprecation":null,"details":"<p>Converts this length to millimeters.</p>\n<p>Fails with an error if this length has non-zero <code>em</code> units. See the\n<a href=\"/en-US-v0.13.1/reference/layout/length/#definitions-pt\"><code>pt</code></a> method for more details.</p>","example":null,"self":true,"params":[],"returns":["float"],"scope":[]},{"path":["length"],"name":"cm","title":"Centimeters","keywords":[],"oneliner":"Converts this length to centimeters.","element":false,"contextual":false,"deprecation":null,"details":"<p>Converts this length to centimeters.</p>\n<p>Fails with an error if this length has non-zero <code>em</code> units. See the\n<a href=\"/en-US-v0.13.1/reference/layout/length/#definitions-pt\"><code>pt</code></a> method for more details.</p>","example":null,"self":true,"params":[],"returns":["float"],"scope":[]},{"path":["length"],"name":"inches","title":"Inches","keywords":[],"oneliner":"Converts this length to inches.","element":false,"contextual":false,"deprecation":null,"details":"<p>Converts this length to inches.</p>\n<p>Fails with an error if this length has non-zero <code>em</code> units. See the\n<a href=\"/en-US-v0.13.1/reference/layout/length/#definitions-pt\"><code>pt</code></a> method for more details.</p>","example":null,"self":true,"params":[],"returns":["float"],"scope":[]},{"path":["length"],"name":"to-absolute","title":"To Absolute","keywords":[],"oneliner":"Resolve this length to an absolute length.","element":false,"contextual":false,"deprecation":null,"details":"<p>Resolve this length to an absolute length.</p>","example":"<div class=\"previewed-code\"><pre><code><span class=\"typ-key\">#</span><span class=\"typ-key\">set</span> <span class=\"typ-func\">text</span><span class=\"typ-punct\">(</span>size<span class=\"typ-punct\">:</span> <span class=\"typ-num\">12pt</span><span class=\"typ-punct\">)</span>\n<span class=\"typ-key\">#</span><span class=\"typ-key\">context</span> <span class=\"typ-punct\">[</span>\n  <span class=\"typ-punct\">#</span><span class=\"typ-punct\">(</span><span class=\"typ-num\">6pt</span><span class=\"typ-punct\">)</span><span class=\"typ-punct\">.</span><span class=\"typ-func\">to-absolute</span><span class=\"typ-punct\">(</span><span class=\"typ-punct\">)</span> <span class=\"typ-escape\">\\</span>\n  <span class=\"typ-punct\">#</span><span class=\"typ-punct\">(</span><span class=\"typ-num\">6pt</span> <span class=\"typ-op\">+</span> <span class=\"typ-num\">10em</span><span class=\"typ-punct\">)</span><span class=\"typ-punct\">.</span><span class=\"typ-func\">to-absolute</span><span class=\"typ-punct\">(</span><span class=\"typ-punct\">)</span> <span class=\"typ-escape\">\\</span>\n  <span class=\"typ-punct\">#</span><span class=\"typ-punct\">(</span><span class=\"typ-num\">10em</span><span class=\"typ-punct\">)</span><span class=\"typ-punct\">.</span><span class=\"typ-func\">to-absolute</span><span class=\"typ-punct\">(</span><span class=\"typ-punct\">)</span>\n<span class=\"typ-punct\">]</span>\n\n<span class=\"typ-key\">#</span><span class=\"typ-key\">set</span> <span class=\"typ-func\">text</span><span class=\"typ-punct\">(</span>size<span class=\"typ-punct\">:</span> <span class=\"typ-num\">6pt</span><span class=\"typ-punct\">)</span>\n<span class=\"typ-key\">#</span><span class=\"typ-key\">context</span> <span class=\"typ-punct\">[</span>\n  <span class=\"typ-punct\">#</span><span class=\"typ-punct\">(</span><span class=\"typ-num\">6pt</span><span class=\"typ-punct\">)</span><span class=\"typ-punct\">.</span><span class=\"typ-func\">to-absolute</span><span class=\"typ-punct\">(</span><span class=\"typ-punct\">)</span> <span class=\"typ-escape\">\\</span>\n  <span class=\"typ-punct\">#</span><span class=\"typ-punct\">(</span><span class=\"typ-num\">6pt</span> <span class=\"typ-op\">+</span> <span class=\"typ-num\">10em</span><span class=\"typ-punct\">)</span><span class=\"typ-punct\">.</span><span class=\"typ-func\">to-absolute</span><span class=\"typ-punct\">(</span><span class=\"typ-punct\">)</span> <span class=\"typ-escape\">\\</span>\n  <span class=\"typ-punct\">#</span><span class=\"typ-punct\">(</span><span class=\"typ-num\">10em</span><span class=\"typ-punct\">)</span><span class=\"typ-punct\">.</span><span class=\"typ-func\">to-absolute</span><span class=\"typ-punct\">(</span><span class=\"typ-punct\">)</span>\n<span class=\"typ-punct\">]</span>\n</code></pre><div class=\"preview\"><img src=\"/en-US-v0.13.1/assets/3bc7f89b14d9cfece24bb79c946032be.png\" alt=\"Preview\"></div></div>","self":true,"params":[],"returns":["length"],"scope":[]}]}}}