Coder Social home page Coder Social logo

dotmatrix's Introduction

imageimage

****** image input ****** ****** terminal output ******

Dotmatrix is a simple and fun package & command-line utility for encoding images to all-braille unicode representations. It can be used as a standalone command-line utility or as a package. Currently jpeg, gif, png, and bmp types are supported.

Animated gif support is experimental, but awesome ;) NOTE: Some terminals, such as iTerm2, have a poor refresh rate when playing animated gifs. This cannot be helped. The default terminal on OSX is quite speedy though. This is what it looks like:

lemonade

Godocs

Usage

As a Package

import (
  "image"
  "os"
  "github.com/kevin-cantwell/dotmatrix"
)

func Encode(img image.Image) error {
  return dotmatrix.Print(os.Stdout, img)
}

As a Command-Line Utility

Installation

> go get -u github.com/kevin-cantwell/dotmatrix/cmd/dotmatrix
> dotmatrix --help
NAME:
   dotmatrix - A command-line tool for encoding images as unicode braille symbols.

USAGE:
   1) dotmatrix [options] [file|url]
   2) dotmatrix [options] < [file]

VERSION:
   0.1.0

AUTHOR:
   Kevin Cantwell <[email protected]>

COMMANDS:
     help, h  Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --invert, -i                    Inverts image color. Useful for black background terminals
   --gamma value, -g value         GAMMA less than 0 darkens the image and GAMMA greater than 0 lightens it. (default: 0)
   --brightness value, -b value    BRIGHTNESS = -100 gives solid black image. BRIGHTNESS = 100 gives solid white image. (default: 0)
   --contrast value, -c value      CONTRAST = -100 gives solid grey image. CONTRAST = 100 gives maximum contrast. (default: 0)
   --sharpen value, -s value       SHARPEN greater than 0 sharpens the image. (default: 0)
   --mirror, -m                    Mirrors the image.
   --mono                          Images are drawn without Floyd Steinberg diffusion.
   --motion, --mjpeg               Interpret input as an mjpeg stream, such as from a webcam.
   --framerate value, --fps value  Force a framerate for mjpeg streams. Default is -1 (ie: no delay between frames). (default: -1)
   --help, -h                      show help
   --version, -v                   print the version

Examples

Given this input image:

image

And with a sharpen factor of 100 (max) you get this:

