mirror of
https://github.com/processing/processing4.git
synced 2026-02-03 05:39:18 +01:00
82 lines
2.4 KiB
Plaintext
82 lines
2.4 KiB
Plaintext
/**
|
|
* Characters Strings.
|
|
*
|
|
* Click on the image to give it focus and then type letters to
|
|
* shift the location of the image.
|
|
* Characters are typographic symbols such as A, d, and %.
|
|
* The character datatype, abbreviated as char, stores letters and
|
|
* symbols in the Unicode format, a coding system developed to support
|
|
* a variety of world languages. Characters are distinguished from other
|
|
* symbols by putting them between single quotes ('P').
|
|
* A string is a sequence of characters. A string is noted by surrounding
|
|
* a group of letters with double quotes ("Processing").
|
|
* Chars and strings are most often used with the keyboard methods,
|
|
* to display text to the screen, and to load images or files.
|
|
*/
|
|
|
|
PImage frog;
|
|
PFont fontA;
|
|
int lettersize = 90;
|
|
int xoffset;
|
|
char letter;
|
|
|
|
void setup()
|
|
{
|
|
size(200, 200);
|
|
fontA = loadFont("Eureka90.vlw");
|
|
textFont(fontA);
|
|
textSize(lettersize);
|
|
|
|
// The String datatype must be capitalized because it is a complex datatype.
|
|
// A String is actually a class with its own methods, some of which are
|
|
// featured below.
|
|
String name= "rathausFrog";
|
|
String extension = ".jpg";
|
|
int nameLength = name.length();
|
|
println("The length of " + name + " is " + nameLength + ".");
|
|
name = name.concat(extension);
|
|
nameLength = name.length();
|
|
println("The length of " + name + " is " + nameLength + ".");
|
|
|
|
// The parameter for the loadImage() method must be a string
|
|
// This line could also be written "frog = loadImage("rathausFrog.jpg");
|
|
frog = loadImage(name);
|
|
}
|
|
|
|
void draw()
|
|
{
|
|
background(51); // Set background to dark gray
|
|
|
|
image(frog, xoffset, 0);
|
|
|
|
// Draw an X
|
|
line(0, 0, width, height);
|
|
line(0, height, width, 0);
|
|
|
|
// Get the width of the letter
|
|
int letterWidth = int(fontA.width(letter) * lettersize);
|
|
|
|
// Draw the letter to the center of the screen
|
|
text(letter, width/2-letterWidth/2, height/2);
|
|
}
|
|
|
|
void keyPressed()
|
|
{
|
|
// The variable "key" always contains the value of the most recent key pressed.
|
|
// If the key is an upper or lowercase letter between 'A' and 'z'
|
|
// the image is shifted to the corresponding value of that key
|
|
if(key >= 'A' && key <= 'z') {
|
|
letter = char(key);
|
|
// Scale the values to numbers between 0 and 100
|
|
float scale = 100.0/57.0;
|
|
int temp = int((key - 'A') * scale);
|
|
// Set the offset for the image
|
|
xoffset = temp;
|
|
println(key);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|