Sophie

Sophie

distrib > Fedora > 18 > x86_64 > by-pkgid > b3a1f4d91c26f535919e39e25606614a > files > 1962

wt-doc-3.2.3-1.fc18.noarch.rpm

<!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"/>
<title>Wt: Wt::WPdfImage Class Reference</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />

<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>

</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">Wt
   &#160;<span id="projectnumber">3.2.3</span>
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.5.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="namespaceWt.html">Wt</a>      </li>
      <li class="navelem"><a class="el" href="classWt_1_1WPdfImage.html">WPdfImage</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">Wt::WPdfImage Class Reference<div class="ingroups"><a class="el" href="group__painting.html">Painting system</a></div></div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="Wt::WPdfImage" --><!-- doxytag: inherits="Wt::WResource,Wt::WPaintDevice" -->
<p>A paint device for rendering to a PDF.  
 <a href="classWt_1_1WPdfImage.html#details">More...</a></p>

<p><code>#include &lt;Wt/WPdfImage&gt;</code></p>
<div class="dynheader">
Inheritance diagram for Wt::WPdfImage:</div>
<div class="dyncontent">
<div class="center"><img src="classWt_1_1WPdfImage__inherit__graph.png" border="0" usemap="#Wt_1_1WPdfImage_inherit__map" alt="Inheritance graph"/></div>
<map name="Wt_1_1WPdfImage_inherit__map" id="Wt_1_1WPdfImage_inherit__map">
<area shape="rect" href="classWt_1_1WResource.html" title="An object which can be rendered in the HTTP protocol." alt="" coords="5,80,120,107"/><area shape="rect" href="classWt_1_1WObject.html" title="A base class for objects that participate in the signal/slot system." alt="" coords="15,5,111,32"/><area shape="rect" href="classWt_1_1WPaintDevice.html" title="The abstract base class for a paint device." alt="" coords="144,80,272,107"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classWt_1_1WPdfImage-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a79e69ca31a1b8fd1629a9d9b751b9171">WPdfImage</a> (const <a class="el" href="classWt_1_1WLength.html">WLength</a> &amp;width, const <a class="el" href="classWt_1_1WLength.html">WLength</a> &amp;height, <a class="el" href="classWt_1_1WObject.html">WObject</a> *parent=0)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a PDF resource that represents a single-page PDF document.  <a href="#a79e69ca31a1b8fd1629a9d9b751b9171"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a7280381d516142fd3db54fb376d17726">WPdfImage</a> (HPDF_Doc pdf, HPDF_Page page, HPDF_REAL x, HPDF_REAL y, HPDF_REAL width, HPDF_REAL height, <a class="el" href="classWt_1_1WObject.html">WObject</a> *parent=0)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a PDF paint device to paint inside an existing page.  <a href="#a7280381d516142fd3db54fb376d17726"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a86fde83dd116371ab099f79b83199145"></a><!-- doxytag: member="Wt::WPdfImage::~WPdfImage" ref="a86fde83dd116371ab099f79b83199145" args="()" -->
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a86fde83dd116371ab099f79b83199145">~WPdfImage</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a479b8988ba6d379088ef097b894cbc22">addFontCollection</a> (const std::string &amp;directory, bool recursive=true)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a font collection.  <a href="#a479b8988ba6d379088ef097b894cbc22"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a925ec5c234c018d9c224700c9df84954"></a><!-- doxytag: member="Wt::WPdfImage::features" ref="a925ec5c234c018d9c224700c9df84954" args="() const " -->
virtual WFlags<br class="typebreak"/>
&lt; <a class="el" href="classWt_1_1WPaintDevice.html#a03b5b2abb109568cc60b2d6ec595ad0b">WPaintDevice::FeatureFlag</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a925ec5c234c018d9c224700c9df84954">features</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns device features. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a6d17905ce2d0d0930d6597f7c5ab050e">setChanged</a> (WFlags&lt; <a class="el" href="classWt_1_1WPaintDevice.html#a1a2feafa01212eba9ad6c7b484ad8da1">ChangeFlag</a> &gt; flags)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates changes in painter state.  <a href="#a6d17905ce2d0d0930d6597f7c5ab050e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a478e01406f34497731a24a5f173be340">drawArc</a> (const <a class="el" href="classWt_1_1WRectF.html">WRectF</a> &amp;rect, double startAngle, double spanAngle)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Draws an arc.  <a href="#a478e01406f34497731a24a5f173be340"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#ac3bc4dd8a8085c2d85113a90a59a1774">drawImage</a> (const <a class="el" href="classWt_1_1WRectF.html">WRectF</a> &amp;rect, const std::string &amp;imgUri, int imgWidth, int imgHeight, const <a class="el" href="classWt_1_1WRectF.html">WRectF</a> &amp;sourceRect)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Draws an image.  <a href="#ac3bc4dd8a8085c2d85113a90a59a1774"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a4d350a7e2c59500222cdf782f3bb4042">drawLine</a> (double x1, double y1, double x2, double y2)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Draws a line.  <a href="#a4d350a7e2c59500222cdf782f3bb4042"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#adca51e1ebd4dc3b2a2acbe40b439caa7">drawPath</a> (const <a class="el" href="classWt_1_1WPainterPath.html">WPainterPath</a> &amp;path)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Draws a path.  <a href="#adca51e1ebd4dc3b2a2acbe40b439caa7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#adbe686c93ef3ae59159826a10e17b2ba">drawText</a> (const <a class="el" href="classWt_1_1WRectF.html">WRectF</a> &amp;rect, WFlags&lt; <a class="el" href="namespaceWt.html#ab8f772c69bc8180c31f9e4f4593b143f">AlignmentFlag</a> &gt; alignmentFlags, <a class="el" href="namespaceWt.html#a3bf85f6b385349dadfa7e205a39ec419">TextFlag</a> textFlag, const <a class="el" href="classWt_1_1WString.html">WString</a> &amp;text)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Draws text.  <a href="#adbe686c93ef3ae59159826a10e17b2ba"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classWt_1_1WTextItem.html">WTextItem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a3a2028ecbc36e14670f2f467e97822e0">measureText</a> (const <a class="el" href="classWt_1_1WString.html">WString</a> &amp;text, double maxWidth=-1, bool wordWrap=false)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Measures rendered text size.  <a href="#a3a2028ecbc36e14670f2f467e97822e0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classWt_1_1WFontMetrics.html">WFontMetrics</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a6da04f3125bee877b11286620e04c94d">fontMetrics</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns font metrics.  <a href="#a6da04f3125bee877b11286620e04c94d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a0ff5e4c7ce2c9baea108d4f728099672">init</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the device for painting.  <a href="#a0ff5e4c7ce2c9baea108d4f728099672"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a0b90c88a78d6b5aca5bcae704564a1bd">done</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Finishes painting on the device.  <a href="#a0b90c88a78d6b5aca5bcae704564a1bd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a289544df08b2d7164a4d968e9804bc89">paintActive</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns whether painting is active.  <a href="#a289544df08b2d7164a4d968e9804bc89"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classWt_1_1WLength.html">WLength</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a3f035d8dbf510e084bf68e49d8e73bff">width</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the device width.  <a href="#a3f035d8dbf510e084bf68e49d8e73bff"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classWt_1_1WLength.html">WLength</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a172fc6977e598044e9bbc263b6599c81">height</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the device height.  <a href="#a172fc6977e598044e9bbc263b6599c81"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a358347b05123b87af1ced8d038b34f38">handleRequest</a> (const <a class="el" href="classWt_1_1Http_1_1Request.html">Http::Request</a> &amp;request, <a class="el" href="classWt_1_1Http_1_1Response.html">Http::Response</a> &amp;response)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Handles a request.  <a href="#a358347b05123b87af1ced8d038b34f38"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classWt_1_1WPainter.html">WPainter</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a0ccbbad3ceaad9c0cfd9abcb32ee0b64">painter</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the painter that is currently painting on the device.  <a href="#a0ccbbad3ceaad9c0cfd9abcb32ee0b64"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a672d635742591046bf7799c3b033b5fd"></a><!-- doxytag: member="Wt::WPdfImage::setPainter" ref="a672d635742591046bf7799c3b033b5fd" args="(WPainter *painter)" -->
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWt_1_1WPdfImage.html#a672d635742591046bf7799c3b033b5fd">setPainter</a> (<a class="el" href="classWt_1_1WPainter.html">WPainter</a> *painter)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the painter. <br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>A paint device for rendering to a PDF. </p>
<p>A WPdfImage paint device should be used in conjunction with a <a class="el" href="classWt_1_1WPainter.html" title="Vector graphics painting class.">WPainter</a>, and can be used to make a PDF version of a WPaintedWidget's contents.</p>
<p>The PDF is generated using <a href="http://libharu.org/">The Haru Free PDF Library</a>, and this class is included in the library only if <code>libharu</code> was found during the build of the library.</p>
<p>You can use the image as a resource and specialize <a class="el" href="classWt_1_1WPdfImage.html#a358347b05123b87af1ced8d038b34f38" title="Handles a request.">handleRequest()</a> to paint the contents on the fly. Alternatively can also use <a class="el" href="classWt_1_1WResource.html#ad8bbe65a888cc43e0d356f18509b9a0f" title="Stream the resource to a stream.">write()</a> to serialize to a PDF file (std::ostream). The latter usage is illustrated by the code below:</p>
<div class="fragment"><pre class="fragment"> <a class="code" href="classWt_1_1Chart_1_1WCartesianChart.html" title="A cartesian chart.">Wt::Chart::WCartesianChart</a>
 *chart = ...

 <a class="code" href="classWt_1_1WPdfImage.html" title="A paint device for rendering to a PDF.">Wt::WPdfImage</a> pdfImage(<span class="stringliteral">&quot;4cm&quot;</span>, <span class="stringliteral">&quot;3cm&quot;</span>);
 {
   <a class="code" href="classWt_1_1WPainter.html" title="Vector graphics painting class.">Wt::WPainter</a> p(&amp;pdfImage);
   chart-&gt;<a class="code" href="classWt_1_1Chart_1_1WCartesianChart.html#a6fb2219936b721b8829dc7093dcb5c16" title="Paint the chart in a rectangle of the given painter.">paint</a>(p);
 }
 std::ofstream f(<span class="stringliteral">&quot;chart.pdf&quot;</span>, std::ios::out | std::ios::binary);
 pdfImage.write(f);
</pre></div><p>A constructor is provided which allows the generated PDF image to be embedded directly into a page of a larger <code>libharu</code> document, and this approach is used for example by the WPdfRenderer to render XHTML to multi-page PDF files.</p>
<p>Font information is embedded in the PDF. Fonts supported are native PostScript fonts (Base-14) (only ASCII-7), or true type fonts (Unicode). See <a class="el" href="classWt_1_1WPdfImage.html#a479b8988ba6d379088ef097b894cbc22" title="Adds a font collection.">addFontCollection()</a> for more information on how fonts are located and matched to <a class="el" href="classWt_1_1WFont.html" title="A value class that describes a font.">WFont</a> descriptions.</p>
<p>This paint device has the following limitations:</p>
<ul>
<li>images (<a class="el" href="classWt_1_1WPainter.html#ae36e5ce0c6a324ec83ebbc397a513202" title="Draws an image.">WPainter::drawImage()</a>) can only be included from local files, and only JPG and PNG images are supported.</li>
<li>drop shadows are not supported. </li>
</ul>
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a79e69ca31a1b8fd1629a9d9b751b9171"></a><!-- doxytag: member="Wt::WPdfImage::WPdfImage" ref="a79e69ca31a1b8fd1629a9d9b751b9171" args="(const WLength &amp;width, const WLength &amp;height, WObject *parent=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Wt::WPdfImage::WPdfImage </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classWt_1_1WLength.html">WLength</a> &amp;&#160;</td>
          <td class="paramname"><em>width</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classWt_1_1WLength.html">WLength</a> &amp;&#160;</td>
          <td class="paramname"><em>height</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classWt_1_1WObject.html">WObject</a> *&#160;</td>
          <td class="paramname"><em>parent</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a PDF resource that represents a single-page PDF document. </p>
<p>The single page will have a size <code>width</code> x <code>height</code>. The PDF will be using the same DPI (72dpi) as is conventionally used for the desktop.</p>
<p>The passed width and height (such as 4 cm by 3 cm) can be specified in physical units (e.g. 4cm x 3cm), but this will be converted to pixels using the default DPI used in CSS (96dpi) !</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classWt_1_1WResource.html#ad8bbe65a888cc43e0d356f18509b9a0f" title="Stream the resource to a stream.">write()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a7280381d516142fd3db54fb376d17726"></a><!-- doxytag: member="Wt::WPdfImage::WPdfImage" ref="a7280381d516142fd3db54fb376d17726" args="(HPDF_Doc pdf, HPDF_Page page, HPDF_REAL x, HPDF_REAL y, HPDF_REAL width, HPDF_REAL height, WObject *parent=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Wt::WPdfImage::WPdfImage </td>
          <td>(</td>
          <td class="paramtype">HPDF_Doc&#160;</td>
          <td class="paramname"><em>pdf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HPDF_Page&#160;</td>
          <td class="paramname"><em>page</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HPDF_REAL&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HPDF_REAL&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HPDF_REAL&#160;</td>
          <td class="paramname"><em>width</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HPDF_REAL&#160;</td>
          <td class="paramname"><em>height</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classWt_1_1WObject.html">WObject</a> *&#160;</td>
          <td class="paramname"><em>parent</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a PDF paint device to paint inside an existing page. </p>
<p>The image will be drawn in the existing page, as an image with lower-left point (<code>x</code>, <code>y</code>) and size (<code>width</code> x <code>height</code>). </p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a479b8988ba6d379088ef097b894cbc22"></a><!-- doxytag: member="Wt::WPdfImage::addFontCollection" ref="a479b8988ba6d379088ef097b894cbc22" args="(const std::string &amp;directory, bool recursive=true)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Wt::WPdfImage::addFontCollection </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>directory</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>recursive</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds a font collection. </p>
<p>If Wt has been configured to use <code>libpango</code>, then font matching and character selection is done by libpango, which is seeded with information on installed fonts by fontconfig. In that case, invocations for this method is ignored. Only TrueType fonts are supported, and thus you need to configure fontconfig (which is used by pango) to only return TrueType fonts. This can be done using a fonts.conf configuration file:</p>
 <pre>
&lt;?xml version='1.0'?&gt;
&lt;!DOCTYPE fontconfig SYSTEM 'fonts.dtd'&gt;
&lt;fontconfig&gt;
    &lt;selectfont&gt;
      &lt;rejectfont&gt;
	 &lt;glob&gt;*.pfb&lt;/glob&gt;
      &lt;/rejectfont&gt;
    &lt;/selectfont&gt;
&lt;/fontconfig&gt;
 </pre>  You may need to add more glob patterns to exclude other fonts than TrueType, and also to exclude TrueType fonts which do not work properly with libharu.</p>
<p>If Wt has not been configured to use <code>libpango</code>, then this method may be used to indicate the location of TrueType fonts. The main drawback compared to libpango is that font selection is not steered by the need for particular characters, i.e. font selection is independent from the text's need for specific characters. Most TrueType fonts provided only partial unicode support. The provided <code>directory</code> will be searched for fonts (currently only TrueType ".ttf" or ".ttc" fonts). TrueType fonts are preferable over Base-14 fonts (which are PDF's default fonts) since they provide partial (or complete) unicode support.</p>
<p>When using Base-14 fonts, <a class="el" href="classWt_1_1WString.html#a0b90340ac2dbacb9b4d81e92d9070066" title="Returns the value as a narrow C++ string.">WString::narrow()</a> will be called on text which may result in loss of information. </p>

</div>
</div>
<a class="anchor" id="a0b90c88a78d6b5aca5bcae704564a1bd"></a><!-- doxytag: member="Wt::WPdfImage::done" ref="a0b90c88a78d6b5aca5bcae704564a1bd" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Wt::WPdfImage::done </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Finishes painting on the device. </p>
<p>This method is called when a <a class="el" href="classWt_1_1WPainter.html" title="Vector graphics painting class.">WPainter</a> stopped painting.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classWt_1_1WPainter.html#a50beb0c8cb77c12e2dee807e4fe4bcb4" title="Ends painting.">WPainter::end()</a> </dd></dl>

<p>Implements <a class="el" href="classWt_1_1WPaintDevice.html#a75827be2076716985533dbc75dfdc512">Wt::WPaintDevice</a>.</p>

</div>
</div>
<a class="anchor" id="a478e01406f34497731a24a5f173be340"></a><!-- doxytag: member="Wt::WPdfImage::drawArc" ref="a478e01406f34497731a24a5f173be340" args="(const WRectF &amp;rect, double startAngle, double spanAngle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Wt::WPdfImage::drawArc </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classWt_1_1WRectF.html">WRectF</a> &amp;&#160;</td>
          <td class="paramname"><em>rect</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>startAngle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>spanAngle</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Draws an arc. </p>
<p>The arc is defined as in <a class="el" href="classWt_1_1WPainter.html#aa79220ed9456f67a393009e5c5eea27e" title="Draws an arc.">WPainter::drawArc(const WRectF&amp; rectangle, int startAngle, int spanAngle)</a></p>
<p>The arc must be stroked, filled, and transformed using the current painter settings. </p>

<p>Implements <a class="el" href="classWt_1_1WPaintDevice.html#a605316797b1aa4be60c24d95fc5a1ab4">Wt::WPaintDevice</a>.</p>

</div>
</div>
<a class="anchor" id="ac3bc4dd8a8085c2d85113a90a59a1774"></a><!-- doxytag: member="Wt::WPdfImage::drawImage" ref="ac3bc4dd8a8085c2d85113a90a59a1774" args="(const WRectF &amp;rect, const std::string &amp;imgUri, int imgWidth, int imgHeight, const WRectF &amp;sourceRect)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Wt::WPdfImage::drawImage </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classWt_1_1WRectF.html">WRectF</a> &amp;&#160;</td>
          <td class="paramname"><em>rect</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>imageUri</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>imgWidth</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>imgHeight</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classWt_1_1WRectF.html">WRectF</a> &amp;&#160;</td>
          <td class="paramname"><em>sourceRect</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Draws an image. </p>
<p>Draws <em>sourceRect</em> from the image with URL <code>imageUri</code> and original dimensions <em>imgWidth</em> and <code>imgHeight</code> to the location, into the rectangle defined by <code>rect</code>.</p>
<p>The image is transformed using the current painter settings. </p>

<p>Implements <a class="el" href="classWt_1_1WPaintDevice.html#af92ff3c6d2f5c351c6931306d9cc1162">Wt::WPaintDevice</a>.</p>

</div>
</div>
<a class="anchor" id="a4d350a7e2c59500222cdf782f3bb4042"></a><!-- doxytag: member="Wt::WPdfImage::drawLine" ref="a4d350a7e2c59500222cdf782f3bb4042" args="(double x1, double y1, double x2, double y2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Wt::WPdfImage::drawLine </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>x1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>y1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>x2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>y2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Draws a line. </p>
<p>The line must be stroked and transformed using the current painter settings. </p>

<p>Implements <a class="el" href="classWt_1_1WPaintDevice.html#abd267ca3adb6c394079042810864ac9a">Wt::WPaintDevice</a>.</p>

</div>
</div>
<a class="anchor" id="adca51e1ebd4dc3b2a2acbe40b439caa7"></a><!-- doxytag: member="Wt::WPdfImage::drawPath" ref="adca51e1ebd4dc3b2a2acbe40b439caa7" args="(const WPainterPath &amp;path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Wt::WPdfImage::drawPath </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classWt_1_1WPainterPath.html">WPainterPath</a> &amp;&#160;</td>
          <td class="paramname"><em>path</em></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Draws a path. </p>
<p>The path must be stroked, filled, and transformed using the current painter settings. </p>

<p>Implements <a class="el" href="classWt_1_1WPaintDevice.html#ab3c368b79fef8bc53681821610dd2077">Wt::WPaintDevice</a>.</p>

</div>
</div>
<a class="anchor" id="adbe686c93ef3ae59159826a10e17b2ba"></a><!-- doxytag: member="Wt::WPdfImage::drawText" ref="adbe686c93ef3ae59159826a10e17b2ba" args="(const WRectF &amp;rect, WFlags&lt; AlignmentFlag &gt; alignmentFlags, TextFlag textFlag, const WString &amp;text)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Wt::WPdfImage::drawText </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classWt_1_1WRectF.html">WRectF</a> &amp;&#160;</td>
          <td class="paramname"><em>rect</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">WFlags&lt; <a class="el" href="namespaceWt.html#ab8f772c69bc8180c31f9e4f4593b143f">AlignmentFlag</a> &gt;&#160;</td>
          <td class="paramname"><em>alignmentFlags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceWt.html#a3bf85f6b385349dadfa7e205a39ec419">TextFlag</a>&#160;</td>
          <td class="paramname"><em>textFlag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classWt_1_1WString.html">WString</a> &amp;&#160;</td>
          <td class="paramname"><em>text</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Draws text. </p>
<p>The text must be rendered, stroked and transformed using the current painter settings. </p>

<p>Implements <a class="el" href="classWt_1_1WPaintDevice.html#adfcb1566a4c765d0ff1575cc3f6be31d">Wt::WPaintDevice</a>.</p>

</div>
</div>
<a class="anchor" id="a6da04f3125bee877b11286620e04c94d"></a><!-- doxytag: member="Wt::WPdfImage::fontMetrics" ref="a6da04f3125bee877b11286620e04c94d" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classWt_1_1WFontMetrics.html">WFontMetrics</a> Wt::WPdfImage::fontMetrics </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns font metrics. </p>
<p>This returns font metrics for the current font.</p>
<p>Throws a std::logic_error if the underlying device does not provide font metrics. </p>

<p>Implements <a class="el" href="classWt_1_1WPaintDevice.html#a468ec8684106f8e24b3c46876ee86ff7">Wt::WPaintDevice</a>.</p>

</div>
</div>
<a class="anchor" id="a358347b05123b87af1ced8d038b34f38"></a><!-- doxytag: member="Wt::WPdfImage::handleRequest" ref="a358347b05123b87af1ced8d038b34f38" args="(const Http::Request &amp;request, Http::Response &amp;response)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Wt::WPdfImage::handleRequest </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classWt_1_1Http_1_1Request.html">Http::Request</a> &amp;&#160;</td>
          <td class="paramname"><em>request</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classWt_1_1Http_1_1Response.html">Http::Response</a> &amp;&#160;</td>
          <td class="paramname"><em>response</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Handles a request. </p>
<p>Reimplement this method so that a proper response is generated for the given request. From the <code>request</code> object you can access request parameters and whether the request is a continuation request. In the <code>response</code> object, you should set the mime type and stream the output data.</p>
<p>A request may also concern a continuation, indicated in <a class="el" href="classWt_1_1Http_1_1Request.html#a2d4f88961a222be846460a8238823ae0" title="Returns a continuation object.">Http::Request::continuation()</a>, in which case the next part for a previously created continuation should be served.</p>
<p>While handling a request, which may happen at any time together with event handling, the library makes sure that the resource is not being concurrently deleted, but multiple requests may happend simultaneously for a single resource. </p>

<p>Implements <a class="el" href="classWt_1_1WResource.html#a3a740f8cc29e2e6e4e58defc9c88b8b6">Wt::WResource</a>.</p>

</div>
</div>
<a class="anchor" id="a172fc6977e598044e9bbc263b6599c81"></a><!-- doxytag: member="Wt::WPdfImage::height" ref="a172fc6977e598044e9bbc263b6599c81" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classWt_1_1WLength.html">WLength</a> Wt::WPdfImage::height </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the device height. </p>
<p>The device height, in pixels, establishes the height of the device coordinate system. </p>

<p>Implements <a class="el" href="classWt_1_1WPaintDevice.html#a24c7e1363440e6994b44381ebf443157">Wt::WPaintDevice</a>.</p>

</div>
</div>
<a class="anchor" id="a0ff5e4c7ce2c9baea108d4f728099672"></a><!-- doxytag: member="Wt::WPdfImage::init" ref="a0ff5e4c7ce2c9baea108d4f728099672" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Wt::WPdfImage::init </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Initializes the device for painting. </p>
<p>This method is called when a <a class="el" href="classWt_1_1WPainter.html" title="Vector graphics painting class.">WPainter</a> starts painting.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classWt_1_1WPainter.html#a6b81663b5599f0736ae5099ac7325d44" title="Begins painting on a paint device.">WPainter::begin(WPaintDevice *)</a>, <a class="el" href="classWt_1_1WPdfImage.html#a0ccbbad3ceaad9c0cfd9abcb32ee0b64" title="Returns the painter that is currently painting on the device.">painter()</a> </dd></dl>

<p>Implements <a class="el" href="classWt_1_1WPaintDevice.html#a04d6f9e0653a9785662c1e987b597cc6">Wt::WPaintDevice</a>.</p>

</div>
</div>
<a class="anchor" id="a3a2028ecbc36e14670f2f467e97822e0"></a><!-- doxytag: member="Wt::WPdfImage::measureText" ref="a3a2028ecbc36e14670f2f467e97822e0" args="(const WString &amp;text, double maxWidth=&#45;1, bool wordWrap=false)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classWt_1_1WTextItem.html">WTextItem</a> Wt::WPdfImage::measureText </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classWt_1_1WString.html">WString</a> &amp;&#160;</td>
          <td class="paramname"><em>text</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>maxWidth</em> = <code>-1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>wordWrap</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Measures rendered text size. </p>
<p>Returns the bounding rect of the given text when rendered using the current font.</p>
<p>If <code>maxWidth</code> != -1, then the text is truncated to fit in the width.</p>
<p>If <code>wordWrap</code> = <code>true</code> then text is truncated only at word boundaries. Note that in this case the whitespace at the truncated position is included in the text but not accounted for by the returned width (since usually you will not render the whitespace at the end of a line).</p>
<p>Throws a std::logic_error if the underlying device does not provide font metrics. </p>

<p>Implements <a class="el" href="classWt_1_1WPaintDevice.html#a21d005287f1973348357e089d6d18df1">Wt::WPaintDevice</a>.</p>

</div>
</div>
<a class="anchor" id="a289544df08b2d7164a4d968e9804bc89"></a><!-- doxytag: member="Wt::WPdfImage::paintActive" ref="a289544df08b2d7164a4d968e9804bc89" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool Wt::WPdfImage::paintActive </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns whether painting is active. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classWt_1_1WPdfImage.html#a0ff5e4c7ce2c9baea108d4f728099672" title="Initializes the device for painting.">init()</a>, <a class="el" href="classWt_1_1WPdfImage.html#a0ccbbad3ceaad9c0cfd9abcb32ee0b64" title="Returns the painter that is currently painting on the device.">painter()</a> </dd></dl>

<p>Implements <a class="el" href="classWt_1_1WPaintDevice.html#a7dc74a2c7c98e38c7851277313d313f6">Wt::WPaintDevice</a>.</p>

</div>
</div>
<a class="anchor" id="a0ccbbad3ceaad9c0cfd9abcb32ee0b64"></a><!-- doxytag: member="Wt::WPdfImage::painter" ref="a0ccbbad3ceaad9c0cfd9abcb32ee0b64" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classWt_1_1WPainter.html">WPainter</a>* Wt::WPdfImage::painter </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the painter that is currently painting on the device. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classWt_1_1WPdfImage.html#a0ff5e4c7ce2c9baea108d4f728099672" title="Initializes the device for painting.">init()</a> </dd></dl>

<p>Implements <a class="el" href="classWt_1_1WPaintDevice.html#ae1c75c6bc0e5a2d6322b176f6f13403c">Wt::WPaintDevice</a>.</p>

</div>
</div>
<a class="anchor" id="a6d17905ce2d0d0930d6597f7c5ab050e"></a><!-- doxytag: member="Wt::WPdfImage::setChanged" ref="a6d17905ce2d0d0930d6597f7c5ab050e" args="(WFlags&lt; ChangeFlag &gt; flags)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Wt::WPdfImage::setChanged </td>
          <td>(</td>
          <td class="paramtype">WFlags&lt; <a class="el" href="classWt_1_1WPaintDevice.html#a1a2feafa01212eba9ad6c7b484ad8da1">ChangeFlag</a> &gt;&#160;</td>
          <td class="paramname"><em>flags</em></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Indicates changes in painter state. </p>
<p>The <code>flags</code> argument is the logical OR of one or more change flags.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classWt_1_1WPaintDevice.html#a1a2feafa01212eba9ad6c7b484ad8da1" title="Enumeration to communicate painter state changes.">ChangeFlag</a> </dd></dl>

<p>Implements <a class="el" href="classWt_1_1WPaintDevice.html#ab3a4c9799e46ab66c0f6cb4182e9cb72">Wt::WPaintDevice</a>.</p>

</div>
</div>
<a class="anchor" id="a3f035d8dbf510e084bf68e49d8e73bff"></a><!-- doxytag: member="Wt::WPdfImage::width" ref="a3f035d8dbf510e084bf68e49d8e73bff" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classWt_1_1WLength.html">WLength</a> Wt::WPdfImage::width </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the device width. </p>
<p>The device width, in pixels, establishes the width of the device coordinate system. </p>

<p>Implements <a class="el" href="classWt_1_1WPaintDevice.html#a9a0d38acb408d4520d0dd520c93d47e0">Wt::WPaintDevice</a>.</p>

</div>
</div>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a></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>

<hr size="1"><address style="text-align: right; margin: 3px"><small>
Generated on Thu Nov 1 2012 for <a href="http://www.webtoolkit.eu/wt">the
C++ Web Toolkit (Wt)</a> by&nbsp;<a
href="http://www.doxygen.org/index.html"><img src="doxygen.png"
alt="doxygen" border="0" style="vertical-align: middle; display:
inline-block; height: 2em"></a> 1.7.5.1</small></address>
</body>
</html>