elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  [Aporte] ASCII Format
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: [Aporte] ASCII Format  (Leído 7,347 veces)
TMarmol

Desconectado Desconectado

Mensajes: 89


Just Learning


Ver Perfil WWW
[Aporte] ASCII Format
« en: 5 Enero 2014, 02:39 am »

Este es prácticamente el primer proyecto que llevo hasta el final y como en este foro me ayudáis cada vez que tengo algún problemilla he decidido compartirlo con vosotros, por si a alguien le puede interesar.

La idea la saqué de esta web http://goo.gl/UuD69p que permite crear un ASCII Art mediante el texto que le introduzcas, también tiene la opción de darle un formato ( C# Comment, Bash comment...) para los que lo usen en programación, pero como para el que yo quería no estaba, pues he hecho este programa que tiene mas formatos (solo los que yo sé) y si me decís algún formato más también puedo añadírselo (o lo intentaré xD)

Aquí una imagen de los formatos disponibles en la web:


Aquí una imagen de los formatos disponibles en mi programa:


Aquí un pequeño gif de mi programa en funcionamiento(en el RichTextBox no se ve bien, pero al pegarlo donde corresponda se verá bien):


Enlace de descarga: SOURCE
http://goo.gl/I9yfV8

Al ser mi primer aporte al foro, dejo un Análisis de VirusTotal por si hay algún escéptico:
http://goo.gl/b9rHNL

P.D: Los enlaces los pongo así, por que no se si hay alguna forma de acortarlos en el foro y no funciona el html, si hay algún problema pongo los originales


« Última modificación: 5 Enero 2014, 13:10 pm por TMarmol » En línea

TMarmol

Desconectado Desconectado

Mensajes: 89


Just Learning


Ver Perfil WWW
Re: [Aporte] ASCII Format
« Respuesta #1 en: 5 Enero 2014, 03:03 am »

Si alguien lo prueba, puede dar su opinión, hay que mejorarle muchas cosas aún  ;D


En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.878



Ver Perfil
Re: [Aporte] ASCII Format
« Respuesta #2 en: 5 Enero 2014, 03:58 am »

@TMarmol

Gracias por compartir, pero en las secciones de programación debes compartir el código fuente de la aplicación, de lo contrario moveré el post al lugar correspondiente (Software).

He probado la app en una máquina virtual pero no permite la escritura, no me captura las pulsaciones del teclado, como no hay SourceCode compartido tampoco puedo comprobar o fixear el problema.
EDITO: Ahora me percato de que quizás denegaste la escritura manual apropósito.

Algunas sugerencias:

1. Modificar la fuente del RichTextBox para usar una fuente de texto monoespaciada (Ejemplo: Lucida Console), así evitarás el problema de que se vea mal el texto.

2. Agregar un menú contextual con las opciones Copiar, pegar texto.

3. Añadir un control de errores para corregir un bug (cuando intentas seleccionar un estilo sin que haya escrito ningún texto).

4. Más estilos
Código:
.NET CDATA Literal:
-------------------
<a><![CDATA[
T
E
S
T
]]></a>.Value

