<?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[Buchstabe zu Bitmap]]></title><description><![CDATA[<p>HIIILFEE!!</p>
<p>Ich bin am verzweifeln.<br />
Ich muss einen Buchstaben (z.b. 'A') in ein bitmap umwandeln, dass 8x8 groß ist.<br />
Ich hab nur ein Delphi-Sample zum &quot;lernen&quot;. Da blick ich aber fast NULL durch.</p>
<p>Hat einer nen Beispiel in C++ oder irgendwelche anderen Hilfen, wo ich mich da einlesen könnte?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/165560/buchstabe-zu-bitmap</link><generator>RSS for Node</generator><lastBuildDate>Sat, 02 May 2026 05:58:37 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/165560.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 21 Nov 2006 09:32:46 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Buchstabe zu Bitmap on Tue, 21 Nov 2006 09:32:46 GMT]]></title><description><![CDATA[<p>HIIILFEE!!</p>
<p>Ich bin am verzweifeln.<br />
Ich muss einen Buchstaben (z.b. 'A') in ein bitmap umwandeln, dass 8x8 groß ist.<br />
Ich hab nur ein Delphi-Sample zum &quot;lernen&quot;. Da blick ich aber fast NULL durch.</p>
<p>Hat einer nen Beispiel in C++ oder irgendwelche anderen Hilfen, wo ich mich da einlesen könnte?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1178261</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1178261</guid><dc:creator><![CDATA[Uruk-h4j]]></dc:creator><pubDate>Tue, 21 Nov 2006 09:32:46 GMT</pubDate></item><item><title><![CDATA[Reply to Buchstabe zu Bitmap on Tue, 21 Nov 2006 09:59:01 GMT]]></title><description><![CDATA[<p>DC erzeugen. (CreateCompatibleDC)<br />
Bitmap erzeugen. (CreateCompatibleBitmap)<br />
Bitmap in DC selektieren. (SelectObject)<br />
Text mit Buchstaben auf DC ausgeben. (DrawText/TextOut)<br />
Bitmap aus DC wieder lösen. (SelectObject)<br />
DC entsorgen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1178282</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1178282</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Tue, 21 Nov 2006 09:59:01 GMT</pubDate></item><item><title><![CDATA[Reply to Buchstabe zu Bitmap on Tue, 21 Nov 2006 10:55:11 GMT]]></title><description><![CDATA[<p>BAHNHOF???</p>
<p>Nein im ernst hilft mir ein wenig weiter.</p>
<pre><code class="language-cpp">CBitmap cBitmap;
CDC* cDC;
CFont cFont;

cBitmap.CreateCompatibleBitmap(cDC,64,8);

cFont.CreateFont(28, 0, 0, 0, FW_NORMAL, 0, 0, 0, DEFAULT_CHARSET, OUT_CHARACTER_PRECIS, CLIP_CHARACTER_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE, &quot;Arial&quot;);
</code></pre>
<p>Soweit richtig hoff ich mal!?<br />
Hat keiner ein Tutorial oder bsp-code irgendwo?<br />
Will ja keine lösung, nur nen Ansatz, wie ich da rankomme.<br />
Bin da voll ins kalte wasser geworfen worden mit der Aufgabe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1178334</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1178334</guid><dc:creator><![CDATA[Uruk-h4j]]></dc:creator><pubDate>Tue, 21 Nov 2006 10:55:11 GMT</pubDate></item><item><title><![CDATA[Reply to Buchstabe zu Bitmap on Tue, 21 Nov 2006 11:04:18 GMT]]></title><description><![CDATA[<p>Wo hast Du CreateCompatibleDC aufgerufen?</p>
<p>Nein ich habe keinen Samplecode für so etwas.</p>
<p>&lt;selbstgespräch&gt;Ich habe manchmal den Eindruck hier sitzen nur CPP-Programmierer (Copy&amp;Paste-Programmierer) aber wenig C++ Entwickler...&lt;/selbstgespräch&gt; <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1178345</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1178345</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Tue, 21 Nov 2006 11:04:18 GMT</pubDate></item><item><title><![CDATA[Reply to Buchstabe zu Bitmap on Tue, 21 Nov 2006 11:11:32 GMT]]></title><description><![CDATA[<p>&lt;einmischung in Selbstgespräch per Telepatie&gt;<br />
Irgendwie muss man ja anfangen und wenns keine Beispiel gibt, wo man schauen kann wies in etwas aufgebaut ist wird man irre &lt;/einmischung in Selbstgespräch per Telepatie&gt;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1178355</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1178355</guid><dc:creator><![CDATA[Uruk-h4j]]></dc:creator><pubDate>Tue, 21 Nov 2006 11:11:32 GMT</pubDate></item><item><title><![CDATA[Reply to Buchstabe zu Bitmap on Tue, 21 Nov 2006 14:48:42 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">//Variablen dekleration
	CBitmap cBitmap;
	CDC cDC;
	CDC* pDC = this-&gt;GetDC();

	cDC.CreateCompatibleDC(pDC);
	cBitmap.CreateCompatibleBitmap(pDC,64,8);
	cDC.SelectObject(cBitmap);
	cDC.TextOutA(0,0,m_value,m_value.GetLength());

	m_abcd = cBitmap.GetBitmapBits(1,pDC);

cDC.DeleteDC();
</code></pre>
<p>Ich steck irgendwo fest. Und ich hab keine ahnung warum.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1178366</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1178366</guid><dc:creator><![CDATA[Uruk-h4j]]></dc:creator><pubDate>Tue, 21 Nov 2006 14:48:42 GMT</pubDate></item><item><title><![CDATA[Reply to Buchstabe zu Bitmap on Tue, 21 Nov 2006 15:15:43 GMT]]></title><description><![CDATA[<p>So habs nun doch hinbekommen:</p>
<pre><code class="language-cpp">UpdateData(true);

	CBitmap cBitmap;
	CDC cDC;
	CDC* pDC = this-&gt;GetDC();

	cDC.CreateCompatibleDC(pDC);
	cBitmap.CreateCompatibleBitmap(pDC,64,8);
	cDC.SelectObject(&amp;cBitmap);

	cDC.TextOutA(0,0,m_value,m_value.GetLength());

//	pDC-&gt;BitBlt(10, 10, 64, 8, &amp;cDC, 0, 0, SRCCOPY);

	cDC.DeleteDC();

	UpdateData(false);
</code></pre>
<p>Nur hab ich ein Problem mit dem .GetBitmapBits(). Ich hab diverse quellen durchgesehen und da stand was, dass man das nicht mehr nutzen soll und lieber<br />
GetDIBit() nehmen soll. Hab aber nicht rausbekommen warum.</p>
<p>Ich würde halt gerne die einzelnen Bits zur weiterverarbeitung auslesen.<br />
Hoffe ich liege wenigstens mit GetBitmapBits() richtig...?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1178619</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1178619</guid><dc:creator><![CDATA[Uruk-h4j]]></dc:creator><pubDate>Tue, 21 Nov 2006 15:15:43 GMT</pubDate></item><item><title><![CDATA[Reply to Buchstabe zu Bitmap on Tue, 21 Nov 2006 20:07:50 GMT]]></title><description><![CDATA[<p>Uruk-h4j schrieb:</p>
<blockquote>
<p>&lt;einmischung in Selbstgespräch per Telepatie&gt;<br />
Irgendwie muss man ja anfangen und wenns keine Beispiel gibt, wo man schauen kann wies in etwas aufgebaut ist wird man irre &lt;/einmischung in Selbstgespräch per Telepatie&gt;</p>
</blockquote>
<p>Kauf Dir ein C++ Buch, lern die Grundlagen und beginn dann (ebenfalls begleitet von einem Buch oder einem _guten_ Tutorial) mit einer objektorientierten (modernen, MFC ist NICHT modernes C++ -Ganz im Gegenteil) API.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1178785</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1178785</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Tue, 21 Nov 2006 20:07:50 GMT</pubDate></item><item><title><![CDATA[Reply to Buchstabe zu Bitmap on Tue, 21 Nov 2006 20:20:41 GMT]]></title><description><![CDATA[<p>Uruk-h4j schrieb:</p>
<blockquote>
<p>So habs nun doch hinbekommen:</p>
<pre><code class="language-cpp">UpdateData(true);

	CBitmap cBitmap;
	CDC cDC;
	CDC* pDC = this-&gt;GetDC();
	
	cDC.CreateCompatibleDC(pDC);
	cBitmap.CreateCompatibleBitmap(pDC,64,8);
	cDC.SelectObject(&amp;cBitmap);
	
	cDC.TextOutA(0,0,m_value,m_value.GetLength());

//	pDC-&gt;BitBlt(10, 10, 64, 8, &amp;cDC, 0, 0, SRCCOPY);

	cDC.DeleteDC();

	UpdateData(false);
</code></pre>
</blockquote>
<p>1. alte Bitmap merken, bei SelectObject.<br />
2. alte Bitmap vor DC zerstören wieder einselektieren.</p>
<p>Du hast also eine CBitmap, was wilst Du nun eigentlich damit. Du wolltest doch eine, das war doch Deine primäre Frage!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1178795</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1178795</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Tue, 21 Nov 2006 20:20:41 GMT</pubDate></item><item><title><![CDATA[Reply to Buchstabe zu Bitmap on Wed, 22 Nov 2006 08:11:39 GMT]]></title><description><![CDATA[<p>Ich muss/will die einzelnen Bits bzw. Zeilen als Bits auslesen. Die brauch ich für ne LED-Matrix zum senden der Daten.</p>
<p>Wie gesagt hab nen Beispiel in Delphi gefunden, aber das ist halt ein wenig anders als C. Da wird das halt so gemacht ,dass die Daten in ein BMP gepackt werden und dann die Zeilen als Bits gelesen werden. Von der Theorie simpel, aber das umsetzen ist recht schwer, wenn man keinen wirklichen anhaltspunkt hat.</p>
<p>Aber mit dem hier werd ich das schon hin bekommen (hoffe ich).<br />
Nur noch die Frage, was ich nehmen soll an functione. GetBirmapBits() oder GetDIBits()....</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1178970</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1178970</guid><dc:creator><![CDATA[Uruk-h4j]]></dc:creator><pubDate>Wed, 22 Nov 2006 08:11:39 GMT</pubDate></item><item><title><![CDATA[Reply to Buchstabe zu Bitmap on Wed, 22 Nov 2006 10:32:09 GMT]]></title><description><![CDATA[<p>Monochrome Bitmap erzeugen. Und dann einfach mit GetPixel drüber laufen.<br />
Ist zwar lahm, aber für 8x8 oder 64x64 oder solche kleine Werte vollkommen zu vernachlässigen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1179089</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1179089</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Wed, 22 Nov 2006 10:32:09 GMT</pubDate></item><item><title><![CDATA[Reply to Buchstabe zu Bitmap on Wed, 22 Nov 2006 10:35:56 GMT]]></title><description><![CDATA[<p>Jo hab ich mir auch gerade gedacht.<br />
Ich werds probieren und mal das Ergebnis hier kund tun.</p>
<p>Danke für deine Hilfe!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1179092</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1179092</guid><dc:creator><![CDATA[Uruk-h4j]]></dc:creator><pubDate>Wed, 22 Nov 2006 10:35:56 GMT</pubDate></item><item><title><![CDATA[Reply to Buchstabe zu Bitmap on Fri, 24 Nov 2006 10:49:34 GMT]]></title><description><![CDATA[<p>Sooo...<br />
ich hab den code fertig und stelle gerade fest, das er die daten nicht so einließt, wie das Bild wirklich dargestellt wird.</p>
<p>Spricht sehe (ein &quot;F&quot;):</p>
<p>XXXXXOOO<br />
XXXXXOOO<br />
XOOOXOOO<br />
XOXXXOOO<br />
XOOOXOOO<br />
XOXXXOOO<br />
XOXXXOOO<br />
XOXXXOOO</p>
<p>aber daten sehen so aus:</p>
<p>XXXXXXXX<br />
XXOOOOOO<br />
XXOXOXXX<br />
XXOXOXXX<br />
XXXXXXXX<br />
OOOOOOOO<br />
OOOOOOOO<br />
OOOOOOOO</p>
<p>Also sprich der ganze kram ist gedreht und zwar um 90° und spiegelverkehrt.</p>
<pre><code class="language-cpp">CBitmap cBitmap;
	CDC cDC;
	CDC* pDC = this-&gt;GetDC();
	UCHAR bits[512] = {};
	UCHAR bytes[64] = {};
	int loop = 0;
	int wBit = 0;
	CFont cFont;

	cFont.CreateFont(10, 0, 0, 0, FW_NORMAL, 0, 0, 0, DEFAULT_CHARSET, OUT_CHARACTER_PRECIS, CLIP_CHARACTER_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE, &quot;Arial&quot;);

	cDC.CreateCompatibleDC(pDC);
	cBitmap.CreateCompatibleBitmap(pDC,64,8);
	cDC.SelectObject(&amp;cBitmap);
	cDC.SelectObject(&amp;cFont);
	cDC.TextOutA(0,0,m_value,m_value.GetLength());

	//Output on dialog
	pDC-&gt;BitBlt(0, 0, 64, 8, &amp;cDC, 0, 0, SRCCOPY);

	//Get Pixel from cBitmap into cTemp[]
	for(int i = 0; i &lt; 8; i++)
	{
		for(int j = 0; j &lt; 64; j++)
		{
			loop++; 
			bits[loop-1] = GetPixel(cDC,i,j);
		}
	}

cDC.DeleteDC(); 

	for(int x = 0; x &lt; 64; x++)
	{
		//Create a Byte from 8 bit
		for(int y = 0; y &lt; 8; y++) //trans[0] |= data[128+l]&lt;&lt;1;
		{
			wBit++;
			bytes[x] = bytes[x]&lt;&lt;1;
			if( bits[(wBit-1)+y] == NULL ) //!= NULL für original daten
				bytes[x] |= 1;
		}
	}
</code></pre>
<p>Mach ich irgendwas falsch mit der Grafik?<br />
Bitte um hilfe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1180596</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1180596</guid><dc:creator><![CDATA[Uruk-h4j]]></dc:creator><pubDate>Fri, 24 Nov 2006 10:49:34 GMT</pubDate></item><item><title><![CDATA[Reply to Buchstabe zu Bitmap on Fri, 24 Nov 2006 10:55:28 GMT]]></title><description><![CDATA[<p>Was soll denn das mit den beiden Arrays? Warum verwendest Du GetPixel nicht direkt und speicherst es nicht sofort?</p>
<p>Deine Schleife geht ja auch von Oben nach unten? Das heißt erst Splate 0 Pixel speichern, dann Spalte 1. Dadurch hast Du die 90% Drehung.</p>
<p>Und dadurch dass Du einschiftest von rechts nach links bekommst Du eine Spiegelung.<br />
Wundert mich nicht....</p>
<p>Was willst Du eigentlich haben? Ich dachte Du wolltest einen Array [8][8]? Warum benutzt Du keinen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1180604</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1180604</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Fri, 24 Nov 2006 10:55:28 GMT</pubDate></item><item><title><![CDATA[Reply to Buchstabe zu Bitmap on Fri, 24 Nov 2006 12:05:25 GMT]]></title><description><![CDATA[<p>ahh ok..dass mit den spalten erklärt vieles. Ist aber ehrlich ein blöder fehler von mir. jetzt wi ichs getauscht hab les ich auch mehr daten ^^ Aber wieso von rechts nach links? der erste pixel ist doch o/o oben links in der ecke. oder seh ich dasc falsch?</p>
<p>Aber wie meinst du das mit dem direkten speichern? DA steig ich noch nicht durch.<br />
Das mit den beiden arrays hab ich so gewählt, da ich das als einfachsten weg gesehen hab. braucht ja zum schluss schließlich 64 Bytes.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1180650</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1180650</guid><dc:creator><![CDATA[Uruk-h4j]]></dc:creator><pubDate>Fri, 24 Nov 2006 12:05:25 GMT</pubDate></item></channel></rss>