Skip to content

Instantly share code, notes, and snippets.

@duskvirkus
Created March 8, 2022 02:42
Show Gist options
  • Save duskvirkus/04094ee08b972619935bd2b83d6b86ff to your computer and use it in GitHub Desktop.
Save duskvirkus/04094ee08b972619935bd2b83d6b86ff to your computer and use it in GitHub Desktop.
Table t;
int rows = 8;
int cols = 11;
float rowSize;
float colSize;
ArrayList<String> toDisplay = new ArrayList<String>();
ArrayList<PFont> fonts = new ArrayList<PFont>();
boolean export = true;
void setup() {
size(830, 600);
//t = loadTable("dafonts-free-v1/info.csv", "header");
//println(t.getRowCount() + " total rows in table");
rowSize = height / rows;
colSize = width / cols;
//print(Character.toString((char) ('a' + 25)));
//for (int i = 0; i < 26; ++i) {
// toDisplay.add(Character.toString((char) ('A' + i)));
//}
//for (int i = 0; i < 26; ++i) {
// toDisplay.add(Character.toString((char) ('a' + i)));
//}
for (int i = 0; i < rows; ++i) {
toDisplay.add("D");
toDisplay.add("A");
toDisplay.add("F");
toDisplay.add("O");
toDisplay.add("N");
toDisplay.add("T");
toDisplay.add("S");
toDisplay.add("F");
toDisplay.add("R");
toDisplay.add("E");
toDisplay.add("E");
}
print(toDisplay);
t = loadTable("dafonts-free-v1/info.csv", "header");
println(t.getRowCount() + " total rows in table");
for (int i = 0; i < 300; ++i) {
TableRow r = t.getRow(int(random(t.getRowCount())));
String file = r.getString("filename");
String toLoad = "dafonts-free-v1/fonts/" + file;
PFont f = createFont(toLoad, 36);
fonts.add(f);
}
frameRate(3);
textAlign(CENTER, CENTER);
}
void draw() {
background(255);
fill(0);
for (int r = 0; r < rows; ++r) {
for (int c = 0; c < cols; ++c) {
textFont(fonts.get(int(random(fonts.size()))));
//rect(c * colSize, r * rowSize, colSize, rowSize);
text(toDisplay.get(c + r * cols), c * colSize + (colSize/2), r * rowSize + rowSize/2);
}
}
if (export && frameCount <= 32) {
saveFrame("export-2/frame-##.png");
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment