字母的ASCII艺术,字母使用自己的字符


7

如果我执行

banner ABC

我得到:

   #    ######   #####
  # #   #     # #     #
 #   #  #     # #
#     # ######  #
####### #     # #
#     # #     # #     #
#     # ######   #####

另一个程序figlet拥有更精致的字体和用于连接相邻字符的机制,例如:

    _    ____   ____ 
   / \  | __ ) / ___|
  / _ \ |  _ \| |    
 / ___ \| |_) | |___ 
/_/   \_\____/ \____|

但是,如果我想仅使用该字母打印每个字母,即:

   A    BBBBBB   CCCCC
  A A   B     B C     C
 A   A  B     B C
A     A BBBBBB  C
AAAAAAA B     B C
A     A B     B C     C
A     A BBBBBB   CCCCC

或更妙的是,一些更紧凑的东西,例如:

  A    BBBB   CCCC 
 A A   B   B C     
A   A  BBBB  C     
AAAAA  B   B C     
A   A  BBBB   CCCC 

?实现这一目标的最简单方法是什么?

Answers:


7

有四种可选字体为figlet自己绘制它使用单ASCII字符的字母较大下列字母版本:无论是在这里alphabetletterstanja这里(相同的)或在这里letter):

字母

    b          AA  BBBB   CCC 
    b         A  A B   B C    
 aa bbb   ccc AAAA BBBB  C    
a a b  b c    A  A B   B C    
aaa bbb   ccc A  A BBBB   CCC 

  A   BBBB   CCC    A   BBBB   CCC  
 A A  B   B C   C  A A  B   B C   C 
AAAAA BBBB  C     AAAAA BBBB  C     
A   A B   B C   C A   A B   B C   C 
A   A BBBB   CCC  A   A BBBB   CCC  

字母

        bb               AAA   BBBBB    CCCCC  
  aa aa bb        cccc  AAAAA  BB   B  CC    C 
 aa aaa bbbbbb  cc     AA   AA BBBBBB  CC      
aa  aaa bb   bb cc     AAAAAAA BB   BB CC    C 
 aaa aa bbbbbb   ccccc AA   AA BBBBBB   CCCCC

坦贾

        b)                A)aa   B)bbbb     C)ccc  
        b)               A)  aa  B)   bb   C)   cc 
a)AAAA  b)BBBB   c)CCCC A)    aa B)bbbb   C)       
 a)AAA  b)   BB c)      A)aaaaaa B)   bb  C)       
a)   A  b)   BB c)      A)    aa B)    bb  C)   cc 
 a)AAAA b)BBBB   c)CCCC A)    aa B)bbbbb    C)ccc

有可能 doh

$ figlet -f doh abcABC
                 bbbbbbbb                                
                 b::::::b                                
                 b::::::b                                
                 b::::::b                                
                  b:::::b                                
  aaaaaaaaaaaaa   b:::::bbbbbbbbb        cccccccccccccccc
  a::::::::::::a  b::::::::::::::bb    cc:::::::::::::::c
  aaaaaaaaa:::::a b::::::::::::::::b  c:::::::::::::::::c
           a::::a b:::::bbbbb:::::::bc:::::::cccccc:::::c
    aaaaaaa:::::a b:::::b    b::::::bc::::::c     ccccccc
  aa::::::::::::a b:::::b     b:::::bc:::::c             
 a::::aaaa::::::a b:::::b     b:::::bc:::::c             
a::::a    a:::::a b:::::b     b:::::bc::::::c     ccccccc
a::::a    a:::::a b:::::bbbbbb::::::bc:::::::cccccc:::::c
a:::::aaaa::::::a b::::::::::::::::b  c:::::::::::::::::c
 a::::::::::aa:::ab:::::::::::::::b    cc:::::::::::::::c
  aaaaaaaaaa  aaaabbbbbbbbbbbbbbbb       cccccccccccccccc

               AAA               BBBBBBBBBBBBBBBBB           CCCCCCCCCCCCC
              A:::A              B::::::::::::::::B       CCC::::::::::::C
             A:::::A             B::::::BBBBBB:::::B    CC:::::::::::::::C
            A:::::::A            BB:::::B     B:::::B  C:::::CCCCCCCC::::C
           A:::::::::A             B::::B     B:::::B C:::::C       CCCCCC
          A:::::A:::::A            B::::B     B:::::BC:::::C              
         A:::::A A:::::A           B::::BBBBBB:::::B C:::::C              
        A:::::A   A:::::A          B:::::::::::::BB  C:::::C              
       A:::::A     A:::::A         B::::BBBBBB:::::B C:::::C              
      A:::::AAAAAAAAA:::::A        B::::B     B:::::BC:::::C              
     A:::::::::::::::::::::A       B::::B     B:::::BC:::::C              
    A:::::AAAAAAAAAAAAA:::::A      B::::B     B:::::B C:::::C       CCCCCC
   A:::::A             A:::::A   BB:::::BBBBBB::::::B  C:::::CCCCCCCC::::C
  A:::::A               A:::::A  B:::::::::::::::::B    CC:::::::::::::::C
 A:::::A                 A:::::A B::::::::::::::::B       CCC::::::::::::C
AAAAAAA                   AAAAAAABBBBBBBBBBBBBBBBB           CCCCCCCCCCCCC

8

另一个选择是在FIGlet中使用字母字体:

$ wget http://www.figlet.org/fonts/alphabet.flf
$ figlet -f alphabet.flf ABC
 AA  BBBB   CCC 
A  A B   B C    
AAAA BBBB  C    
A  A B   B C    
A  A BBBB   CCC 

5

toilet

$ toilet -f letter ABC
  A   BBBB   CCC  
 A A  B   B C   C 
AAAAA BBBB  C     
A   A B   B C   C 
A   A BBBB   CCC  

letter字体至少是Debian软件包figlet随附的字体toilet-fonts。安装该软件包后,您还可以在figletfiglet -f letter)中使用该字体。


2
很好,我不了解TOIlet(由Sam Hocevar撰写,令人惊讶)。这也适用于FIGlet!
史蒂芬·基特

@StephenKitt,请参见编辑。toilet使用相同的字体作为figlet
斯特凡Chazelas

是的,TOIlet和FIGlet现在可以相互兼容-TOIlet始终能够使用FIGlet字体,而FIGlet 2.2.4添加了对TOIlet字体的支持。(严格来说,“字母”是TOIlet字体。)
Stephen Kitt,

3

(这是对该问题的最初答案。)

一种选择是修改sysvbanner的源。显然,这并不是太困难,而是在这里。本质上,只需#一次用适当的字符替换即可。

我想要其他不涉及编译二进制文件的答案。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.