diff --git a/multi_column_page.py b/multi_column_page.py new file mode 100644 index 0000000..cd3cf9b --- /dev/null +++ b/multi_column_page.py @@ -0,0 +1,48 @@ +#!/usr/bin/env python3 + +from asciiWriter.text import make_column, make_multi_column +from asciiWriter.utils import merge, print_lines, make_lines, translate +import math + +# Define width and height of the output +width = 125 +height = 27 + +# Import a text +text = open('texts/about.txt').read() + +# Make an empty layers list +layers = [] + +def sin_width (line_nr, _): + amplitude = 25 + period = 150 / (math.pi * 2) + + return 50 + math.floor(math.sin(line_nr / period) * amplitude) + +def cos_width (line_nr, _): + amplitude = 5 + period = 20 / (math.pi * 2) + half_amplitude = amplitude * .5 + + return math.floor(half_amplitude + math.cos(line_nr / period) * half_amplitude) + +# Transform the text into a single column +#lines, remaining = make_column(text, height=height, line_width=sin_width, line_offset=cos_width) + +# Transform the text into multiple columns +lines, remaining = make_multi_column(text, height=height, column_width=40, column_count=2, column_gap=5) +lines = translate(lines, x=20, y=0) + +# Create an background +background = make_lines(width, height, ' ') + +# Add all your layers to the layers list +layers.append(background) +layers.append(lines) + +# Merge the layers into one layer again +merged = merge(width, height, ' ', layers) + +# Print the result +print_lines(merged) diff --git a/repeated_sinus_amplitude_variation.py b/repeated_sinus_amplitude_variation.py index 4acb8a2..daf6519 100644 --- a/repeated_sinus_amplitude_variation.py +++ b/repeated_sinus_amplitude_variation.py @@ -1,27 +1,27 @@ #!/usr/bin/env python3 from asciiWriter.patterns import sinus_vertical -from asciiWriter.utils import make_lines, visit, print_lines, merge +from asciiWriter.utils import make_lines, visit, print_lines, merge, translate from asciiWriter.marks import sentence, space import random # Define width and height of the output -width = 75 -height = 75 +width = 125 +height = 90 # As we draw multiple sinoids we will collect # them in a list of layers layers = [] # Loop through an amplitude of -50 to 50 in steps of 10 -for amplitude in range(-50, 50, 10): +for amplitude in range(-40, 50, 10): # Set the pattern with the changing amplitude - pattern = sinus_vertical(period=40, amplitude=amplitude) + pattern = sinus_vertical(period=60, amplitude=amplitude) # We use a sentence to draw the text - mark = sentence('OPEN DESIGN COURSE ') + mark = sentence('VARIA-') # Define a blank character - blank = space() + blank = space('-') # Make the canvas lines = make_lines(width, height)