Working PoC with Scrolling Logic!

This commit is contained in:
jhealy
2021-01-03 17:51:39 -05:00
parent cb01909b49
commit 6a78b7d294
7 changed files with 10 additions and 36 deletions

View File

@@ -0,0 +1,34 @@
# SPDX-FileCopyrightText: 2020 Melissa LeBlanc-Williams, written for Adafruit Industries
# SPDX-License-Identifier: MIT
#!/usr/bin/python3
"""
Be sure to check the learn guides for more usage information.
This example is for use on (Linux) computers that are using CPython with
Adafruit Blinka to support CircuitPython libraries. CircuitPython does
not support PIL/pillow (python imaging library)!
Author(s): Melissa LeBlanc-Williams for Adafruit Industries
"""
import board
import neopixel
from PIL import Image
from adafruit_pixel_framebuf import PixelFramebuffer
pixel_pin = board.D18
pixel_width = 8
pixel_height = 16
pixels = neopixel.NeoPixel(
pixel_pin, pixel_width * pixel_height, brightness=0.1, auto_write=False,
)
pixel_framebuf = PixelFramebuffer(pixels, pixel_width, pixel_height, reverse_x=True,alternating=True)
pixel_framebuf.fill(0x000000)
pixel_framebuf.display()
pixel_framebuf.text("H", 0, 0, 0x00FF00)
pixel_framebuf.display()
pixel_framebuf.text("i", 0, 8, 0x00FF00)
pixel_framebuf.display()

View File

@@ -0,0 +1 @@
Jaki is the best.

View File

@@ -0,0 +1,52 @@
#Created by Justin Healy
#Based on logic from jsheperd from https://stackoverflow.com/a/27753869/190597
from __future__ import print_function
import string
from PIL import Image
from PIL import ImageFont
from PIL import ImageDraw
import numpy as np
def char_to_pixels(text, path, fontsize):
font = ImageFont.truetype(path, fontsize)
w, h = font.getsize(text)
image = Image.new('L', (w, h), 1)
draw = ImageDraw.Draw(image)
draw.text((0, 0), text, font=font)
arr = np.asarray(image)
arr = np.where(arr, 0, 1)
arr = arr[(arr != 0).any(axis=1)]
return arr
def display(arr):
result = np.where(arr, '1', '0')
print("This gives an Array of Arrays, where reach contained Array is a row")
print(result)
print()
print('\n'.join([''.join(row) for row in result]))
#I have used static coding successfully, now to set this as more reusable declarations rather than hard coding.
#Single Source to change for everything
#Read from file?
fileName = "pilReadTest"
pullFile = open(fileName,"r")
someString = pullFile.read()
#Font Path?
fontPath = "fonts/FreeMonoBold.ttf"
#font Size?
fontSize = 12
#print("This was what was found in the File: "+str(someString))
#print()
#print("Now putting each letter of the found string through the PIL Image Module")
#print()
for c in someString:
arr = char_to_pixels(c,fontPath,fontSize)
print()
#This is the grid size results (w,h)
print(arr.shape)
print()
#print("This is the converted values of the AofAs, for each ROW in Result, the end product")
display(arr)
print()