$ dotmatrix --sharpen 100 < face.jpg
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⣿⣜⢽⡺⣿⣿⣺⣿⣏⣿⣿⣿⣿⢿⣟⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣾⣿⣿⣿⣿⣿⣿⣿⣿⣽⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣜⡞⣧⢅⢳⡙⣼⣻⡢⡺⡼⣻⢞⡯⣟⣽⢻⡿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣻⣯⣿⣿⣿⡿⡿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡜⣖⢔⠕⢸⡳⡢⡱⠅⡞⣽⠱⢳⢫⡟⡞⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣱⣿⣿⣵⡿⣿⣟⡿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣽⣷⢿⡽⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⡿⡽⣿⢿⣻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣮⢣⢫⠀⠣⠂⢘⠐⢁⢊⠠⠉⢎⢎⢣⢿⡻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡏⡼⡜⡾⡯⡫⢽⢽⣗⢟⣿⣿⣿⣿⣿⣿⣿⣟⡮⣟⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⡿⡭⡺⣫⣟⡷⣟⢾⢽⢿⣟⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣎⠄⢊⢂⠠⠈⠄⠂⠀⢁⢑⠁⢜⡧⡗⢡⢮⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣜⢜⢌⢊⠈⣄⢜⢿⡫⣿⣿⣿⣿⣿⣿⣿⡿⡱⣻⢟⣿⣽⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⢝⠔⢕⣵⢭⡿⡾⣷⣝⢮⢝⡣⣟⡝⢟⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣵⡤⠀⠀⠀⠀⠀⠀⠅⢅⠃⡕⢁⠁⡌⢙⢿⣿⣿⣿⣿⣿⣿⣿⣿⡷⠀⡔⠅⠂⠈⢈⠲⠜⣿⣿⣿⣿⣿⣿⣿⣗⢩⢻⢼⣻⣯⣿⣿⣿⣿⣿⣿⡿⣿⣿⣿
⣿⡿⣥⡱⡕⢃⡱⢋⡯⣎⠾⣜⠳⣕⢦⠑⢕⠢⠻⡿⡻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣇⡀⡀⠀⠀⠀⠀⠕⠀⠀⠀⠀⠐⠀⠈⢿⣿⣿⣿⣿⣿⣿⣿⣿⡃⠡⠂⠀⠈⠄⠐⢅⢸⣿⣿⣿⣿⣿⣿⣟⢈⢯⣟⣿⣿⢿⣿⣿⣿⣿⣯⢿⣻⣿⣿
⣿⣿⢵⡪⢂⡎⢄⠅⡒⢵⢹⢊⢋⢢⠁⠁⠂⠈⠀⠀⠀⠁⠙⠻⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣤⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣿⣿⣿⣿⣿⣿⣿⣷⡀⠠⠀⠀⠈⠀⠐⠢⠙⣿⣿⣿⣿⣿⣟⠔⣷⡿⡷⡽⣷⣿⣿⣿⣿⣫⢿⣻⣿⣿
⣿⣿⣿⣿⣿⣧⣧⡬⡐⠦⠉⣉⢃⢂⠁⠠⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣻⣿⣿⣿⣿⣿⣿⣿⡆⠀⠀⠀⠀⠀⠀⠅⣋⣿⣿⣿⣿⣿⣿⢜⢈⣜⢯⣻⡯⣿⣿⣿⣿⢮⢷⣿⣾⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣮⣧⣅⡁⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⣿⣿⣿⣿⣿⣿⣷⡆⠀⠀⠀⠀⠀⠀⠀⡽⣿⣿⣿⣿⢽⢂⠲⠼⢭⢾⣾⣿⣿⣿⣿⢞⣽⣾⢟⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣶⣄⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣀⠀⠀⠀⠀⠀⠀⠀⠀⠉⢿⣿⣿⣿⣿⣿⣿⡀⠀⠀⠀⠀⠀⠀⣸⣿⣿⣿⣿⢧⢃⠡⢡⣡⣜⣿⣿⣿⣿⣿⢽⢿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣦⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣆⠀⠀⠀⠀⠀⠀⠀⠘⣿⣿⣿⣿⣿⣿⣷⡀⠀⠀⠀⠀⠀⠨⣿⣿⣿⣿⡏⡂⠀⠡⠐⢹⣽⣿⣿⣿⣻⠝⡧⣻⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠻⣿⣿⣿⣿⣿⣿⣿⣽⣿⣄⠀⠀⠀⠀⠀⠀⠀⢻⣿⣿⣿⣿⣿⣿⡧⠀⠀⠀⠀⠀⠈⣿⣿⣿⣿⡇⠀⠈⠀⡈⣐⣿⣿⣿⣿⣞⠆⡊⣻⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣽⣻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣤⣀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠛⢿⣿⣿⣿⣿⣿⣿⣿⣷⣄⠀⠀⠀⠀⠀⠀⠹⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⡅⠀⠀⠀⠀⣐⣿⣿⣿⣿⣟⢪⣺⣿⣿⣟
⣿⣿⣿⣽⣿⣿⡿⡿⢿⢟⠟⠻⠛⠛⠚⠛⠛⠿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣀⠀⠀⠀⠀⠀⠀⠀⠀⠙⣿⣿⣿⣿⣿⣿⣿⣿⣆⠀⠀⠀⠀⠀⠀⢻⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⡇⠀⠀⠀⠠⣼⣿⣿⣿⣿⢎⢮⣿⣿⡿⣾
⣿⣿⣿⡺⡪⡊⡂⢁⠌⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠙⠻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣦⣄⠀⠀⠀⠀⠀⠀⠈⠙⢿⣿⣿⣿⣿⣿⣿⣦⠀⠀⠀⠀⠀⠀⢿⣿⣿⣿⣿⡂⠀⠀⠀⠀⠀⣿⣿⣿⣿⠁⠀⠀⠀⢀⢼⣿⣿⣿⠽⣈⣻⣿⣿⢯⣿
⠿⠿⣿⣺⡪⣢⡢⡡⡢⣑⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠻⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣦⡀⠀⠀⠀⠀⠀⠀⠹⢿⣿⣿⣿⣿⣿⣆⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⠆⠀⠀⠀⠀⠀⣿⣿⣿⣿⠀⠀⠀⠀⣰⣿⣿⣟⢟⢅⣽⣿⣿⣏⣿⣿
⠀⠀⢽⡾⣿⣿⣿⣿⣿⣿⣗⢯⣇⢷⡵⣶⣦⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠙⠿⣿⣿⣿⣿⣿⣿⣿⣶⣄⠀⠀⠀⠀⠀⠈⢻⣿⣿⣿⣿⣿⣆⠀⠀⠀⠀⠈⣿⣿⣿⣿⠂⠀⠀⠀⠀⢀⣿⣿⣿⡟⠀⠀⠀⠠⣿⣿⣟⠝⠤⡢⣻⣿⢕⣽⣿⣿
⣴⣾⣾⣿⣟⣿⣿⣿⣿⣿⢎⢗⣵⣫⡻⣿⣿⣿⣿⣿⣶⣦⣄⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⠻⣿⣿⣿⣿⣿⣿⣷⡄⠀⠀⠀⠀⠀⠙⣿⣿⣿⣿⣿⡆⠀⠀⠀⠀⣿⣿⣿⣿⠂⠀⠀⠀⠀⢰⣿⣿⣿⠇⠀⠀⠀⣸⣿⡿⠜⠌⡷⣽⣿⡯⣷⣻⣿⠟
⣿⣾⣿⣿⣿⣿⣿⣿⡟⣎⠪⡝⡜⡾⣺⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣦⣄⣀⠀⠀⠀⠀⠀⠀⠉⠛⢿⣿⣿⣿⣿⣷⣆⠀⠀⠀⠀⠈⢻⣿⣿⣿⣷⠀⠀⠀⠀⢸⣿⣿⣿⠀⠀⠀⠀⠀⣼⣿⣿⡏⠀⠀⠀⢠⣿⣯⠇⠀⣾⣿⣿⢳⣽⣿⡿⠃⢁
⣿⣿⣿⣿⣿⣿⣿⣿⠉⠀⠀⠀⠀⠀⠀⠉⠉⠙⠛⠿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣤⣀⠀⠀⠀⠀⠀⠀⠙⢿⣿⣿⣿⣿⣷⡄⠀⠀⠀⠀⢻⣿⣿⣿⡆⠀⠀⠀⠈⣿⣿⣿⠀⠀⠀⠀⢀⣿⣿⣿⠀⠀⠀⠀⣼⡿⡞⠀⢠⣿⣿⡻⡈⣿⡿⠑⣰⣾
⣿⣿⡟⠉⢏⢿⢏⠣⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠛⠻⣿⣿⣿⣿⣿⣿⣿⣿⣦⣄⡀⠀⠀⠀⠀⠈⠹⣿⣿⣿⣿⣦⡀⠀⠀⠀⠙⣿⣿⣿⡄⠀⠀⠀⣿⣿⣿⠀⠀⠀⠀⣼⣿⣿⡏⠀⠀⠀⢰⣿⡻⠁⠀⣾⠋⢙⠄⣪⡷⠁⣸⣿⣿
⣿⣿⡁⢐⢨⢝⠄⡕⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠙⠻⢿⣿⣿⣿⣿⣿⣿⣷⣄⠀⠀⠀⠀⠀⠙⢿⣿⣿⣿⣄⠀⠀⠀⠘⢿⣿⣧⠀⠀⠀⢼⣿⣿⠀⠀⠀⠀⣿⣿⣿⠃⠀⠀⠀⣼⡿⠃⠀⢰⠏⠀⢐⢴⡿⢕⣠⣿⣿⣿
⣿⡿⠀⠀⠜⡠⡃⣬⣔⢖⡽⣺⢝⢽⢿⣿⣶⣶⣶⣤⣤⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠙⠛⠿⣿⣿⣿⣿⣶⣦⡀⠀⠀⠀⠙⢿⣿⣿⣧⠀⠀⠀⠘⣿⣿⡄⠀⠀⢸⣿⣿⠀⠀⠀⠀⣿⣿⡟⠀⠀⢀⣼⣿⠁⠀⣠⡞⠁⠀⡰⣽⣿⣾⣿⣿⣿⣿
⣿⠅⠀⠀⢌⢂⣾⣿⡳⡣⣏⢞⣮⣻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣶⣦⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠻⠿⣿⣿⣿⣦⣀⠀⠀⠈⠻⣿⣿⣷⡄⠀⠀⠹⣿⣷⡀⠀⠘⣿⣿⡄⠀⠀⢸⣿⡿⠀⠀⠀⢸⣿⠋⠀⣰⡟⠀⠀⢰⣿⣿⣿⣿⣿⣿⣿⠟
⣿⠂⢀⣠⣾⢾⣿⣿⡝⣮⢳⡹⣼⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣶⣤⣤⣀⡀⠀⠀⠀⠀⠀⠀⠉⠙⠻⢿⣷⣦⡀⠀⠈⠙⣿⣿⣦⣄⠀⠉⢻⣧⠀⠀⠙⣿⡇⠀⠀⢼⡿⠋⠀⢠⡾⠛⠁⢠⡖⠋⠀⠀⣠⣿⣿⡿⢱⣿⣿⠟⠁⠀
⣿⡕⢩⣯⣞⣿⣿⣿⠚⠈⠁⠁⠁⠉⠉⠉⠉⠛⠛⠛⠛⢛⢛⢛⢛⠛⠛⠛⠟⠟⠿⣿⣿⣿⣿⣿⣶⣶⣤⣀⡀⠀⠀⠀⠀⠈⠙⢿⣶⣄⡀⠀⠙⢿⣿⣦⡀⠀⢻⣆⣀⣠⣿⣧⣤⣤⣿⣀⣀⣴⠟⠀⣠⡴⠟⠀⠀⢀⣰⣿⡿⠕⠈⠐⠉⠀⠀⠀⠀
⣿⣶⣿⣿⣿⣿⣿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠁⢹⣽⣿⣿⡿⢟⢿⣿⣿⣿⣿⣶⣶⣶⣴⣌⠍⠋⠛⠛⠛⠻⠿⠿⢶⣦⣤⣄⣀⠀⠈⠉⠛⠲⢲⢔⡽⣿⣷⣿⣿⣿⣿⣿⣿⣿⣿⠛⠿⣿⣿⣿⠏⠋⠉⠀⣀⣤⣶⣿⣿⡯⠋⠀⠠⣟⠀⠀⠀⠀⢀
⣿⣿⣿⣿⣿⡿⡝⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⣫⣻⡟⠣⠀⠘⢻⡝⠛⠙⣽⠋⠙⢿⣿⣿⣮⣤⡂⠀⠀⠀⠀⠀⠀⠈⠉⠉⠛⠛⠛⠚⢋⣉⣥⡾⣿⣿⠑⠈⠿⣍⣉⣩⠾⠁⠀⠈⢋⣻⣮⣵⣷⣾⣿⣿⣿⣿⠿⠛⠀⠀⠀⡨⣿⠄⢀⣠⣾⣿
⣿⣿⣿⠉⠈⡊⢪⠀⠀⠀⠀⣀⣀⣄⣤⣤⣴⣶⣾⣿⣿⣿⣶⣤⣀⡀⠈⠁⠉⠀⢀⢀⣈⢷⣿⣿⣿⣿⣷⣦⣤⣤⣤⣤⣤⣤⣤⣤⣤⣤⡖⠋⠉⢁⣼⠛⠝⢵⣤⣤⣤⣥⣀⣤⣤⣴⣾⠿⠿⠟⠛⠉⠉⠉⠉⠀⠀⠀⠀⠀⢀⡴⣧⣿⣿⣾⣿⣿⣿
⣿⣿⣿⣷⡠⠀⠅⠅⢀⣔⢾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠿⠟⠁⠀⠀⠀⠈⠛⠛⠛⠛⠋⠛⠙⠋⠉⠉⠁⢀⣶⣾⠟⠋⣠⠴⢩⢾⣿⢿⡧⡉⠳⢧⣤⣄⣀⣀⣀⣠⣤⣤⣤⣤⣤⣦⣶⣶⣾⣿⢯⢿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣷⣶⣬⣶⢕⣝⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠿⠟⠛⠛⠋⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣴⡿⠋⢁⡴⠊⣡⠔⡃⢐⡞⠈⢧⠸⣦⣤⡈⠉⠋⠛⠛⠛⠛⠛⠛⠟⠿⠿⠿⠿⠛⠉⠈⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣗⢼⣺⣿⣿⣿⣿⣿⣿⠿⠿⠛⠛⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣀⣀⣤⣤⣶⣾⣿⡿⠟⠀⣠⠋⠀⡸⠁⡔⠁⡯⡐⡇⠸⡄⠉⢻⣿⣷⣦⣄⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⡳⣝⡿⠛⠋⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣤⣶⣶⣾⣿⣿⣿⣿⣿⣿⠿⠛⠋⠉⠀⢠⣴⠃⢠⡾⠁⡞⠀⢸⡇⣇⠱⣄⠹⣄⠀⠈⠙⠻⢿⣿⣿⣿⣾⣷⣶⣶⣶⣶⣦⢄⢆⣾⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡏⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣴⣶⣿⣿⣿⣿⣿⡿⠿⠛⠛⠉⠁⠀⠀⠀⠀⣠⣴⡿⠁⣰⣿⠃⢰⠇⠀⣾⡇⢹⡄⠹⡇⠹⣷⣄⡀⠀⠀⠀⠙⠻⠿⣿⣿⣿⣿⣿⣿⣣⢻⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣤⣤⣶⣶⣿⣿⣿⣿⣿⠿⠛⠉⠀⠀⠀⠀⠀⠀⠀⠀⣀⣤⣾⡿⠋⠀⣰⣿⠃⠀⣼⠀⢀⣿⡇⠸⣷⠀⢹⣄⠙⠻⣷⣦⣄⠀⠀⠀⠀⠀⠉⠙⠛⠛⠟⠜⢽⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡄⠀⠀⠀⠀⠀⠀⢀⣤⣴⣾⣿⣿⣿⣿⣿⣿⣿⣿⠟⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣴⣿⣿⣿⠟⠀⠀⢠⣿⠇⠀⢰⡗⠀⢐⣿⡇⠀⣿⡇⠀⢻⣆⠀⠘⣿⣿⣷⣦⣀⠀⠀⠀⠀⠀⠀⠀⠀⣼⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡄⠀⢀⣤⣴⣾⣿⣿⣿⣿⣿⣿⣿⣿⠟⠛⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣴⣾⣿⣿⣿⠗⠁⠀⠀⣠⣾⣿⠀⠀⣽⠃⠀⢘⣿⡇⠀⢹⣿⡄⠈⢻⣷⡄⠀⠙⠻⣿⣿⣿⣶⣄⡀⠀⠀⠀⣠⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠟⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣴⣾⣿⣿⣿⣿⠟⠁⠀⠀⠀⣴⣿⣿⡇⠀⠀⣿⠀⠀⢸⣿⣷⠀⠀⣿⣧⠀⠀⢿⣿⡀⠀⠀⠈⠿⣿⣿⣿⣿⣿⣶⡷⣻⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⣀⣴⣾⣿⣿⣯⣿⠟⠛⠁⠀⠀⠀⢀⣼⣿⣿⣿⠃⠀⢀⣿⠂⠀⢸⣿⣿⠀⠀⢻⣿⡄⠀⠈⢿⣿⣆⡀⠀⠀⠈⠛⢿⣿⣿⣿⠝⣽⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠟⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⣤⣾⣿⣿⣿⣿⣿⢋⠡⣤⡀⠀⠀⠀⢠⣾⣿⣿⡟⣃⣠⣤⣾⠋⠀⠀⣼⣿⣿⠀⠀⠈⣿⣷⡀⠀⠘⣿⣿⣷⡄⠀⠀⠀⠀⠉⠉⠁⢀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠛⠛⠁⠀⠀⠀⠀⠀⠀⠀⠀⣠⣴⣿⣿⣿⣿⣿⠟⠉⠀⠉⠑⠩⠙⣲⣴⣾⣿⣿⡟⠋⠙⠉⣿⣿⠇⠀⠀⠀⢿⣿⣿⡀⠀⠀⢹⣿⣷⡀⠀⠙⢿⣿⣿⣦⣄⡀⠀⠀⠀⠀⣸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣾⣿⣿⣿⣿⣿⡿⠋⠀⠀⠀⠀⠀⠀⢰⣿⣿⣿⣿⠁⠀⠀⠀⢠⣿⣿⠃⠀⠀⠀⢸⣿⣿⣇⠀⠀⠘⣿⣿⣧⠀⠀⠀⠻⣿⣿⣿⣿⣷⣿⣾⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⡀⠀⠀⠀⠀⠀⣠⣶⣿⣿⣿⣿⣿⣿⠟⠁⠀⠀⠀⠀⠀⠀⣴⣿⣿⣿⣿⠃⠀⠀⠀⠀⣸⣿⣿⠀⠀⠀⠀⢘⣿⣿⣿⣆⠀⠀⢻⣿⣿⣧⠀⠀⠀⠘⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⡀⠀⠀⠀⣼⣿⣿⣿⣿⣿⣿⣿⠃⠀⠀⠀⠀⠀⠀⠀⣸⣿⣿⣿⣿⠇⠀⠀⠀⠀⠀⣿⣿⣿⠀⠀⠀⠀⠀⣿⣿⣿⣿⡄⠀⠀⢻⣿⣿⡄⠀⠀⠀⠀⠈⠙⠙⣩⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⡀⣀⣼⣿⣿⣿⣿⣿⣿⡿⠋⠀⠀⠀⠀⠀⠀⠀⣴⣿⣿⣿⣿⡟⠀⠀⠀⠀⠀⢰⣿⣿⣿⠀⠀⠀⠀⠀⣿⣿⣿⣿⣷⠀⠀⠈⢿⣿⣿⣦⡀⠀⠀⠀⠀⣠⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠏⠀⠀⠀⢠⣠⣀⣄⣤⣾⣿⣿⣿⣿⣿⡂⠀⠀⠀⠀⢀⣿⣿⣿⣿⡀⠀⠀⡀⣠⣿⣿⣿⣿⣿⡆⠀⠀⠈⢿⣿⣿⣿⣦⡀⢀⣴⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⠿⣿⣿⣿⣿⠃⠀⠀⠀⠀⠀⠈⠉⢹⣿⣿⣿⣿⣿⣿⠟⠛⠛⠛⠚⠛⣻⣿⣿⣿⣿⠛⠙⠚⠛⠙⢿⣿⣿⣿⣿⣧⠀⠀⠀⠘⣿⣿⣿⣿⠟⢻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡯⢊⢹⣿⡿⠁⠀⠀⠀⠀⠀⠀⠀⢠⣿⣿⣿⣿⣿⣿⠋⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠸⣿⣿⣿⣿⣿⡄⠀⠀⠀⠙⣿⣿⠃⠀⠸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢏⠄⠀⠝⡁⠀⠀⠀⠀⠀⠀⠀⢠⣾⣿⣿⣿⣿⣿⠃⠀⠀⠀⠀⠀⠀⢰⣿⣿⣿⣿⣿⠄⠀⠀⠀⠀⠀⢿⣿⣿⣿⣿⣿⡄⠀⠀⠀⣸⡅⠀⠀⠀⠻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣳⣿⣿⠅⡀⠂⠅⠢⡂⠀⠀⠀⠀⠀⣠⣿⣿⣿⣿⣿⣿⡟⠡⠪⣒⢲⡲⣔⢖⣾⣿⣿⣿⣿⣿⡂⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⡀⢠⣾⣿⣿⣄⠀⠀⠀⢽⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡟⣗⢷⣿⣿⠐⠀⠠⠁⡑⠨⡂⡀⠀⠀⣴⣿⣿⣿⣿⣿⣿⡿⠃⠀⠀⠀⠀⠈⠀⠁⣿⣿⣿⣿⣿⣿⡆⠀⠀⠀⠀⠀⠈⢿⣿⣿⣿⣿⣿⣷⣿⣿⣿⣿⣷⣆⠄⠀⠀⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢿⢣⡫⣞⣟⣿⢷⡡⠁⠠⠁⠄⠅⡊⢶⣀⣺⣿⣿⣿⣿⣿⣿⡿⠁⠀⠀⠀⠀⠀⠀⠀⠠⣿⣿⣿⣿⣿⣿⣧⠀⠀⠀⠀⠀⠀⠘⣿⣿⡿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣇⡂⠀⠀⢈⠻⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⡟⢝⢜⢜⢼⡳⣯⢿⣝⠆⡀⠂⢁⠐⡀⡊⣺⣿⣿⣿⣿⣿⣿⣿⡿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠐⣿⣿⣿⣿⣿⣿⣿⡄⠀⠀⠀⠀⠀⠀⠸⠋⠁⠘⢿⣿⣿⣿⣿⣿⣿⣿⣿⣮⡢⠀⠀⢀⠑⢛⠿⡿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⡿⡻⡹⢨⢘⢌⠆⡧⣳⣫⢯⣟⢮⠢⠀⠂⡀⠂⠠⢨⢺⣿⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠨⣿⣿⣿⣿⣿⣿⣿⣿⡀⠀⠀⠀⠀⠔⡈⠄⠁⠀⠀⠙⢿⣿⣿⣿⣿⣿⣿⣿⣿⡨⡐⠀⡐⡀⡂⡑⠝⡿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⡿⡟⡝⠜⡌⠪⡐⠅⡆⡇⣗⢵⣫⢗⡽⡪⢂⠁⢂⠠⠁⠨⢐⢽⣿⣿⣿⣿⣿⣿⣿⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢘⣿⣿⣿⣿⣿⣿⣿⣿⣧⢀⢀⠂⠅⡁⠄⠂⠀⠀⠀⠀⠈⠻⣿⣿⣿⣿⣿⣿⣿⣗⡦⡡⠠⡐⠠⢂⢑⠌⢎⠻⡻⣿⣿
⣿⡿⡫⡣⡱⡨⢌⠪⠨⡊⢔⢑⢜⢜⢼⢕⣯⡳⣝⢜⠄⡈⠠⠀⠌⠠⢁⠳⣿⣿⣿⣿⣿⣿⣿⣿⣶⣤⢀⠀⠀⠀⠀⠀⠀⢨⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⠁⠌⠀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠐⠻⣿⣿⣿⣿⣿⣿⣽⢮⢱⠠⡑⡐⡐⠡⡡⡑⢅⢇⢟
⡣⢣⢃⠪⡂⠪⡐⢌⠪⡐⢅⠪⡢⡳⡹⣝⢮⢞⢎⠆⠅⡐⢀⢁⠈⡐⢀⠑⡿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣑⠳⣕⣖⢤⢤⢤⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⠡⢀⠀⡀⠁⡀⠀⠀⠀⠀⠀⠀⠀⠙⠿⡿⣿⣿⣿⣿⣯⢧⡣⡂⡢⢈⢂⠢⠨⢂⠪⠢
⡘⢔⠡⡑⠌⡌⢔⠐⢅⠢⡡⢣⢱⢹⣪⡳⣝⡕⡇⡇⠅⠂⡂⠐⡀⢂⠐⡈⢜⣿⣿⣿⣿⣿⣿⣿⣿⣿⡢⡫⡒⣕⢝⢕⢇⢯⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣯⡂⠄⡀⠂⠀⠐⠈⠀⠀⠂⠀⠀⠀⠀⠍⢝⢟⣿⣿⣿⣿⡺⣜⢔⠡⡂⠌⠌⡐⠡⡑
⠌⡢⢑⠨⠨⡐⡐⡡⢁⠪⡐⡱⡸⡸⡲⣹⡪⡺⡸⡐⡁⠡⠀⢂⠐⢐⢀⢂⢘⢾⣿⣿⣿⣿⣿⣿⣿⣿⡇⡇⡇⡇⡕⡑⡕⡱⡹⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⡅⠄⠄⠂⠐⠀⠐⠀⠀⠀⠀⠀⠐⠈⡈⠪⢳⢻⣯⣷⡿⣧⣳⡱⡨⡂⠅⠌⡂⠌
⠨⡐⠔⠡⡑⡐⠌⢔⠡⡑⢌⢎⢎⢎⣏⢮⡪⡣⡣⡊⠄⡡⠈⠄⠂⡐⢀⠂⠢⡹⣿⣿⣿⣿⣿⣿⣿⣿⣯⡪⡎⡇⡇⡣⡱⡨⡘⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⡡⢂⠐⠀⡀⠀⠠⠐⠀⠂⠐⠀⠀⠠⠨⢘⠸⡸⡪⣟⣿⣺⣵⢳⡘⠌⠔⢐⠡
⠡⢊⠌⠌⢔⢨⠨⡢⢑⠌⡎⡆⣗⢕⢧⢳⢱⢱⢑⠌⡂⠄⠅⠌⢐⠀⡂⠌⢌⠪⣿⣿⣿⣿⣿⣿⣿⣿⣿⣺⡸⡱⡑⡕⢌⢆⠕⡽⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣕⢄⢁⠀⠀⠀⠀⠀⠀⠀⠄⠂⠀⠂⠂⡑⠨⢊⢳⢝⣿⣺⢧⡇⡇⡕⡐⠄
⢌⢂⢪⠨⡢⡡⡱⡘⡌⡪⡸⡸⡸⡜⡎⡎⡮⡪⢢⠑⢄⢑⠨⠐⡐⢀⠂⠡⠂⢕⣻⣿⣿⣿⣿⣿⣿⣿⣿⡷⡕⡕⢌⠪⡊⡢⠡⢣⢻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣮⢀⠂⠁⠐⠀⠀⠀⠀⡀⠠⠐⠀⠁⡀⠌⢂⢕⢝⢮⣟⣯⣯⡺⡔⢔⠡
⣢⡣⣕⢕⣕⢜⢬⢢⢣⢱⢱⢱⢱⢱⢱⢱⢱⢑⠅⡊⡐⡐⠠⠡⠐⠠⢈⠨⢈⠢⢽⣿⣿⣿⣿⣿⣿⣿⣿⣿⡳⡨⠂⠕⠨⠨⠊⠄⡱⠹⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡵⣌⠔⠀⠂⠈⠀⢀⠀⠠⠐⢈⠠⢐⠐⠔⡌⢎⡳⣝⢾⣺⢵⡫⡢⡕
⡳⡹⡪⢯⢺⢹⢱⢝⢎⢇⢧⢓⢕⢕⢕⢱⢑⠬⡨⢐⢐⠠⢑⠈⠌⢐⠀⢂⠐⡈⢮⣿⣿⣿⣿⣿⣿⣿⣿⣿⣗⢅⠅⢁⠁⠡⢑⢀⠂⡑⠸⢽⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡵⣝⢬⢈⠄⠁⠄⡀⢂⠨⢐⠨⡢⡣⡣⣣⢳⡹⡜⣝⢞⢽⡺⡝⣞
⠪⡊⡪⢊⠜⡘⠌⢆⠣⡃⢇⠇⢇⠇⡇⡣⡱⢑⢌⠢⡂⢅⠢⠨⠈⠄⡈⠠⠐⠀⢕⢿⣿⣿⣿⣿⣿⣿⣿⣿⣟⡆⠅⠠⠈⠐⢐⢐⠨⢀⠅⠊⠕⡻⡻⣿⣿⣿⣿⣿⣿⣿⣿⡿⣯⣟⡷⣕⡥⡱⡐⠄⢅⢊⢂⠣⡱⢘⠜⢌⠢⡃⡣⡑⢕⠱⡑⡑⡑
⠑⠐⠌⠔⠨⠐⠡⠡⠈⠢⠁⠪⠐⠑⠌⠢⠊⠢⠢⠑⠌⠂⠌⠌⠌⠂⠄⠡⠈⠨⠨⠳⠻⠿⠿⠿⠿⠿⠿⠿⠿⠸⠀⠂⠀⠁⠐⠠⠨⠐⠠⠈⠐⠠⠙⠞⠾⠝⠯⠯⠟⠽⠳⠫⠟⠎⠯⠺⠪⠏⠮⠑⠅⠂⠅⠅⠊⠄⠕⠠⠑⠐⠔⠨⠠⠑⠐⠌⠌

