Project

slascii

0.0
No commit activity in last 3 years
No release in over 3 years
Convert images to simple ASCII art for Slack (or elsewhere)
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.15
~> 0.1
~> 10.0

Runtime

 Project Readme

Slascii

About

Slascii is a Slack Ascii-art generator. It takes pictures, and renders them as text, using a variety of options.

It's only Slack-specific in that it will (by default) output ASCII art that is under 4000 characters in length, which is the character limit of a Slack message.

Usage

Install it:

$ gem install slascii

Run it:

$ slascii face.png --width 30


                  --++oo330000000033oo++--
              --oo333333oo++++++++oo333333oo--
            ++3333oo--------------------oo3333++
          oo00oo----------------------------oo00oo
        oo33++--------------------------------++33oo
      oo33++------------------------------------++33oo
    ++00++--++------------------------++----------++00++
  --33oooo33oo33oo----------------oo33oooo33++------oo33--
  oo33oooo--  3300oo------------oooo--  ++0033++------33oo
--33oooo--  --000000++--------++oo      oo0000oo------oo33--
++33++oo      oo33oooo--------oo--      ++33oo33--------33++
oo33++oo          --oo--------oo--            oo++------33oo
33oo++oo          --oo--------oo--            oo++------oo33
00++--33oooooooooo33oo--------oo33oooooooooooo33--------++00
00++----------------------------------------------------++00
00++----------------------------------------------------++00
00++----oooooooooooooooooooooooooooooooooooooo++--------++00
33oo----oo00333333333333333333333333333333330033--------oo33
oo33----++33333333333333333333333333333333333333--------33oo
++33------33333333333333333333333333333333333333--------33++
--33oo----oo333333333333333333333333333333333333------oo33--
  oo33------3333333333333333333333333333333333oo------33++
  --33oo----oo00333333333333++------++oo333333++----oo33--
    ++00++----333333333333++------------oo00oo----++00++
      oo33++----33333333++------------++33oo----++33oo
        oo33++----330033----------++oo33oo----++33oo
          oo00oo----++3333oooooo3333oo------oo00oo
            ++3333oo------++++++--------oo3333++
              --oo333333oo++++++++oo333333++--
                  --++oo330000000033oo++--

Options

  • -i, --invert - Invert the chosen palette (ie, white-on-black becomes black-on-white)

    $ slascii face.png --width 15
    
          --++3333333333++--
        --oooo----------oooo--
      --33++--------------++33--
    --33oooo++------++++oo--++oo--
    ++33++oo00----++++--3333--oo++
    33oo  --oo++--++--  ++oo++--33
    33oo++++++++--++++++++oo++--33
    33--++++++------++++++++----33
    33--oo3333333333333333oo----33
    33--oo000000000000000000----33
    ++oo++000000003333000033--oo++
    --oo++oo000033++++++00oo++oo--
      --33++3300++--++oooo++33--
        --oooooooooooo++oooo--
          --++3333333333++--
    
    (464 chars)
    
    $ slascii face.png --width 15 --invert
    
    00000033oo----------oo33000000
    000033++++3333333333++++330000
    0033--oo33333333333333oo--3300
    33--++++oo333333oooo++33oo++33
    oo--oo++  3333oooo33----33++oo
    --++0033++oo33oo3300oo++oo33--
    --++oooooooo33oooooooo++oo33--
    --33oooooo333333oooooooo3333--
    --33++----------------++3333--
    --33++                  3333--
    oo++oo        ----    --33++oo
    33++oo++    --oooooo  ++oo++33
    0033--oo--  oo33oo++++oo--3300
    000033++++++++++++oo++++330000
    00000033oo----------oo33000000
    
    (464 chars)
    
  • -c, --chars - The number of characters to use in generating output. Slascii will generate the largest image it can without using more than this number of characters. The actual number used will usually be less, as the image's aspect ratio may not allow for exactly the requested number of characters.

  • -w, --width - The width of output in columns, overriding the default character count of 4000. Slascii will generate output that is exactly the width requested.

  • -b --no-banner - Don't print the (XXX chars) banner after the image. By default, Slascii will tell you how many characters were in the output so you have some idea whether your messaging app will accept it.

A note about palettes

Some palettes won't make sense for you, because your team won't have our custom emoji. Some palettes output emoji in the form :troll: and only align properly in a mono-space font (use triple backticks).

Samples

troll

                          ----++oooo33333333333333333333333333333333oo333333++
                    --oo3333333333oooooo++++++++++++++++++++------------++oo33++
              --++33oooo++++++------------------------------------          --33oo
            ++33oo------++--------------++++----------------------++--        --33++
        --oo33--    --    ----------------        ------------++++------        ++33--
        oo33--      ------------++--            --      --------++++------      --33++
        oo--      --++          ----          ----              ------------      ++33
      --33        --            ----          --        ------      ------        --33++
      oooo                        --              ++oo3333333333oo--                ++33--
    ++33++          ++oo3333oo++----          --oo33++--330000003333--              --33oo
  ++33++----------++00333300000033--          33oo----++33000000333333--++++      --++oo33oo--