.NET Console.WriteLine Method (C# Syntax)
-----------------------------------------
Console.WriteLine("T");
Console.WriteLine("E");
Console.WriteLine("S");
Console.WriteLine("T");

Win32 Registry Script Comment-line
----------------------------------
; T
; E
; S
; T

VisualBasicScript Scripting Comment-line
----------------------------------------
' T
' E
' S
' T

Ruby Scripting Comment-line
--------------------------
# T
# E
# S
# T

Python Scripting Comment-line
-----------------------------
# T
# E
# S
# T

Python Scripting Comment-Multiline
----------------------------------
'''
T
E
S
T
'''

Batch Scripting Syntax
----------------------
Echo: T
Echo: E
Echo: S
Echo: T

Batch Scripting Comment-Line
----------------------------
REM T
REM E
REM S
REM T

Batch Scripting Comment-Line (Alter)
------------------------------------
:: T
:: E
:: S
:: T

Saludos
« Última modificación: 5 Enero 2014, 04:09 am por Eleкtro » En línea



TMarmol

Desconectado Desconectado

Mensajes: 89


Just Learning


Ver Perfil WWW
Re: [Aporte] ASCII Format
« Respuesta #3 en: 5 Enero 2014, 04:16 am »

@TMarmol

Gracias por compartir, pero en las secciones de programación debes compartir el código fuente de la aplicación, de lo contrario moveré el post al lugar correspondiente (Software).

He probado la app en una máquina virtual pero no permite la escritura, no me captura las pulsaciones del teclado, como no hay SourceCode compartido tampoco puedo comprobar o fixear el problema.
EDITO: Ahora me percato de que quizás denegaste la escritura manual apropósito.

Algunas sugerencias:

1. Modificar la fuente del RichTextBox para usar una fuente de texto monoespaciada (Ejemplo: Lucida Console), así evitarás el problema de que se vea mal el texto.

2. Agregar un menú contextual con las opciones Copiar, pegar texto.

3. Añadir un control de errores para corregir un bug (cuando intentas seleccionar un estilo sin que haya escrito ningún texto).

4. Más estilos
Lo del Source no lo sabia, mañana en cuanto pueda lo subo. (lo limpiare y ordenare un poco)

Respecto a lo de que no detecta pulsaciones del teclado es por que tiene la propiedad ReadOnly, al principio mi intención no era ponerla, pero tuve varios problemas y como en el fondo el ASCII Art (por lo menos yo) lo hago en una web, lo único que necesitaba era añadir las lineas correspondientes de cada lenguaje de programación, por eso solo permite Copiar y Pegar, cuando suba el Source con vuestra ayuda lo arreglaré.
EDITO:
La 1ª Sugerencia (cambiar fuente) ya esta cumplida, le he puesto la misma fuente que has dicho "Lucida Console".

La 2ª Sugerencia (Menú Contextual) ya esta cumplida, puedes copiar y pegar texto.

La 3ª Sugerencia (control de errores) esta solucionada, más o menos, ahora si no hay nada escrito vuelve a su posición inicial (en blanco)

La 4ª Sugerencia la estoy implementando ahora mismo, igual termino mañana, ya es tarde.
« Última modificación: 5 Enero 2014, 04:33 am por TMarmol » En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.878



Ver Perfil
Re: [Aporte] ASCII Format
« Respuesta #4 en: 5 Enero 2014, 04:47 am »

Ya me imaginaba lo de la web, si es que en realidad lo suyo sería hacerle un request y pegar el contenido :P

Saludos!
En línea



TMarmol

Desconectado Desconectado

Mensajes: 89


Just Learning


Ver Perfil WWW
Re: [Aporte] ASCII Format
« Respuesta #5 en: 5 Enero 2014, 04:54 am »

Ya me imaginaba lo de la web, si es que en realidad lo suyo sería hacerle un request y pegar el contenido :P

Saludos!

Te refieres a utilizar la pagina para convertir una palabra a ASCII Art y después mostrarla en el programa?

Humm, suena interesante....

EDITO: Pero de esta forma dependería de esa web, si en algún momento se cae o deja de funcionar el programa quedaría inservible, con el método que tiene ahora, puedes usar cualquier web, no solo las que permiten crear el ascii art, sino también las que son galerías de logos e imágenes en ascii



He subido una nueva versión con todas las mejoras que ha sugerido @Elektro

El Source ya lo subo mañana, tengo que ordenarlo y quitar la porquería, mañana sigo



[MOD]: No hagas doble post
« Última modificación: 5 Enero 2014, 05:30 am por Eleкtro » En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.878



Ver Perfil
Re: [Aporte] ASCII Format
« Respuesta #6 en: 5 Enero 2014, 05:29 am »

Te refieres a utilizar la pagina para convertir una palabra a ASCII Art y después mostrarla en el programa?

Sí, me refiero a descargar la 'palabra' ya convertida a Art-ASCII, pues hay generadores online muy buenos que llevan en activo más de 5 años, aquí es donde los genero yo: http://patorjk.com/software/taag/
EDITO: Vaya, que casualidad, ahora la web parece offline XDD

Pero de esta forma dependería de esa web, si en algún momento se cae o deja de funcionar el programa quedaría inservible, con el método que tiene ahora, puedes usar cualquier web, no solo las que permiten crear el ascii art, sino también las que son galerías de logos e imágenes en ascii

En eso tienes razón, pero no es necesario depender de una web, lo que yo te sugiero hacer es añadir compatibilidad para usar las fuentes de texto predefinidas de una web, envías la query con la 'palabra' a convertir, descargas de la web y la parseas para imprimirla en el RichTextBox, solo sería algo adicional porque la función de pegar texto de galerias de logos de otras páginas seguiría funcionando igual como funcionaba antes.

De todas formas, para el problema de la web offline siempre puedes implementar el parsing de las fuentes de FIGlet en tu aplicación (es algo dificil de parsear corréctamente, ya lo intenté yo hace mucho tiempo ...pero en otro lenguaje, en VB.NET sería más facil de llevar a cabo) http://www.figlet.org/ que son las fuentes que usan prácticamente todas esas webs de Art-ASCII Text predefinidas.

Míra un ejemplo de (mala) implementación aquí: [RUBY] Proyecto sin finalizar Art ASCII Factory ¿Alguien me toma el relevo?

Saludos
« Última modificación: 5 Enero 2014, 06:14 am por Eleкtro » En línea



TMarmol

Desconectado Desconectado

Mensajes: 89


Just Learning


Ver Perfil WWW
Re: [Aporte] ASCII Format
« Respuesta #7 en: 5 Enero 2014, 13:31 pm »

Ya he actualizado el enlace de descarga, ahora contiene el Source.
Respecto a
De todas formas, para el problema de la web offline siempre puedes implementar el parsing de las fuentes de FIGlet en tu aplicación (es algo dificil de parsear corréctamente, ya lo intenté yo hace mucho tiempo ...pero en otro lenguaje, en VB.NET sería más facil de llevar a cabo) http://www.figlet.org/ que son las fuentes que usan prácticamente todas esas webs de Art-ASCII Text predefinidas.
...
Saludos

Como no he entendido la mitad de las cosas, lo que yo tenia pensado era incluir en un Modulo este codigo (solo es una parte, el original que vi estaba en PHP):
Código
  1. Module Module1
  2.    Public Function BIG(ByVal Letra As String)
  3.        Dim Result As String
  4.        If Letra = "a" Then
  5.            Result = "        " & vbCrLf &
  6. "        " & vbCrLf &
  7. "   __ _ " & vbCrLf &
  8. "  / _` |" & vbCrLf &
  9. " | (_| |" & vbCrLf &
  10. "  \__,_|" & vbCrLf &
  11. "        " & vbCrLf &
  12. "        "
  13.            Return Result
  14.        End If
  15.        If Letra = "b" Then
  16.            Result = "  _     " & vbCrLf &
  17. " | |    " & vbCrLf &
  18. " | |__  " & vbCrLf &
  19. " | '_ \ " & vbCrLf &
  20. " | |_) |" & vbCrLf &
  21. " |_.__/ " & vbCrLf &
  22. "        " & vbCrLf &
  23. "        "
  24.            Return Result
  25.        End If
  26. .
  27. .
  28. .
  29.  
Web del codigo PHP: http://api.drupalhelp.net/api/captcha_pack/ascii_art_captcha--fonts--ascii_art_captcha_font_big.inc/function/ASCII_art_captcha_font_big/7

Llamando a la función BIG mandando letra por letra el RichTextBox, de este modo se puede tener un Modulo para cada tipo de letra (BIG, 3D Diagonal...), lo pesado será escribir el abecedario entero
« Última modificación: 5 Enero 2014, 13:33 pm por TMarmol » En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.878



Ver Perfil
Re: [Aporte] ASCII Format
« Respuesta #8 en: 5 Enero 2014, 13:51 pm »

El primer problema q veo es que le estás añadiendo un vbcrlf a cada letra, cuando la intención es concatenarlos, aunque de todas formas no se si en la parte de código que falta concatenas o no, así que no me hagas caso en eso xD.

El segundo problema y uno de los más jodidos que te vas a encontrar (como a mi me pasó) es que no todas las fuentes tienen el mismo tamaño (cantidad de lineas) así que vas a tener que poner "X" letra a cierta altura de lineas, e "Y" letra a otra altura distinta, y además de eso, existe el espaciado entre las letras (los espacios en blanco para hacerlo más largo o más chico), y además de eso está el efecto de la 'fusión' de letras (no se como se denominará en inglés) ...me refiero a cuando el espacio entre las letras es NULO creando ese efecto tan Cool pero que resulta una pesadilla codearlo.

No te lo digo para desanimar, que yo te propuse la idea, solo te digo que si quieres implementar todas las funcionalidades de las letras FIGlet entonces vas a flipar en colores ...así que no te desesperes y ánimo XD.

Un saludo!
« Última modificación: 5 Enero 2014, 14:02 pm por Eleкtro » En línea



TMarmol

Desconectado Desconectado

Mensajes: 89


Just Learning


Ver Perfil WWW
Re: [Aporte] ASCII Format
« Respuesta #9 en: 5 Enero 2014, 14:26 pm »

El primer problema q veo es que le estás añadiendo un vbcrlf a cada letra, cuando la intención es concatenarlos, aunque de todas formas no se si en la parte de código que falta concatenas o no, así que no me hagas caso en eso xD.

El segundo problema y uno de los más jodidos que te vas a encontrar (como a mi me pasó) es que no todas las fuentes tienen el mismo tamaño (cantidad de lineas) así que vas a tener que poner "X" letra a cierta altura de lineas, e "Y" letra a otra altura distinta, y además de eso, existe el espaciado entre las letras (los espacios en blanco para hacerlo más largo o más chico), y además de eso está el efecto de la 'fusión' de letras (no se como se denominará en inglés) ...me refiero a cuando el espacio entre las letras es NULO creando ese efecto tan Cool pero que resulta una pesadilla codearlo.

No te lo digo para desanimar, que yo te propuse la idea, solo te digo que si quieres implementar todas las funcionalidades de las letras FIGlet entonces vas a flipar en colores ...así que no te desesperes y ánimo XD.

Un saludo!
Vale...
Acabo de darme cuenta de la cagada de los saltos de linea, creo que le agregaré la opción de usar la web como intermediaria pero manteniendo el Copy&Paste.

Con eso creo que ya quedaría finalizado.
Y por si te has mirado el Source @Elektro , esa era la mejor forma que se me ocurrio para mantener el texto original xD
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
pequeño aporte(proxy),pero aporte al fin.:D
Programación Visual Basic
Tengu 0 2,589 Último mensaje 22 Julio 2007, 17:33 pm
por Tengu
Can't format NTFS Format on my disk
Windows
GRod 6 4,398 Último mensaje 24 Enero 2013, 22:06 pm
por imoen
[Aporte] Herramienta para transformar a ascii web
Programación C/C++
DaniekL 2 2,202 Último mensaje 20 Junio 2013, 03:14 am
por leosansan
[Aporte - Python] Programa Chars-ASCII
Scripting
Príncipe_Azul 2 6,310 Último mensaje 9 Diciembre 2018, 01:33 am
por tincopasan
[BATCH] [Aporte] Folder Locker & ASCII ART
Scripting
M401 1 2,306 Último mensaje 21 Julio 2020, 00:39 am
por .:Xx4NG3LxX:.
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines