hi, i have incorporated the changes suggested by you. i got a error &quot;invalid value for an input cairo_format_t&quot;. i have checked the permission, it is read write.<br><br><div class="gmail_quote">On Thu, Apr 17, 2008 at 6:39 PM, Chris Wilson &lt;<a href="mailto:chris@chris-wilson.co.uk">chris@chris-wilson.co.uk</a>&gt; wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="Ih2E3d">On Thu, 2008-04-17 at 18:24 +0530, Chandra Shekhar Sengupta wrote:<br>
&gt; Hi ,<br>
&gt; i have tried with adding &quot;get_target&quot; in all possible places, but<br>
&gt; still &quot;write_png&quot; is saving zero byte png.i have attched the full<br>
&gt; code . Could you tell how to save that surface?<br>
<br>
</div>Compiled and ran your example - it generated &#39;sticker.png&#39; flawlessly.<br>
<div class="Ih2E3d"><br>
&gt; if(cairo_surface_status(tsurf) != CAIRO_STATUS_SUCCESS)<br>
&gt; &nbsp;g_print(&quot; nil surface \n&quot;);<br>
&gt; else<br>
&gt; &nbsp;cairo_surface_write_to_png (tsurf, &quot;sticker.png&quot;);<br>
<br>
</div>I&#39;d suggest replacing this section to check the status return from<br>
cairo_surface_write_to_png(), i.e.<br>
 &nbsp; &nbsp; &nbsp; &nbsp;status = cairo_surface_write_to_png (tsurf, &quot;sticker.png&quot;);<br>
 &nbsp; &nbsp; &nbsp; &nbsp;if (status) {<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;g_print (&quot;Failed to write \&quot;%s\&quot;: %s\n&quot;,<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &quot;sticker.png&quot;,<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; cairo_status_to_string (status));<br>
 &nbsp; &nbsp; &nbsp; &nbsp;}<br>
<br>
However, I would first check the permissions on &#39;sticker.png&#39;.<br>
<br>
--<br>
<font color="#888888">Chris Wilson<br>
<br>
</font></blockquote></div><br><br clear="all"><br>-- <br>Regards,<br>Chandra Shekhar Sengupta<br><br>