--33oo++++--      --++++oooo3333003333++    --33oooo3333++++++--++oooo--------++++------++oooo--
3333++++------                --++33++        --33oo--    --33--        --oo3333oo33oo--  --++oo--
00oo------oo3333oo--            --oo                        oo33oo++++oo3333++----  ++33--  --oooo
00oo------++----oo00oo33++      oo33                          --++++++++--    33--    oooo  --++33
33oo----      oo--++oo++    --oo33++          --++++--                  --++330033--  --33------33
oo33------  --33--        --3333--            --oo33oo--------      --oo3333++++0033++++33------33
--33++----  oo00--      --oo00oo        --oooooo--++oo        --++oo3333++    oo33++++oooo----++33
  oooo--++--3300oo--  --------oooo      --oo++oo++33++    --oo33333333--    ++00++    ++--++--33oo
  --33--  ++00330033++          oo33oo--        --++++oo3333oo++----33----oo0033--    ------oo33--
    33++  ++0033oo333333++----  --oo++------++oo33333333--      --oo0033333300++        --oo33--
    ++oo  ++00oo++oo--3333333333333333333333oooo++--++33    --++330000oo--oooo          oo33--
    ++33  ++00oo33oo  33++  --++33++----++oo        --33oo330000333333  ++33--        ++33--
    --33  ++00000033oo33oo------33------oooo------++oo00000033++--++33++33++          33++
    --33  ++0000000000000000333300333333000033330000003333--      --3300++          ++33
    --33  --00000000000000000000000000000000000033oo--++oo        ++33oo            oo++
    --oo  --33330033000000000000000033333333oo--      --33--  --oo33++            ++33--
    ++oo    oo3333++33++oo33----33oo----  ++oo          oooo++3333--            ++33++
    ++oo    --3333++oooo--33++  ++33      ++oo        --oo0033++    --  ----  ++33++
    oo++      ++33333333++33oo----33--    ++33++++oo333333++----++----++++--oo33++
    oo++        --++oo3333333333330033333333333333oooo--  --++++--++++--++33oo--
    33++  --    --        ----++++++++++++------      --++++++++++--++3333++
    33--  --    --++--        ------------      ----++++++++----++3333++
    33--  ----    --++++----            ------++++++++------++3333++
    33--    --++------            ----------------      ++33oo++
    33++        ----------------------              ++33oo++
    ++33--                                --++++++33oo++
      ++33++                        --++33330033oo++
        ++3333oo++--------++++oooo3333oo++++--
          --++3333000000333333oo++----

bob

                        --++--++++----------------
                    ++oo33333333333333333333333333oo++--
                --oo330033333333oo33333333oo3333oooo3333++
              ++333333333333oooo++++++33oooo++oo++++oo3333oo
            ++33333333++oooo++++oo----oooo++++++oo++oooooo33++++--
          --333333oooooo++oooo++oo++----oo--++++oooooooooo33oo++
          oo003333333333333333oo++oo----oo++++++3333oooooo333333++
        ++0000003333000000000033oo33++++oooooooo333333333333330033--
        330000000033333300000000333333oo3333oo333333333333oo33000033
      --3333003333oooo3333330000330033333333oo333333oo++--++33003333++
      ++33333333oooo++oooooo3333330000330033oooo++----------oo00oo33oo
      oo333333oo++++++++++++++++++oo3333oo++----------------++00oo33oo
      oo330033oo++------------------++------------------------33oooo33
      oo330033oo++--------------------------------------------oooooo33
      33000033oo++--------------------------------------------oo33oo33
      33000033oo++--------------------------------------------oo33oo33
      33000033oo++----------------------------------------++--oo33oo33
      33000033oo++----------------------------------------++--oo333333
      oo000033oo++----------------------------------------++--oo333333
      ++000033oo++----------------------------------------++--oo33oo33
      oo330033oo++oo33333333++----------------oo3333oooo++++--oo003333--
      oooo3333oooo++++++oo3333++------------++33oooo++++oooo++++0033oo--
      oooooooooooo++++++++oo33oo++--------++oooo++++------oo++++3333++
      oo33oooo++++oooooooooo3333oo++----++3333oooooooooo--++++--3333oo
      oo33oo++--++oo--oooo++++3333++----oooooo--oooo++oo++--++--3333++
      oo33oo++--------++++--++oooo++------------++++--++----++--3333++
      ++33oo++----------++++++++oo++----------++++--------------oo33--
      ++33oo++------++++++++----oo++------------++++----  ------oooo--
      --oooo++------------------oo--------------------    ------++oo
      --++oo++----------------++++--------------------  --------++++--
        ++oo++++----  --  ----++++------------------    --------++--
        --++--oo----    --++++++++------++--++++--    --------------
          ----oo++--  --++++++oo++------++++++++oo--  ----++++--
            --oooo++--++++++3333oo++++oo33++----oooo--++++oo++--
            ++oo33oooo++++33333333333333++------++oooooooooo++--
            ++oo3333++++oo333333333333++------++++oooooo++oo++--
            --oooooo--++330033333333++--++oooo3300oo++--++oo++
            --oo++oo++--oo33++----++----------33oo++----++oo++
              ++oooo++--oo3333oo--  --------++oo--------oooo--
              --oo++++--++333300oo------++++++++--------oo++
                oo++++----330033oooo++++++++----------++oo--
                ++++++--oo000033oo++------------------oooo
                --++++oo0000oo3333oooooooo++++--------33++
                  --oo0000oo++3333oooo++++++--------oooo
    ----------    ++333333++oo33++------------------33++
  --++33oo--oo----333333oo++oooo------------------oooo
