C Large sizable text for the terminal using ncurses?

Hello,

For instance nclock or terminal tty clock can display the time with larger chars.

Would you know a source code to display text (with resizing) to larger one using the getmaxxy / rows / cols of the present terminal?

thank you
 
For instance nclock or terminal tty clock can display the time with larger chars.
Neither of those actually use a larger font. The clock's digits are drawn using normal sized characters.
 
I made this. Done... out from my void to give large chars ;)
C:
         case '0':
             posy = 1 ;
             posx = 1 ;
             mychar[ 1 ][ 3 ] = 1;
             mychar[ 2 ][ 3 ] = 1;
             mychar[ 3 ][ 3 ] = 1;
             mychar[ 4 ][ 3 ] = 1;
             mychar[ 5 ][ 3 ] = 1;
             mychar[ 1 ][ 1 ] = 1;
             mychar[ 2 ][ 1 ] = 1;
             mychar[ 3 ][ 1 ] = 1;
             mychar[ 4 ][ 1 ] = 1;
             mychar[ 5 ][ 1 ] = 1;
             mychar[ 1 ][ 2 ] = 1;
             mychar[ 5 ][ 2 ] = 1;
             break;


         case ':':
             posy = 1 ;
             posx = 1 ;
             mychar[ 1 ][ 3 ] = 0;
             mychar[ 2 ][ 3 ] = 1;
             mychar[ 3 ][ 3 ] = 0;
             mychar[ 4 ][ 3 ] = 1;
             mychar[ 5 ][ 3 ] = 0;
             break;


         case '1':
             posy = 1 ;
             posx = 1 ;
             mychar[ 1 ][ 3 ] = 1;
             mychar[ 2 ][ 3 ] = 1;
             mychar[ 3 ][ 3 ] = 1;
             mychar[ 4 ][ 3 ] = 1;
             mychar[ 5 ][ 3 ] = 1;
             break;

         case '2':
             posy = 1 ;
             posx = 1 ;
             mychar[ 1 ][ 1 ] = 1;
             mychar[ 1 ][ 2 ] = 1;
             mychar[ 1 ][ 3 ] = 1;

             mychar[ 2 ][ 1 ] = 0;
             mychar[ 2 ][ 2 ] = 0;
             mychar[ 2 ][ 3 ] = 1;

             mychar[ 3 ][ 1 ] = 1;
             mychar[ 3 ][ 2 ] = 1;
             mychar[ 3 ][ 3 ] = 1;

             mychar[ 4 ][ 1 ] = 1;
             mychar[ 4 ][ 2 ] = 0;
             mychar[ 4 ][ 3 ] = 0;

             mychar[ 5 ][ 1 ] = 1;
             mychar[ 5 ][ 2 ] = 1;
             mychar[ 5 ][ 3 ] = 1;
             break;
         case '3':
             posy = 1 ;
             posx = 1 ;
             mychar[ 1 ][ 1 ] = 1;
             mychar[ 1 ][ 2 ] = 1;
             mychar[ 1 ][ 3 ] = 1;

             mychar[ 2 ][ 1 ] = 0;
             mychar[ 2 ][ 2 ] = 0;
             mychar[ 2 ][ 3 ] = 1;

             mychar[ 3 ][ 1 ] = 1;
             mychar[ 3 ][ 2 ] = 1;
             mychar[ 3 ][ 3 ] = 1;

             mychar[ 4 ][ 1 ] = 0;
             mychar[ 4 ][ 2 ] = 0;
             mychar[ 4 ][ 3 ] = 1;

             mychar[ 5 ][ 1 ] = 1;
             mychar[ 5 ][ 2 ] = 1;
             mychar[ 5 ][ 3 ] = 1;
             break;

         case '4':
             posy = 1 ;
             posx = 1 ;
             mychar[ 1 ][ 1 ] = 1;
             mychar[ 1 ][ 2 ] = 0;
             mychar[ 1 ][ 3 ] = 1;

             mychar[ 2 ][ 1 ] = 1;
             mychar[ 2 ][ 2 ] = 0;
             mychar[ 2 ][ 3 ] = 1;

             mychar[ 3 ][ 1 ] = 1;
             mychar[ 3 ][ 2 ] = 1;
             mychar[ 3 ][ 3 ] = 1;

             mychar[ 4 ][ 1 ] = 0;
             mychar[ 4 ][ 2 ] = 0;
             mychar[ 4 ][ 3 ] = 1;

             mychar[ 5 ][ 1 ] = 0;
             mychar[ 5 ][ 2 ] = 0;
             mychar[ 5 ][ 3 ] = 1;
             break;

         case '5':
             posy = 1 ;
             posx = 1 ;
             mychar[ 1 ][ 1 ] = 1;
             mychar[ 1 ][ 2 ] = 1;
             mychar[ 1 ][ 3 ] = 1;

             mychar[ 2 ][ 1 ] = 1;
             mychar[ 2 ][ 2 ] = 0;
             mychar[ 2 ][ 3 ] = 0;

             mychar[ 3 ][ 1 ] = 1;
             mychar[ 3 ][ 2 ] = 1;
             mychar[ 3 ][ 3 ] = 1;

             mychar[ 4 ][ 1 ] = 0;
             mychar[ 4 ][ 2 ] = 0;
             mychar[ 4 ][ 3 ] = 1;

             mychar[ 5 ][ 1 ] = 1;
             mychar[ 5 ][ 2 ] = 1;
             mychar[ 5 ][ 3 ] = 1;
             break;

         case '6':
             posy = 1 ;
             posx = 1 ;
             mychar[ 1 ][ 1 ] = 1;
             mychar[ 1 ][ 2 ] = 1;
             mychar[ 1 ][ 3 ] = 1;

             mychar[ 2 ][ 1 ] = 1;
             mychar[ 2 ][ 2 ] = 0;
             mychar[ 2 ][ 3 ] = 0;

             mychar[ 3 ][ 1 ] = 1;
             mychar[ 3 ][ 2 ] = 1;
             mychar[ 3 ][ 3 ] = 1;

             mychar[ 4 ][ 1 ] = 1;
             mychar[ 4 ][ 2 ] = 0;
             mychar[ 4 ][ 3 ] = 1;

             mychar[ 5 ][ 1 ] = 1;
             mychar[ 5 ][ 2 ] = 1;
             mychar[ 5 ][ 3 ] = 1;
             break;



         case '7':
             posy = 1 ;
             posx = 1 ;
             mychar[ 1 ][ 1 ] = 1;
             mychar[ 1 ][ 2 ] = 1;
             mychar[ 1 ][ 3 ] = 1;

             mychar[ 2 ][ 1 ] = 1;
             mychar[ 3 ][ 1 ] = 1;

             posy=1;
             mychar[ posy++ ][ 3 ] = 1;
             mychar[ posy++ ][ 3 ] = 1;
             mychar[ posy++ ][ 3 ] = 1;
             mychar[ posy++ ][ 3 ] = 1;
             mychar[ posy++ ][ 3 ] = 1;
             break;

         case '8':
             posy = 1 ;
             posx = 1 ;
             mychar[ 1 ][ 1 ] = 1;
             mychar[ 1 ][ 2 ] = 1;
             mychar[ 1 ][ 3 ] = 1;
             mychar[ 2 ][ 1 ] = 1;
             mychar[ 2 ][ 2 ] = 0;
             mychar[ 2 ][ 3 ] = 1;
             mychar[ 3 ][ 1 ] = 1;
             mychar[ 3 ][ 2 ] = 1;
             mychar[ 3 ][ 3 ] = 1;
             mychar[ 4 ][ 1 ] = 1;
             mychar[ 4 ][ 2 ] = 0;
             mychar[ 4 ][ 3 ] = 1;
             mychar[ 5 ][ 1 ] = 1;
             mychar[ 5 ][ 2 ] = 1;
             mychar[ 5 ][ 3 ] = 1;
             break;

         case '9':
             mychar[ 1 ][ 1 ] = 1;
             mychar[ 1 ][ 2 ] = 1;
             mychar[ 1 ][ 3 ] = 1;
             mychar[ 2 ][ 1 ] = 1;
             mychar[ 2 ][ 2 ] = 0;
             mychar[ 2 ][ 3 ] = 1;
             mychar[ 3 ][ 1 ] = 1;
             mychar[ 3 ][ 2 ] = 1;
             mychar[ 3 ][ 3 ] = 1;
             mychar[ 4 ][ 1 ] = 0;
             mychar[ 4 ][ 2 ] = 0;
             mychar[ 4 ][ 3 ] = 1;
             mychar[ 5 ][ 1 ] = 1;
             mychar[ 5 ][ 2 ] = 1;
             mychar[ 5 ][ 3 ] = 1;
             break;

      for ( j = 1 ; ( j <= mycharmaxy ) ; j++)
      for ( i = 1 ; ( i <= mycharmaxx ) ; i++)
      {
         if ( mychar[j][i] == 1 )
             attron(A_REVERSE);
         else
             attroff(A_REVERSE);
         mvaddch( y1 + (j-1) , x1 + (i-1) , ' ');
      }
 
Last edited by a moderator:
Back
Top