Internals

The input image is decoded and treated with Floyd Steinberg image diffusion in order to capture gray tones in monochrome. Each pixel is then mapped to a matrix of braille Unicode points and the braille symbols are written to an io.Writer in such a way as they appear to reconstruct the image, pixel-for-pixel. Each pixel is mapped to a monochrome color (black or white) depending on a fairly standard RGB luminosity algorithm.

The command-line utility determines the resolution of the output based on the number of columns in the current terminal, so if you make your terminal wider you may get a higher-resolution picture.

Some interesting reading on how braille unicode points work.

dotmatrix's People

Contributors

kevin-cantwell avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

dotmatrix's Issues

Minor go language warning at every run

Doesn't affect image conversion, but I get

DEPRECATED Action signature.  Must be `cli.ActionFunc`.  This is an error in the application.  Please contact the distributor of this application if this is not you.  See https://github.com/urfave/cli/blob/master/CHANGELOG.md#deprecated-cli-app-action-signature

at the end of every run.

couldn't go get

I just used
go get -u github.com/kevin-cantwell/dotmatrix/cmd/dotmatrix

but it results in this.

go/src/github.com/kevin-cantwell/dotmatrix/cmd/dotmatrix/main.go:57:5: app.Author undefined (type *cli.App has no field or method Author)
go/src/github.com/kevin-cantwell/dotmatrix/cmd/dotmatrix/main.go:58:5: app.Email undefined (type *cli.App has no field or method Email)
go/src/github.com/kevin-cantwell/dotmatrix/cmd/dotmatrix/main.go:60:15: cannot use cli.BoolFlag literal (type cli.BoolFlag) as type cli.Flag in slice literal:
	cli.BoolFlag does not implement cli.Flag (Apply method has pointer receiver)
