Mysterium: Bilder in der Konsole
-
Ich würde nun gerne mal das Mysterium aufgelöst haben, ob es möglich ist, Bilder in der Konsole auszugeben. Also keine Textbilder, sondern richtige JPGs. Geht das? Und wenn es geht, dann wie? Oder ist das nur ein dummes Gerücht?
-
Hi.
Nein, geht nicht.
In der Konsole kann nur Text ausgegeben werden.Du kannst zwar das Konsolenfenster mit Grafiken uebermalen, aber das hat an sich nichts mehr mit der Konsole zu tun.
-
...gar nicht geht würde ich nicht behaupten. Nur muß man schon übelst tricksen um Resizes und Moves abzufangen. Eine einfachere Alternative wär sicher ein eigenes Fenster, das aussieht wie die Konsole und sich so verhält.
-
okay, also, von dem moven und resizen hab ich gar keine Ahnung. Ist es für jemanden schwer, der gerade erst mit API anfängt, damit umzugehen und dies zu erlernen?
-
...man mit normalen Fenstern hantiert. Konsolenwindows kriegen aber keine Mitteilungen darüber, die muß man sich anders besorgen, was schwierig werden kann.
-
nimm beispielsweise den Grafikmodus 12h.
Der ist EGA und hat 640 * 480 Pixel. Bei 8x8 Pixeln hast du 80*40 Zeichen und du kannst 16-farbige Bilder darstellen..
-
@DocJunioR: Sicher, dass das auch noch in der Konsole funktioniert? Kann mir kaum vorstellen, dass dich XP da dran lässt.
Für Bilder kannst du entweder lernen mit Fensterprogrammierung umzugehen bzw. schau dir doch mal Allegro an (Siehe Spiele/Grafik-FAQ)
MfG SideWinder
-
dumme Frage, aber wie machen z. B. libcaca & co sowas?
libcaca: http://sam.zoy.org/libcaca/
Demo unter Windows: http://sam.zoy.org/libcaca/libcaca-win32-0.9.zip
-
also BMPs kann man in der Konsole ausgeben!
JPGs hab ich noch nicht probiert, aber kann mir vorstellen, dass es auch geht...
-
hier ist ein schönes beispiel fürs normale zeichnen in die konsole (hab ich irgendwann in diesem forum gefunden)
#include <math.h> #include <windows.h> const double M_PI = 4.0 * atan(1.0); int main(int argc, char* argv[]) { float x=0; float y_s=0, y_c=0, y_t=0; int i; HWND hWnd = FindWindow( "ConsoleWindowClass", NULL ); if( !hWnd ) return 1; HDC hDC = GetDC( hWnd ); if( !hDC ) return 1; //clrscr(); for (i=30; i<700; i++) { SetPixel( hDC, i, 150, RGB( 255, 255, 255 )); } for (i=50; i<250; i++) { SetPixel( hDC, 30, i, RGB( 255, 255, 255 )); } for (x=0; x<=720; x=x+0.001) { y_s=sin(x*M_PI/180); SetPixel( hDC, x+30, 150-(y_s*100), RGB( 255, 0, 0 )); y_c=cos(x*M_PI/180); SetPixel( hDC, x+30, 150-(y_c*100), RGB( 0, 0, 255 )); y_t=tan(x*M_PI/180); SetPixel( hDC, x+30, 150-(y_t*100), RGB( 0, 255, 0 )); } return 0; }
@Airdamn: ob jpg oder bmp ist ja egal. jpgs sind ja bloß komprimiert. muss man nur in eine bitmap umwandeln und kann sie dann genauso zeichnen...
-
@tuempi: Das Fenster danach auch schonmal bewegt oder teilweise überdeckt?
MfG SideWinder
-
ist eh logisch, dass der so gezeichnete fensterinhalt nicht neugezeichnet wird. ich wollte nur zeigen, dass das zeichnen prinzipiell möglich ist. dafür ist das, finde ich, ein schönes beispiel.
-
Beispiel schön, ja, aber diese Tatsache macht die ganze Sache für reale Zwecke aber leider unbrauchbar
MfG SideWinder
-
es geht...
zieht euch das mal rein
dan habt ihr eure lösung.
-
nur, wenn man xp fährt. ansonsten nicht.
bye
-
<just4funp programmer& schrieb:
es geht...
zieht euch das mal rein
dan habt ihr eure lösung.
Also das ist im Prinzip das selbe Beispiel wie oben
MfG SideWinder
-
<just4funp programmer& schrieb:
es geht...
zieht euch das mal rein
dan habt ihr eure lösung.
Also das ist im Prinzip das selbe Beispiel wie oben
MfG SideWinder
-
http://www.mmsources.de/pub/xyz.png
EDIT: Huch, hab nicht gesehen, dass der Thread schon "veraltet" ist
-
Blue-Tiger schrieb:
dumme Frage, aber wie machen z. B. libcaca & co sowas?
libcaca: http://sam.zoy.org/libcaca/
Demo unter Windows: http://sam.zoy.org/libcaca/libcaca-win32-0.9.zipjetzt bin ich neidisch!
verdammt.. auch können will ^^
MFG
Schinken
-
Schinken schrieb:
Blue-Tiger schrieb:
dumme Frage, aber wie machen z. B. libcaca & co sowas?
libcaca: http://sam.zoy.org/libcaca/
Demo unter Windows: http://sam.zoy.org/libcaca/libcaca-win32-0.9.zipjetzt bin ich neidisch!
verdammt.. auch können will ^^
MFG
SchinkenWas können?