Jump to content
thinkabout

Imprimir uma imagem em ascii

Recommended Posts

thinkabout

Imprimir uma imagem em ascii

Boas como consigo imprimir uma imagem direitinha em c (ascii).

Já a converti e no notepad++ ela aprece direitinha, se abrir com o notepad ou se a mandar imprimir em s , aparece toda transformada.

#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>
#include<stdlib.h>


int main (/*int argc, char * argv[]*/)
{

char linha [160]; // Onde vou por a linha que quero imprimir
FILE *original;

if ( (original=fopen("apresentacao.txt","r"))== NULL )
               {
                       printf("Erro de abertura do ficheiro\n");
                       exit(1);
               }

	while (fgets(linha, sizeof linha, original) != NULL)
			{  
				printf("%s", linha);
			}

               fclose(original);
}

Share this post


Link to post
Share on other sites
brunoais

Mostra um exemplo do input e do output que dá, sff.

Já agora, tens o ficheiro gravado em ANSI?


"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Share this post


Link to post
Share on other sites
thinkabout

No notepad++ fica bem mas é se fizer bué zoom out (reparei agora), em tamanho normal não fica grande pistola mas no notepad fica pior.

Recomendas algum conversor ?

E sim a pouco estava em ANSI.

Share this post


Link to post
Share on other sites
pmg

Se o teu texto tiver uma linha com 20 'm' e outra com 20 'i', essa linhas devem ter o mesmo comprimento?

mmmmmmmmmmmmmmmmmmmm

iiiiiiiiiiiiiiiiiiii

mmmmmmmmmmmmmmmmmmmm
iiiiiiiiiiiiiiiiiiii


What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Share this post


Link to post
Share on other sites
thinkabout

Se eu gravar em ansi ele faz-me isso ?

Já fiz uma brincadeira com isto http://www.asciiflow.com/ e está a bombar.

Mas queria era converter um logotipo e depois que ficasse decente.

Existe forma de eu centrar a imagem no meio do ecrã ?

Edited by thinkabout

Share this post


Link to post
Share on other sites
brunoais

Se eu gravar em ansi ele faz-me isso ?

Não, mas evita problemas

Já fiz uma brincadeira com isto http://www.asciiflow.com/ e está a bombar.

ok.

Mas queria era converter um logotipo e depois que ficasse decente.

Não sei o que é o ser decente.

Existe forma de eu centrar a imagem no meio do ecrã ?

Isso é bastante complicado porque precisas de arranjar maneira de saber o tamanho da consola e eu não sei como fazer isso. Nem sei se há alguma maneira de confiança de o fazer


"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Share this post


Link to post
Share on other sites
HappyHippyHippo

http://stackoverflow.com/questions/1022957/getting-terminal-width-in-c

// <------------ NCURSES !!! ---------------->
#include <ncurses.h>
#include <string.h>
#include <signal.h>

// SIGWINCH is called when the window is resized.
void handle_winch(int sig){
 signal(SIGWINCH, SIG_IGN);

 // Reinitialize the window to update data structures.
 endwin();
 initscr();
 refresh();
 clear();

 char tmp[128];
 sprintf(tmp, "%dx%d", COLS, LINES);

 // Approximate the center
 int x = COLS / 2 - strlen(tmp) / 2;
 int y = LINES / 2 - 1;

 mvaddstr(y, x, tmp);
 refresh();

 signal(SIGWINCH, handle_winch);
}

int main(int argc, char *argv[]){
 initscr();
 // COLS/LINES are now set

 signal(SIGWINCH, handle_winch);

 while(getch() != 27){
   /* Nada */
 }

 endwin();

 return(0);
}

Edited by HappyHippyHippo

IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
thinkabout

"- O código C do programa deve seguir a norma C89/C90."

Será que posso usar o #include <ncurses.h> ?

Share this post


Link to post
Share on other sites
HappyHippyHippo

ok ... não deves ter percebido bem o que é isso da norma : http://en.wikipedia.org/wiki/ANSI_C#C89_and_C90

não interessa se o ncurses é C89/90, C99 ou C11. está compilado e nem vais saber qual foi usado.

o que interessa é o "teu" código que tem de ser compilado com a flag --std-c89 sem erros e/ou avisos


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
thinkabout

Humm, agora só tenho que por o visual studio a papar isso.

Ando para aqui a ler mas é só para Linux, para windows ainda não encontrei nada muito claro.

Edited by thinkabout

Share this post


Link to post
Share on other sites
thinkabout
;) já andava desconfiado disso, logo já vou roer isso quando tiver "out of the work".

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.