----3333--oo00oo333333oooooooooo----------------++oo--
----++--++3300003333oo--oooooooo++++----------oooo--
++3333oo--oo000033oo--  --oo3333oooooooooooooo33--
--330033++++000000++        --++++++oooo33oooo--
  oo0000oo++3300oo
  --0000oo++33oo
    ++000033oo--
      --++++

bob

333333333333333333333333333333333333333333333333333333333333333333333333333333
333333333333333333333333333333333333333333333333333333333333333333333333333333
333333333333333333333333333333333333333333333333333333333333333333333333333333
333333333333333333333333333333333333333333333333333333333333333333333333333333
333333333333333333333333333333333333333333333333333333333333333333333333333333
333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333oo333333333333333333333333000033
3333333333333333333333333333333333333333oooooooooooo33333333333333330000000033
33333333333333333333333333333333333333oo++oooooooooooooo33333333330000000000oo
3333333333333333333333333333333333oooooo++++++++++++++oo33333333000000000000++
oo3333333333333333333333333333oooo++oo++++++++++++++++oooooo3300000000000000++
333333333333333333333333333333oo++++++++++++++++++++++++++oo333300000000000033
3333oooooo3333333333333333oooooo++--------------++++++++++++oo3300000000000000
oooooooooo33333333333333oooooo++--------------------++++++++oooo00000000000000
oooooooooo333333333333oooooo------            --------++++++++oo33000000000000
oooooooo333333333333oooo33++--                ----------++++--++33000000000000
oooooooo33333333oooooo33oo++--                ----------++++--++33000000000000
oooooo3333333333333333333333oo--        --++++----------------++oo000000000000
++oooooo3333333333oooooo33oo++--        ----------------------++oo330000000000
++oooooo3333333333oo33oo++--++++--      ----------------------++oo333300000000
++oooo333333000033333333++oooo++++--  ----++++++----------------++oooo33000000
oooo33333300000033333333oooooooo++--  --++++33oo----------------++oooo33000000
oooo33330000000033333333oooooo++oo------++++oo++--------------++++oooo33330000
oo3333330000000033000033oo++++++oo----------------------++++++oooooooooo330000
3300000000000000000000oo------++++--++--      ------++++++++++++oooo++oo330000
3300000000000000000000oo------++----++++--        --++++oooo----++++--++oo3300
3300000000000000000000oo----++oo--  ------        --++++oo++------++--++++3300
330000000000000000330033++--++oo++++--------    ----++++oo++--++------++oo3300
330033000000000000000033++--------------------------++++oo--++++++++--++oo3300
330000000000000000000033oo++------------------------++++++++oooooo++++oo330000
000000000000000000000033oooooooo++++++++++++--------++++oo33000033333300000000
000000000000000000000033oo--oo33oooo++++33oo--------++++3300000000000000000033
000000000000000000000000oo----++++++++++oo++--------++330000000000000000000033
00000000000000000000000033++--++--++++oo++--------++oo000000000000000000003333
00000000000000000000000000oo--oo--++++oo----------3300000000000000000000333333
0000003333333300000000000033oooo++++++----  --++330000000000000000000033333333
003333333333330000000000000033oooo++--      ++33000000000000000000003333333300
33333333333333330000000000000033oo++--  --++3300000000000000000000333333333300
3333333333333300000033000000000033++++++oo000000000000000000000033333333330033
333333333333000000000000000033oooo33330000000000000000000000003333333333000033
003333330000000000000000003333oo3333000000000000000000000000333333333333003333
333333000000000000000000003333330000000000000000000000000033333333333300003333
333333000000000000000033333333000000000000000000000000003333333333333300000000
000000000000000000000033330000000000000000000000000000333333333333333300000000
000000000000000000003333330000000000000000000000000033333333333333330000000000
000000000000000000333300000000000000000000000000003333333333333333000000000000
000000000000000000000000000000000000000000000000003333333333333333000000000000
000000000000000000000000000000000000000000000000333333333333333300000000000000
0000000000000000000000000000000000000000000000333333333333333300000000000000