<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[PNG Dateien mit transparenz speichern]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich programmiere in Visual C++ 2003 mit der MFC.</p>
<p>Ich habe einen handle auf ein Bitmap. Nun möchte ich den Hintergrund des Bitmaps Transparent gestalten und das Bitmap dann als PNG speichern. Kann ich das mit der MFC überhaupt bewerkstelligen ohne extra Bibliotheken einzubinden? Auf jeden Fall soll eine 32 bit PNG-Datei herauskommen, dessen Hintergrund transparent ist.</p>
<p>Wäre super, wenn mir jemand einen Ansatz geben könnte.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/189181/png-dateien-mit-transparenz-speichern</link><generator>RSS for Node</generator><lastBuildDate>Fri, 10 Apr 2026 01:19:41 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/189181.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 09 Aug 2007 12:45:14 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to PNG Dateien mit transparenz speichern on Thu, 09 Aug 2007 12:45:14 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich programmiere in Visual C++ 2003 mit der MFC.</p>
<p>Ich habe einen handle auf ein Bitmap. Nun möchte ich den Hintergrund des Bitmaps Transparent gestalten und das Bitmap dann als PNG speichern. Kann ich das mit der MFC überhaupt bewerkstelligen ohne extra Bibliotheken einzubinden? Auf jeden Fall soll eine 32 bit PNG-Datei herauskommen, dessen Hintergrund transparent ist.</p>
<p>Wäre super, wenn mir jemand einen Ansatz geben könnte.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1341499</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1341499</guid><dc:creator><![CDATA[Hydron]]></dc:creator><pubDate>Thu, 09 Aug 2007 12:45:14 GMT</pubDate></item><item><title><![CDATA[Reply to PNG Dateien mit transparenz speichern on Thu, 09 Aug 2007 15:05:36 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>am besten Du verwendest die CxImage Libary von Codeproject. Mit der kann man die verrücktesten Sachen machen.</p>
<p><a href="http://www.codeproject.com/bitmap/cximage.asp" rel="nofollow">http://www.codeproject.com/bitmap/cximage.asp</a></p>
<p>Ist aber etwas kompliziert in die Struktur reinzudenken. Falls Du Sie trotzdem verwenden willst, empfehle ich Dir dringlichst das &quot;CxImageLib&quot; Projekt als erstes zu laden und dort das &quot;Demo&quot; zuerst zu komplieren. Hierdurch werden alle Libaries angelegt.</p>
<p>Für Deine Zwecke genügt meiner Ansicht nach aber auch die CImage Klasse. Ist zwar nur ATL, aber erfüllt den Zweck.</p>
<p><a href="http://msdn2.microsoft.com/en-us/library/bwea7by5(VS.80).aspx" rel="nofollow">http://msdn2.microsoft.com/en-us/library/bwea7by5(VS.80).aspx</a></p>
<p>Hoffe konnte Dir einwenig weiterhelfen</p>
<p>Gruss Paulchen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1341635</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1341635</guid><dc:creator><![CDATA[Paulchen26]]></dc:creator><pubDate>Thu, 09 Aug 2007 15:05:36 GMT</pubDate></item><item><title><![CDATA[Reply to PNG Dateien mit transparenz speichern on Fri, 10 Aug 2007 07:35:03 GMT]]></title><description><![CDATA[<p>Danke für den Hinweis. Bin ich auch schon drauf gekommen aber weiß trotzdem nicht genau, wie ich die Klasse einsetzen soll um meinen Hintergrund transparent zu bekommen. Was muß ich dafür tun? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> Leider habe ich bisher noch nicht viel mit Bitmaps zu tun gehabt... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1341989</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1341989</guid><dc:creator><![CDATA[Hydron]]></dc:creator><pubDate>Fri, 10 Aug 2007 07:35:03 GMT</pubDate></item><item><title><![CDATA[Reply to PNG Dateien mit transparenz speichern on Fri, 10 Aug 2007 12:48:47 GMT]]></title><description><![CDATA[<p>Ich meinte natürlich wie ich die CImage Klasse benutzen kann um einen einfarbigen Hintergrund transparent zu bekommen.<br />
Der Anfang:</p>
<pre><code>CImage Bild;
	Bild.Attach(hBitmap);
</code></pre>
<p>Und nun? Wie gesagt ist das Bild 32 Bittig. Ich kann also die speziellen Funktionen wie: SetTransparentColor() nicht benutzen. Sondern muss wohl auf AlphaBlend zurückgreifen. Allerdings weiß ich nun auch nicht weiter...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1342189</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1342189</guid><dc:creator><![CDATA[Hydron]]></dc:creator><pubDate>Fri, 10 Aug 2007 12:48:47 GMT</pubDate></item><item><title><![CDATA[Reply to PNG Dateien mit transparenz speichern on Fri, 10 Aug 2007 13:34:06 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>vielleicht hilft Dir der Artikel hier weiter:</p>
<p><a href="http://www.codeproject.com/bitmap/trans_cimage.asp" rel="nofollow">http://www.codeproject.com/bitmap/trans_cimage.asp</a></p>
<p>Gruß und schönes Wochenende!</p>
<p>Paulchen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1342221</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1342221</guid><dc:creator><![CDATA[Paulchen26]]></dc:creator><pubDate>Fri, 10 Aug 2007 13:34:06 GMT</pubDate></item><item><title><![CDATA[Reply to PNG Dateien mit transparenz speichern on Mon, 13 Aug 2007 08:14:26 GMT]]></title><description><![CDATA[<p>Den Artikel kannte ich schon, hilft mir aber nicht weiter, da es sich hierbei um eine eigens erstellt CImage Klasse handelt. Ich bräuchte aber Hilfe bei der MS CImage-Klasse...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1343512</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1343512</guid><dc:creator><![CDATA[Hydron]]></dc:creator><pubDate>Mon, 13 Aug 2007 08:14:26 GMT</pubDate></item><item><title><![CDATA[Reply to PNG Dateien mit transparenz speichern on Tue, 28 Aug 2007 11:23:29 GMT]]></title><description><![CDATA[<p>Mit GDI+ sollte das Ganze so funktionieren. hBitmap ist Deine Bitmap. Durch SetRemapTable() kann eine Farbe inklusive Alphawert in eine andere umgewandelt werden. In dem Beispiel wird nur der Alphawert der Farbe weiß geändert.</p>
<pre><code>CImage Pic;
	Pic.Create( breite, hoehe, 32, CImage::createAlphaChannel );
	Gdiplus::Graphics graphics( Pic.GetDC() );

	Gdiplus::Bitmap           bitmap( hBitmap, NULL );
	Gdiplus::ImageAttributes  imageAttributes;
	Gdiplus::ColorMap         colorMap[1];

	colorMap[0].oldColor = Gdiplus::Color( 255, 255, 255, 255 );
	colorMap[0].newColor = Gdiplus::Color( 0, 255, 255, 255 );

	imageAttributes.SetRemapTable(1, colorMap, Gdiplus::ColorAdjustTypeBitmap);

	graphics.DrawImage(
		&amp;bitmap, 
		Gdiplus::Rect( 0, 0, breite, hoehe ),  // destination rectangle 
		0, 0,        // upper-left corner of source rectangle 
		breite,       // width of source rectangle
		hoehe,      // height of source rectangle
		Gdiplus::UnitPixel,
		&amp;imageAttributes);

	HRESULT hRes = Pic.Save( strDatei, Gdiplus::ImageFormatPNG );

	Pic.ReleaseDC();
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1353711</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1353711</guid><dc:creator><![CDATA[Sascha Bahl]]></dc:creator><pubDate>Tue, 28 Aug 2007 11:23:29 GMT</pubDate></item></channel></rss>