Skocz do zawartości

wojass

Użytkownicy
  • Postów

    4
  • Dołączył

  • Ostatnia wizyta

Odpowiedzi opublikowane przez wojass

  1. W X11 jest tak samo. LOLOLOL. ;DD Tylko że wiesz, to co ty zrobisz a bezpośrednie wyświetlenie w terminalu to jest co innego.

     

    no tak :) przecież grafiki nie umieszczamy w buforze STD_OUT tylko w kontekscie okienka. Jak przejdziesz na Fullscreen to juz rysowanie niedziała bo zmienia się sposób wyświetlania. Chyba też to można obejść ale to gra niewarta swieczki:)

  2. W katalogu programu musisz

    wrzucić pliczek "obrazek.bmp"

    no i tak jak ktoś wyżej pisał- lepszym rozwiązaniem jest nauczyć się okienek:)

     

    // KonsolaBitmapa.cpp : Defines the entry point for the console application.
    //
    
    //#include "stdafx.h"
    #include 
    #include 
    #include 
    
    void rysuj_bmp(HDC hDC,HBITMAP hBmp, int ix, int iy)
    {
       BITMAP bitmap;
       HDC hTempDC = CreateCompatibleDC( hDC);
    
    
       GetObject( hBmp, sizeof(BITMAP), &bitmap);
    
    
       SelectObject( hTempDC, hBmp);
       BitBlt( hDC, ix, iy, bitmap.bmWidth + ix, bitmap.bmHeight + iy, hTempDC, 0, 0, SRCCOPY);
    
       DeleteDC( hTempDC);
    }
    
    void cursoroff()
    {
     CONSOLE_CURSOR_INFO ccinf;
    
     HANDLE _hcout = GetStdHandle(STD_OUTPUT_HANDLE);
    
     GetConsoleCursorInfo(_hcout,&ccinf);
     ccinf.bVisible = false;
     SetConsoleCursorInfo(_hcout,&ccinf);  
    }
    
    
    int main(int argc, char* argv[])
    {
       char szTitle[] = "UNIKALNA NAZWA KONSOLI";
       HWND hOknoKonsoli;
    
       //kursor niewidoczny!
       cursoroff();
    
       //Szukamy okna konsoli
       SetConsoleTitle( szTitle);
       hOknoKonsoli = FindWindow( NULL, szTitle);
    
       //Wczytywanie pliku
       HBITMAP hBmp = (HBITMAP)LoadImage( NULL, "obrazek.bmp", IMAGE_BITMAP,0,0,LR_LOADFROMFILE | LR_CREATEDIBSECTION);
    
       //Czesc rysujaca
       HDC hDC = GetWindowDC( hOknoKonsoli);
    
       rysuj_bmp( hDC, hBmp, 10, 50);
    
       ReleaseDC( hOknoKonsoli, hDC);
    
    
    
    
       //Koniec aplikacji
       printf( "Nacisnij cos.....");
       while( ! kbhit( ))
           Sleep( 100);
    
       return 0;
    }
    
    
    

  3. wszystko w windowsie jest oknem(nawet okienko konsoli!!!) skoro tak... to można pobrać identyfikator okna i rysować po nim jak po normalnym oknie.

    Za jakaś chwilke napisze kod rysujacy na konsoli bitmape... ale nie jpg bo nie mam czasu grzebac w GDI+

  4. W windowsowskiej konsoli się da wyświetlić JPG. Musisz wpierw zdobyć identyfikator okna twojej konsoli HWND (SetConsoleTitle a później FindWindow) a jak to będziesz miał to funkcje z GDI+ chyba potrafią JPG czytać, nie wiem GDI+ nigdy nie urzywałem ale tak mi się obiło o uszy gdzieś. Zwykłe GDI nie potrafi jpg-ów czytac!

×
×
  • Dodaj nową pozycję...