go/src/github.com/kevin-cantwell/dotmatrix/cmd/dotmatrix/main.go:64:18: cannot use cli.Float64Flag literal (type cli.Float64Flag) as type cli.Flag in slice literal:
	cli.Float64Flag does not implement cli.Flag (Apply method has pointer receiver)
go/src/github.com/kevin-cantwell/dotmatrix/cmd/dotmatrix/main.go:68:18: cannot use cli.Float64Flag literal (type cli.Float64Flag) as type cli.Flag in slice literal:
	cli.Float64Flag does not implement cli.Flag (Apply method has pointer receiver)
go/src/github.com/kevin-cantwell/dotmatrix/cmd/dotmatrix/main.go:73:18: cannot use cli.Float64Flag literal (type cli.Float64Flag) as type cli.Flag in slice literal:
	cli.Float64Flag does not implement cli.Flag (Apply method has pointer receiver)
go/src/github.com/kevin-cantwell/dotmatrix/cmd/dotmatrix/main.go:78:18: cannot use cli.Float64Flag literal (type cli.Float64Flag) as type cli.Flag in slice literal:
	cli.Float64Flag does not implement cli.Flag (Apply method has pointer receiver)
go/src/github.com/kevin-cantwell/dotmatrix/cmd/dotmatrix/main.go:83:15: cannot use cli.BoolFlag literal (type cli.BoolFlag) as type cli.Flag in slice literal:
	cli.BoolFlag does not implement cli.Flag (Apply method has pointer receiver)
go/src/github.com/kevin-cantwell/dotmatrix/cmd/dotmatrix/main.go:87:15: cannot use cli.BoolFlag literal (type cli.BoolFlag) as type cli.Flag in slice literal:
	cli.BoolFlag does not implement cli.Flag (Apply method has pointer receiver)
go/src/github.com/kevin-cantwell/dotmatrix/cmd/dotmatrix/main.go:91:15: cannot use cli.BoolFlag literal (type cli.BoolFlag) as type cli.Flag in slice literal:
	cli.BoolFlag does not implement cli.Flag (Apply method has pointer receiver)
go/src/github.com/kevin-cantwell/dotmatrix/cmd/dotmatrix/main.go:91:15: too many errors

Doesn't install on windows 10

This is what happens:

C:\WINDOWS\system32>go get -u github.com/kevin-cantwell/dotmatrix/cmd/dotmatrix
# github.com/kevin-cantwell/dotmatrix
C:\Users\USERNAME\go\src\github.com\kevin-cantwell\dotmatrix\gif.go:109:4: undefined: syscall.Kill
C:\Users\USERNAME\go\src\github.com\kevin-cantwell\dotmatrix\mjpeg.go:76:4: undefined: syscall.Kill

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.