thorvg/docs/html/classtvg_1_1Picture.html
2021-05-25 14:21:09 +09:00

531 lines
35 KiB
HTML

<!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/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>ThorVG: Picture</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="docs_logo.svg"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">ThorVG
&#160;<span id="projectnumber">v0.1</span>
</div>
<div id="projectbrief">ThorVG is a platform-independent portable library for drawing vector-based scene and animation. It&#39;s an open-source software that is freely used by a variety of software platforms and applications. ThorVG provides neat and easy APIs, its library has no dependencies and keeps cheap and super compact size. It serves as the vector graphics engine for Tizen OS that powers many products.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classtvg_1_1Picture.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="classtvg_1_1Picture-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Picture<span class="mlabels"><span class="mlabel">final</span></span><div class="ingroups"><a class="el" href="group__ThorVG.html">ThorVG</a></div></div> </div>
</div><!--header-->
<div class="contents">
<p>A class representing an image read in one of the supported formats: raw, svg, png and etc. Besides the methods inherited from the <a class="el" href="classtvg_1_1Paint.html" title="An abstract class for managing graphical elements. ">Paint</a>, it provides methods to load &amp; draw images on the canvas.
<a href="classtvg_1_1Picture.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for Picture:</div>
<div class="dyncontent">
<div class="center"><img src="classtvg_1_1Picture__inherit__graph.png" border="0" usemap="#Picture_inherit__map" alt="Inheritance graph"/></div>
<map name="Picture_inherit__map" id="Picture_inherit__map">
<area shape="rect" id="node2" href="classtvg_1_1Paint.html" title="An abstract class for managing graphical elements. " alt="" coords="11,5,63,32"/>
</map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:aaf06be7d0b572c5ce35315cbddd7d318"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtvg_1_1Picture.html#aaf06be7d0b572c5ce35315cbddd7d318">load</a> (const std::string &amp;path) noexcept</td></tr>
<tr class="memdesc:aaf06be7d0b572c5ce35315cbddd7d318"><td class="mdescLeft">&#160;</td><td class="mdescRight">Loads a picture data directly from a file. <a href="#aaf06be7d0b572c5ce35315cbddd7d318">More...</a><br /></td></tr>
<tr class="separator:aaf06be7d0b572c5ce35315cbddd7d318"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad33102ac9c2c60e52e4a61300312ea80"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtvg_1_1Picture.html#ad33102ac9c2c60e52e4a61300312ea80">load</a> (const char *<a class="el" href="classtvg_1_1Picture.html#afb53c7c5a55bab703a98808ecb3319eb">data</a>, uint32_t <a class="el" href="classtvg_1_1Picture.html#a065e47b46c791ee4d93ed3252d581a40">size</a>) noexcept</td></tr>
<tr class="memdesc:ad33102ac9c2c60e52e4a61300312ea80"><td class="mdescLeft">&#160;</td><td class="mdescRight">Loads a picture data from a memory block of a given size. <a href="#ad33102ac9c2c60e52e4a61300312ea80">More...</a><br /></td></tr>
<tr class="separator:ad33102ac9c2c60e52e4a61300312ea80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a065e47b46c791ee4d93ed3252d581a40"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtvg_1_1Picture.html#a065e47b46c791ee4d93ed3252d581a40">size</a> (float w, float h) noexcept</td></tr>
<tr class="memdesc:a065e47b46c791ee4d93ed3252d581a40"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resize the picture content with the given width and height. <a href="#a065e47b46c791ee4d93ed3252d581a40">More...</a><br /></td></tr>
<tr class="separator:a065e47b46c791ee4d93ed3252d581a40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af80639ef3460a5cf06278fdc03c13aad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtvg_1_1Picture.html#af80639ef3460a5cf06278fdc03c13aad">size</a> (float *w, float *h) const noexcept</td></tr>
<tr class="memdesc:af80639ef3460a5cf06278fdc03c13aad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the size of the image. <a href="#af80639ef3460a5cf06278fdc03c13aad">More...</a><br /></td></tr>
<tr class="separator:af80639ef3460a5cf06278fdc03c13aad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb53c7c5a55bab703a98808ecb3319eb"><td class="memItemLeft" align="right" valign="top">const uint32_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtvg_1_1Picture.html#afb53c7c5a55bab703a98808ecb3319eb">data</a> () const noexcept</td></tr>
<tr class="memdesc:afb53c7c5a55bab703a98808ecb3319eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the pixels information of the picture. <a href="#afb53c7c5a55bab703a98808ecb3319eb">More...</a><br /></td></tr>
<tr class="separator:afb53c7c5a55bab703a98808ecb3319eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fdf75092cebaa7cde48d6a7d4946368"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtvg_1_1Picture.html#a1fdf75092cebaa7cde48d6a7d4946368">load</a> (uint32_t *<a class="el" href="classtvg_1_1Picture.html#afb53c7c5a55bab703a98808ecb3319eb">data</a>, uint32_t w, uint32_t h, bool copy) noexcept</td></tr>
<tr class="memdesc:a1fdf75092cebaa7cde48d6a7d4946368"><td class="mdescLeft">&#160;</td><td class="mdescRight">Loads a raw data from a memory block with a given size. <a href="#a1fdf75092cebaa7cde48d6a7d4946368">More...</a><br /></td></tr>
<tr class="separator:a1fdf75092cebaa7cde48d6a7d4946368"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af04ad88b171b00da024fae34112378be"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtvg_1_1Picture.html#af04ad88b171b00da024fae34112378be">viewbox</a> (float *x, float *y, float *w, float *h) const noexcept</td></tr>
<tr class="memdesc:af04ad88b171b00da024fae34112378be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the position and the size of the loaded picture. <a href="#af04ad88b171b00da024fae34112378be">More...</a><br /></td></tr>
<tr class="separator:af04ad88b171b00da024fae34112378be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classtvg_1_1Paint"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classtvg_1_1Paint')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classtvg_1_1Paint.html">Paint</a></td></tr>
<tr class="memitem:a7841fa0c14643e09735d48042ead68f3 inherit pub_methods_classtvg_1_1Paint"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtvg_1_1Paint.html#a7841fa0c14643e09735d48042ead68f3">rotate</a> (float degree) noexcept</td></tr>
<tr class="memdesc:a7841fa0c14643e09735d48042ead68f3 inherit pub_methods_classtvg_1_1Paint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the angle by which the object is rotated. <a href="classtvg_1_1Paint.html#a7841fa0c14643e09735d48042ead68f3">More...</a><br /></td></tr>
<tr class="separator:a7841fa0c14643e09735d48042ead68f3 inherit pub_methods_classtvg_1_1Paint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c057876185525c5723215f95a3984f2 inherit pub_methods_classtvg_1_1Paint"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtvg_1_1Paint.html#a5c057876185525c5723215f95a3984f2">scale</a> (float factor) noexcept</td></tr>
<tr class="memdesc:a5c057876185525c5723215f95a3984f2 inherit pub_methods_classtvg_1_1Paint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the scale value of the object. <a href="classtvg_1_1Paint.html#a5c057876185525c5723215f95a3984f2">More...</a><br /></td></tr>
<tr class="separator:a5c057876185525c5723215f95a3984f2 inherit pub_methods_classtvg_1_1Paint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae896f56bfa51c98a50eee3f2bb62e41e inherit pub_methods_classtvg_1_1Paint"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtvg_1_1Paint.html#ae896f56bfa51c98a50eee3f2bb62e41e">translate</a> (float x, float y) noexcept</td></tr>
<tr class="memdesc:ae896f56bfa51c98a50eee3f2bb62e41e inherit pub_methods_classtvg_1_1Paint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the values by which the object is moved in a two-dimensional space. <a href="classtvg_1_1Paint.html#ae896f56bfa51c98a50eee3f2bb62e41e">More...</a><br /></td></tr>
<tr class="separator:ae896f56bfa51c98a50eee3f2bb62e41e inherit pub_methods_classtvg_1_1Paint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9f6ba428afe884bcc2861de0a2a96f4 inherit pub_methods_classtvg_1_1Paint"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtvg_1_1Paint.html#ac9f6ba428afe884bcc2861de0a2a96f4">transform</a> (const <a class="el" href="structtvg_1_1Matrix.html">Matrix</a> &amp;m) noexcept</td></tr>
<tr class="memdesc:ac9f6ba428afe884bcc2861de0a2a96f4 inherit pub_methods_classtvg_1_1Paint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the matrix of the affine transformation for the object. <a href="classtvg_1_1Paint.html#ac9f6ba428afe884bcc2861de0a2a96f4">More...</a><br /></td></tr>
<tr class="separator:ac9f6ba428afe884bcc2861de0a2a96f4 inherit pub_methods_classtvg_1_1Paint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f25b71fed3ae390eb8051c7ea65aebf inherit pub_methods_classtvg_1_1Paint"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtvg_1_1Paint.html#a2f25b71fed3ae390eb8051c7ea65aebf">opacity</a> (uint8_t o) noexcept</td></tr>
<tr class="memdesc:a2f25b71fed3ae390eb8051c7ea65aebf inherit pub_methods_classtvg_1_1Paint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the opacity of the object. <a href="classtvg_1_1Paint.html#a2f25b71fed3ae390eb8051c7ea65aebf">More...</a><br /></td></tr>
<tr class="separator:a2f25b71fed3ae390eb8051c7ea65aebf inherit pub_methods_classtvg_1_1Paint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab93150647927b8f2006b5ae45b7b093 inherit pub_methods_classtvg_1_1Paint"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtvg_1_1Paint.html#aab93150647927b8f2006b5ae45b7b093">composite</a> (std::unique_ptr&lt; <a class="el" href="classtvg_1_1Paint.html">Paint</a> &gt; target, <a class="el" href="group__ThorVG.html#gaabdf94ada64e69d06deabc5aa6576f87">CompositeMethod</a> method) const noexcept</td></tr>
<tr class="memdesc:aab93150647927b8f2006b5ae45b7b093 inherit pub_methods_classtvg_1_1Paint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the composition target object and the composition method. <a href="classtvg_1_1Paint.html#aab93150647927b8f2006b5ae45b7b093">More...</a><br /></td></tr>
<tr class="separator:aab93150647927b8f2006b5ae45b7b093 inherit pub_methods_classtvg_1_1Paint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d4e91eeca737b135064caadab4b4dff inherit pub_methods_classtvg_1_1Paint"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtvg_1_1Paint.html#a6d4e91eeca737b135064caadab4b4dff">bounds</a> (float *x, float *y, float *w, float *h) const noexcept</td></tr>
<tr class="memdesc:a6d4e91eeca737b135064caadab4b4dff inherit pub_methods_classtvg_1_1Paint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the bounding box of the paint object before any transformation. <a href="classtvg_1_1Paint.html#a6d4e91eeca737b135064caadab4b4dff">More...</a><br /></td></tr>
<tr class="separator:a6d4e91eeca737b135064caadab4b4dff inherit pub_methods_classtvg_1_1Paint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71afac69fe1e7c352460be5878812635 inherit pub_methods_classtvg_1_1Paint"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classtvg_1_1Paint.html">Paint</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtvg_1_1Paint.html#a71afac69fe1e7c352460be5878812635">duplicate</a> () const noexcept</td></tr>
<tr class="memdesc:a71afac69fe1e7c352460be5878812635 inherit pub_methods_classtvg_1_1Paint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Duplicates the object. <a href="classtvg_1_1Paint.html#a71afac69fe1e7c352460be5878812635">More...</a><br /></td></tr>
<tr class="separator:a71afac69fe1e7c352460be5878812635 inherit pub_methods_classtvg_1_1Paint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ee7517b8bfad47e0f999ba3450e0e3e inherit pub_methods_classtvg_1_1Paint"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtvg_1_1Paint.html#a2ee7517b8bfad47e0f999ba3450e0e3e">opacity</a> () const noexcept</td></tr>
<tr class="memdesc:a2ee7517b8bfad47e0f999ba3450e0e3e inherit pub_methods_classtvg_1_1Paint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the opacity value of the object. <a href="classtvg_1_1Paint.html#a2ee7517b8bfad47e0f999ba3450e0e3e">More...</a><br /></td></tr>
<tr class="separator:a2ee7517b8bfad47e0f999ba3450e0e3e inherit pub_methods_classtvg_1_1Paint"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a68af11946af3c1c63a4e915cd0207811"><td class="memItemLeft" align="right" valign="top">static std::unique_ptr&lt; <a class="el" href="classtvg_1_1Picture.html">Picture</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtvg_1_1Picture.html#a68af11946af3c1c63a4e915cd0207811">gen</a> () noexcept</td></tr>
<tr class="memdesc:a68af11946af3c1c63a4e915cd0207811"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a new <a class="el" href="classtvg_1_1Picture.html" title="A class representing an image read in one of the supported formats: raw, svg, png and etc...">Picture</a> object. <a href="#a68af11946af3c1c63a4e915cd0207811">More...</a><br /></td></tr>
<tr class="separator:a68af11946af3c1c63a4e915cd0207811"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>A class representing an image read in one of the supported formats: raw, svg, png and etc. Besides the methods inherited from the <a class="el" href="classtvg_1_1Paint.html" title="An abstract class for managing graphical elements. ">Paint</a>, it provides methods to load &amp; draw images on the canvas. </p>
<dl class="section note"><dt>Note</dt><dd>Supported formats are depended on the available TVG loaders. </dd></dl>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="afb53c7c5a55bab703a98808ecb3319eb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afb53c7c5a55bab703a98808ecb3319eb">&#9670;&nbsp;</a></span>data()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const uint32_t* data </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the pixels information of the picture. </p>
<dl class="section warning"><dt>Warning</dt><dd>Please do not use it, this API is not official one. It could be modified in the next version.</dd></dl>
</div>
</div>
<a id="a68af11946af3c1c63a4e915cd0207811"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a68af11946af3c1c63a4e915cd0207811">&#9670;&nbsp;</a></span>gen()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static std::unique_ptr&lt;<a class="el" href="classtvg_1_1Picture.html">Picture</a>&gt; gen </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates a new <a class="el" href="classtvg_1_1Picture.html" title="A class representing an image read in one of the supported formats: raw, svg, png and etc...">Picture</a> object. </p>
<dl class="section return"><dt>Returns</dt><dd>A new <a class="el" href="classtvg_1_1Picture.html" title="A class representing an image read in one of the supported formats: raw, svg, png and etc...">Picture</a> object. </dd></dl>
</div>
</div>
<a id="aaf06be7d0b572c5ce35315cbddd7d318"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaf06be7d0b572c5ce35315cbddd7d318">&#9670;&nbsp;</a></span>load() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a> load </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>path</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Loads a picture data directly from a file. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">path</td><td>A path to the picture file.</td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname"><a class="el" href="group__ThorVG.html#gga28287671eaf7406afd604bd055ba4066a505a83f220c02df2f85c3810cd9ceb38" title="The value returned in case of a correct request execution. ">Result::Success</a></td><td>When succeed. </td></tr>
<tr><td class="paramname"><a class="el" href="group__ThorVG.html#gga28287671eaf7406afd604bd055ba4066ae73a2e92f1c87086c838b442552a4775" title="The value returned in the event of a problem with the arguments given to the API - e...">Result::InvalidArguments</a></td><td>In case the <code>path</code> is empty. </td></tr>
<tr><td class="paramname"><a class="el" href="group__ThorVG.html#gga28287671eaf7406afd604bd055ba4066aa0cfd518e4385f31d38720579321ed29" title="The value returned in case of choosing unsupported options. ">Result::NonSupport</a></td><td>When trying to load a file with an unknown extension. </td></tr>
<tr><td class="paramname"><a class="el" href="group__ThorVG.html#gga28287671eaf7406afd604bd055ba4066a88183b946cc5f0e8c96b2e66e1c74a7e" title="The value returned in all other cases. ">Result::Unknown</a></td><td>If an error occurs at a later stage.</td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>The Load behavior can be asynchronous if the assigned thread number is greater than zero. </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classtvg_1_1Initializer.html#aecd30dc028635b645b0dac5b6facea73" title="Initializes TVG engines. ">Initializer::init()</a> </dd></dl>
</div>
</div>
<a id="ad33102ac9c2c60e52e4a61300312ea80"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad33102ac9c2c60e52e4a61300312ea80">&#9670;&nbsp;</a></span>load() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a> load </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>size</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Loads a picture data from a memory block of a given size. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">data</td><td>A pointer to a memory location where the content of the picture file is stored. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>The size in bytes of the memory occupied by the <code>data</code>.</td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname"><a class="el" href="group__ThorVG.html#gga28287671eaf7406afd604bd055ba4066a505a83f220c02df2f85c3810cd9ceb38" title="The value returned in case of a correct request execution. ">Result::Success</a></td><td>When succeed. </td></tr>
<tr><td class="paramname"><a class="el" href="group__ThorVG.html#gga28287671eaf7406afd604bd055ba4066ae73a2e92f1c87086c838b442552a4775" title="The value returned in the event of a problem with the arguments given to the API - e...">Result::InvalidArguments</a></td><td>In case no data are provided or the <code>size</code> is zero or less. </td></tr>
<tr><td class="paramname"><a class="el" href="group__ThorVG.html#gga28287671eaf7406afd604bd055ba4066aa0cfd518e4385f31d38720579321ed29" title="The value returned in case of choosing unsupported options. ">Result::NonSupport</a></td><td>When trying to load a file with an unknown extension. </td></tr>
<tr><td class="paramname"><a class="el" href="group__ThorVG.html#gga28287671eaf7406afd604bd055ba4066a88183b946cc5f0e8c96b2e66e1c74a7e" title="The value returned in all other cases. ">Result::Unknown</a></td><td>If an error occurs at a later stage.</td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>: This api supports only SVG format </dd></dl>
</div>
</div>
<a id="a1fdf75092cebaa7cde48d6a7d4946368"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1fdf75092cebaa7cde48d6a7d4946368">&#9670;&nbsp;</a></span>load() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a> load </td>
<td>(</td>
<td class="paramtype">uint32_t *&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>w</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>h</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>copy</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Loads a raw data from a memory block with a given size. </p>
<dl class="section warning"><dt>Warning</dt><dd>Please do not use it, this API is not official one. It could be modified in the next version.</dd></dl>
</div>
</div>
<a id="a065e47b46c791ee4d93ed3252d581a40"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a065e47b46c791ee4d93ed3252d581a40">&#9670;&nbsp;</a></span>size() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a> size </td>
<td>(</td>
<td class="paramtype">float&#160;</td>
<td class="paramname"><em>w</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float&#160;</td>
<td class="paramname"><em>h</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Resize the picture content with the given width and height. </p>
<p>Resize the picture content while keeping the default size aspect ratio. The scaling factor is established for each of dimensions and the smaller value is applied to both of them.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">w</td><td>A new width of the image in pixels. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">h</td><td>A new height of the image in pixels.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__ThorVG.html#gga28287671eaf7406afd604bd055ba4066a505a83f220c02df2f85c3810cd9ceb38" title="The value returned in case of a correct request execution. ">Result::Success</a> when succeed, <a class="el" href="group__ThorVG.html#gga28287671eaf7406afd604bd055ba4066a119732ff568bf103d744e930ae2404f1" title="The value returned in case the request cannot be processed - e.g. asking for properties of an object...">Result::InsufficientCondition</a> otherwise. </dd></dl>
</div>
</div>
<a id="af80639ef3460a5cf06278fdc03c13aad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af80639ef3460a5cf06278fdc03c13aad">&#9670;&nbsp;</a></span>size() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a> size </td>
<td>(</td>
<td class="paramtype">float *&#160;</td>
<td class="paramname"><em>w</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float *&#160;</td>
<td class="paramname"><em>h</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the size of the image. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[out]</td><td class="paramname">w</td><td>The width of the image in pixels. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">h</td><td>The height of the image in pixels.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__ThorVG.html#gga28287671eaf7406afd604bd055ba4066a505a83f220c02df2f85c3810cd9ceb38" title="The value returned in case of a correct request execution. ">Result::Success</a> when succeed. </dd></dl>
</div>
</div>
<a id="af04ad88b171b00da024fae34112378be"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af04ad88b171b00da024fae34112378be">&#9670;&nbsp;</a></span>viewbox()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__ThorVG.html#ga28287671eaf7406afd604bd055ba4066">Result</a> viewbox </td>
<td>(</td>
<td class="paramtype">float *&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float *&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float *&#160;</td>
<td class="paramname"><em>w</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float *&#160;</td>
<td class="paramname"><em>h</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the position and the size of the loaded picture. </p>
<dl class="section warning"><dt>Warning</dt><dd>Please do not use it, this API is not official one. It could be modified in the next version.</dd></dl>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>tvg</b></li><li class="navelem"><a class="el" href="classtvg_1_1Picture.html">Picture</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
</ul>
</div>
</body>
</html>