Issues with loading fonts with CreateFonts

Hi there, I am having issues loading fonts that I have installed on my Windows fonts folder .
The message that I get every time is "
“PPEiko-Medium” is not available, so another font will be used. Use PFont.list() to show available fonts."
I get this message for all the fonts that I install … can somene helps please

Did you create a font from the tools menu? if not that’ll be the issue

1 Like

Here is some hints

Hi there, yes I did and also followed all the previous posts about this issue but i still cant find a way to load the fonts :frowning:

Hi there,I have addeted the font in the sketch with the font tool but it still gives me the same error :frowning:

This is how I added font
1 Download the font file without processing IDE
2 drag or add the file to sketch folder

Here is the 7 segment font file download it

Then in processing side

PFont Segment ; 

 void setup() {
  Segment = createFont("Segment7", 150);  // Assign fonts and size 

Hi there I just followed your steps but i still get the error please see screenshot

Hello @bardo ,

Be sure to use the name of the font in the PFont list:



1 Like

Hi there, the problem is that a lot of the fons that are installed correclty in windows and work correclty in all my programs, they wont show in the font list. Acually I can also see a very limited number of fonts in the font list. Also there are some fonts that are included in the font list but still give the error (please see screenshot)


PFont Segment;

void setup() {
  size(600, 180);                      
  Segment = createFont("Segment7Standard.otf", 120); 

void draw()
  background(0, 0, 0);   

  text("123 JAFAL", 0, 120);

Font from here

Hey it’s loading the fonts now :slight_smile: but how can i make this work within this piece of code that i was tryng to make it work? Please se below:

float mutationRate = 0.01;
int totalPopulation = 250;

DNA population;
ArrayList matingPool;
String target;

PFont f;

void setup() {
target = “KEEP SMILING”;

population = new DNA[totalPopulation];

for (int i = 0; i < population.length; i++) {
population[i] = new DNA(target.length());

f = createFont(“Courier”,12,true);

void draw() {
for (int i = 0; i < population.length; i++) {

ArrayList matingPool = new ArrayList();
for (int i = 0; i < population.length; i++) {
int nnnn = int(population[i].fitness * 100);
for (int j = 0; j <nnnn; j++) {

for (int i = 0; i < population.length; i++) {
int a = int(random(matingPool.size()));
int b = int(random(matingPool.size()));
DNA partnerA = matingPool.get(a);
DNA partnerB = matingPool.get(b);
DNA child = partnerA.crossover(partnerB);
population[i] = child;

String everything = “”;
for (int i = 0; i < population.length; i++) {
everything += population[i].getPhrase() + " ";


HEY! I Made it work!! Thank you :slight_smile: