Font change and display in Geomerative

edited October 2015 in Library Questions

Hi, I'm trying to display text with a changeable font, that is any font installed. I accomplished that quite easily w/ processing's default libraries, here's the code:

void setup() {
 size(900, 500);
     smooth();
      lastWidth = 900;
      if (frame != null) {
        surface.setResizable(true);
        background(255, 255, 255);
      }

  myFont = createFont(activeFont, activeFontSize); 
  fill(0, 0, 0); 
  textFont(myFont);
  textAlign(CENTER, CENTER);

  setGUI();
}

void draw() {
  if (firstDrawRun) { //sets GUI in the very beginning
    setGUI();
    setFunctionMenus();
    firstDrawRun = false;
  }

  if (activeFont != selectedFont) { //dropdown list changes font
    activeFont = selectedFont;
    myFont = createFont(activeFont, activeFontSize); 
    textFont(myFont); 
  }

  if (activeFontSize != fontSize) { //dropdown list changes font size
    activeFontSize = fontSize;
    myFont = createFont(activeFont, activeFontSize); 
    textFont(myFont); 
  }

...activeFont being a string w/ the font name, that is pulled out via:

String[] fontList = PFont.list();

void fonts(int n) { //list of installed fonts
  selectedFont = fontList[n]; 
  //System.out.println(selectedFont); 
}

But now I need to work w/ the text displayed using geomerative and I'm having trouble telling it what font to use. the default call is font = new RFont("name of font", "font size", ...); But I want to take those fonts directly from what's installed on the system. I tried "C:/Windows/Fonts/"+activeFont+".ttf" but that didn't work either, and after checking C:/Windows/Fonts/ I am totally lost.

Anybody ever dealt w/ such issues? Thanks for any ideas!

Answers

Sign In or Register to comment.