【问题标题】:How do you input an ASCII art image into the console in JS?如何在 JS 中将 ASCII 艺术图像输入到控制台?
【发布时间】:2020-10-15 23:59:34
【问题描述】:

我正在尝试在控制台中显示此 ASCII 图像:

_______                                       
\  ___ `'.            /|                 .--. 
 ' |--.\  \           ||                 |__| 
 | |    \  '          ||                 .--. 
 | |     |  '         ||  __        __   |  | 
 | |     |  | _    _  ||/'__ '.  .:--.'. |  | 
 | |     ' .'| '  / | |:/`  '. '/ |   \ ||  | 
 | |___.' /'.' | .' | ||     | |`" __ | ||  | 
/_______.'/ /  | /  | ||\    / ' .'.''| ||__| 
\_______|/ |   `'.  | |/\'..' / / /   | |_    
           '   .'|  '/'  `'-'`  \ \._,\ '/    
            `-'  `--'            `--'  `" 

但是,我收到多个错误,因为我不知道您将如何输入它以使其在激活代码时显示在控制台中。

【问题讨论】:

  • 调用console.log()在控制台中显示字符串。
  • 你在问如何在你的 JavaScript 源代码中放置一个多行字符串?你可以用反斜杠转义换行符,你可以把\n放在字符串中,你可以使用模板字符串。
  • ASCII 艺术必须使用反引号和字体系列等宽字体,请参阅下面的答案

标签: javascript ascii


【解决方案1】:

您可以使用模板字符串文字:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals

可以使用反引号来完成,例如:

console.log(`%c
_______                                       
\  ___ \`'.            /|                 .--. 
 ' |--.\  \           ||                 |__| 
 | |    \  '          ||                 .--. 
 | |     |  '         ||  __        __   |  | 
 | |     |  | _    _  ||/'__ '.  .:--.'. |  | 
 | |     ' .'| '  / | |:/\`  '. '/ |   \ ||  | 
 | |___.' /'.' | .' | ||     | |\`" __ | ||  | 
/_______.'/ /  | /  | ||\    / ' .'.''| ||__| 
\_______|/ |   \`'.  | |/\'..' / / /   | |_    
           '   .'|  '/'  \`'-'\`  \ \._,\ '/    
            \`-'  \`--'            \`--'  \`" 
`, `font-family: monospace`);

你必须排列 ASCII:

  • 转义每个反引号,否则将终止字符串。
  • 控制台使用的字体与 ASCII 图像(等宽)使用的字体不同,在 Chrome 中您可以设置字体,否则,您需要排列 ASCII 图像以适应控制台字体。

要查看字体变化,请使用真正的控制台,而不是 StackOverflow 中的控制台

【讨论】:

    【解决方案2】:

    使用模板文字在字符串中嵌入换行符。您需要转义字符串中的反引号。

    console.log(`_______                                       
    \  ___ \`'.            /|                 .--. 
     ' |--.\  \           ||                 |__| 
     | |    \  '          ||                 .--. 
     | |     |  '         ||  __        __   |  | 
     | |     |  | _    _  ||/'__ '.  .:--.'. |  | 
     | |     ' .'| '  / | |:\`  '. '/ |   \ ||  | 
     | |___.' /'.' | .' | ||     | |\`" __ | ||  | 
    /_______.'/ /  | /  | ||\    / ' .'.''| ||__| 
    \_______|/ |   \`'.  | |/\'..' / / /   | |_    
               '   .'|  '/'  \`'-'\`  \ \._,\ '/    
                \`-'  \`--'            \`--'  \`" `);

    【讨论】:

      【解决方案3】:

      您也可以只使用 figlet。确保首先使用 npm i figlet 安装它

      const figlet = require("figlet")
      figlet.text("Text", function (err, data){
       console.log(data)
      })
      

      上面的代码是将文本发送到模块“figlet”并将文本以 ascii 艺术形式返回的函数。尝试更改“文本”以查看结果。

      【讨论】:

        【解决方案4】:

        您需要同时转义反引号字符和反斜杠字符。

        const str = `_______                                       
        \\  ___ \`'.            /|                 .--. 
         ' |--.\\  \\           ||                 |__| 
         | |    \\  '          ||                 .--. 
         | |     |  '         ||  __        __   |  | 
         | |     |  | _    _  ||/'__ '.  .:--.'. |  | 
         | |     ' .'| '  / | |:/\`  '. '/ |   \\ ||  | 
         | |___.' /'.' | .' | ||     | |\`" __ | ||  | 
        /_______.'/ /  | /  | ||\\    / ' .'.''| ||__| 
        \\_______|/ |   \`'.  | |/\\'..' / / /   | |_    
                   '   .'|  '/'  \`'-'\`  \\ \\._,\\ '/    
                    \`-'  \`--'            \`--'  \`" `;
        console.log(str);

        【讨论】:

          【解决方案5】:

          发现了这个神奇的online converter,它可以用来转义 JavaScript 字符串

          复制粘贴ASCII文本到freeformatter,将转义后的字符串复制到console.log("");

          console.log("\r\n\u2591\u2588\u2588\u2588\u2588\u2588\u2557\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2557\u2591\u2588\u2588\u2588\u2557\u2591\u2591\u2588\u2588\u2557\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2591\u2588\u2588\u2588\u2588\u2588\u2557\u2591\u2588\u2588\u2557\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2591\u2591\u2591\u2588\u2588\u2557\u2591\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2557\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2591\r\n\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2557\u2591\u2588\u2588\u2551\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2551\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2591\u2591\u2591\u2588\u2588\u2551\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2591\r\n\u2588\u2588\u2551\u2591\u2591\u255A\u2550\u255D\u2588\u2588\u2551\u2591\u2591\u2588\u2588\u2551\u2588\u2588\u2554\u2588\u2588\u2557\u2588\u2588\u2551\u255A\u2588\u2588\u2588\u2588\u2588\u2557\u2591\u2588\u2588\u2551\u2591\u2591\u2588\u2588\u2551\u2588\u2588\u2551\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2557\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2551\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2551\u2591\u2591\u2588\u2588\u2551\u2588\u2588\u2551\u2591\u2591\u2588\u2588\u2557\u2591\r\n\u2588\u2588\u2551\u2591\u2591\u2588\u2588\u2557\u2588\u2588\u2551\u2591\u2591\u2588\u2588\u2551\u2588\u2588\u2551\u255A\u2588\u2588\u2588\u2588\u2551\u2591\u255A\u2550\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2551\u2591\u2591\u2588\u2588\u2551\u2588\u2588\u2551\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2554\u2550\u2550\u255D\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2551\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2551\u2591\u2591\u2588\u2588\u2551\u2588\u2588\u2551\u2591\u2591\u255A\u2588\u2588\u2557\r\n\u255A\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u255A\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2551\u2591\u255A\u2588\u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u255A\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u255A\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u255A\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\r\n\u2591\u255A\u2550\u2550\u2550\u2550\u255D\u2591\u2591\u255A\u2550\u2550\u2550\u2550\u255D\u2591\u255A\u2550\u255D\u2591\u2591\u255A\u2550\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u255D\u2591\u2591\u255A\u2550\u2550\u2550\u2550\u255D\u2591\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D\u2591\u255A\u2550\u2550\u2550\u2550\u255D\u2591\u2591\u255A\u2550\u2550\u2550\u2550\u2550\u255D\u2591")
          

          结果

          ░█████╗░░█████╗░███╗░░██╗░██████╗░█████╗░██╗░░░░░███████╗░░░██╗░░░░░░█████╗░░██████╗░
          ██╔══██╗██╔══██╗████╗░██║██╔════╝██╔══██╗██║░░░░░██╔════╝░░░██║░░░░░██╔══██╗██╔════╝░
          ██║░░╚═╝██║░░██║██╔██╗██║╚█████╗░██║░░██║██║░░░░░█████╗░░░░░██║░░░░░██║░░██║██║░░██╗░
          ██║░░██╗██║░░██║██║╚████║░╚═══██╗██║░░██║██║░░░░░██╔══╝░░░░░██║░░░░░██║░░██║██║░░╚██╗
          ╚█████╔╝╚█████╔╝██║░╚███║██████╔╝╚█████╔╝███████╗███████╗██╗███████╗╚█████╔╝╚██████╔╝
          ░╚════╝░░╚════╝░╚═╝░░╚══╝╚═════╝░░╚════╝░╚══════╝╚══════╝╚═╝╚══════╝░╚════╝░░╚═════╝░
          

          【讨论】:

            猜你喜欢
            • 2011-01-11
            • 1970-01-01
            • 1970-01-01
            • 2018-06-29
            • 2016-01-04
            • 2011-11-14
            • 1970-01-01
            • 2013-06-27
            • 1970-01-01
            相关资源
            最近更新 更多