#N canvas 574 154 822 715 10;
#X declare -lib Gem;
#X text 54 30 Class: geometric object;
#X obj 465 65 cnv 15 180 600 empty empty empty 20 12 0 14 #dce4fc #404040 0;
#X obj 467 531 cnv 15 100 60 empty empty empty 20 12 0 14 #bcbcbc #404040 0;
#X obj 7 65 cnv 15 450 260 empty empty empty 20 12 0 14 #e0e0e0 #404040 0;
#X obj 8 374 cnv 15 450 220 empty empty empty 20 12 0 14 #e0e0e0 #404040 0;
#X text 9 379 Inlets:;
#X obj 8 335 cnv 15 450 30 empty empty empty 20 12 0 14 #bcbcbc #404040 0;
#X text 17 334 Arguments:;
#X text 453 11 GEM object;
#X text 27 391 Inlet 1: gemlist;
#X text 9 533 Outlets:;
#X text 21 546 Outlet 1: gemlist;
#X text 471 47 Example:;
#X obj 468 112 cnv 15 170 360 empty empty empty 20 12 0 14 #14e814 #404040 0;
#X obj 471 70 gemhead;
#X floatatom 510 429 5 0 100 1 size - - 0;
#X msg 481 154 font \$1;
#X obj 481 135 openpanel;
#X obj 481 118 bng 15 250 50 0 empty empty empty 0 -6 0 8 #fcfcfc #000000 #000000;
#X msg 489 180 text hello world!;
#X msg 509 242 1 2 3 4;
#X text 7 69 Description: Renders a line of text;
#X text 63 346 initial text (defaults to "gem");
#X text 7 248 Justification:;
#X text 32 263 horizontal justification can be one of "left" \, "right" \, "center"(default) and "base"(none);
#X text 32 293 vertical justification can be one of "top" \, "bottom" \, "middle"(default) and "base"(none);
#X msg 519 289 justify left base;
#X floatatom 575 74 5 0 0 0 - - - 0;
#X floatatom 534 69 4 0 0 0 - - - 0;
#X text 27 405 Inlet 1: message: font <.TTF-file> : load a TrueType-font;
#X text 27 419 Inlet 1: message: text [<blah>] : render the given text;
#X text 27 432 Inlet 1: message: list [<blah>] : render the given text;
#X text 27 475 Inlet 1: message: justify <hor> [<vert>] : horizontal&vertical justification;
#X obj 471 91 rotateXYZ;
#X obj 471 450 text3d;
#X text 10 94 [text3d] renders one line of a text with the current color \, and all 3D-transformation;
#X text 33 14 Synopsis: [text3d];
#X obj 30 641 cnv 15 400 40 empty empty empty 20 12 0 14 #fce0c0 #404040 0;
#X text 43 645 Note: on some systems it might be necessary to turn rendering ON before loading a font.;
#X msg 515 264 string 48 49 32 51 52;
#X text 27 444 Inlet 1: message: string [<blah>] : render the given text \, given as a list of unicode code points (similar to ASCII);
#X text 10 123 Any TrueType-font can be rendered. Per default a file "vera.ttf" is searched in the paths. If it is not found you will not see anything unless you load a valid font via the "font"-message. The font-loader uses Pd's search-paths \, so you could specify your path on the command-line and load fonts with just "font times.ttf".;
#X obj 541 597 text2d;
#X text 470 595 see also:;
#X obj 541 620 textextruded;
#X obj 541 643 textoutline;
#X text 27 514 Inlet 2: float: size (in points) (default:20);
#N canvas 484 243 450 300 META 0;
#X obj 10 25 declare -lib Gem;
#X text 10 45 DESCRIPTION Renders a line of text;
#X text 10 65 KEYWORDS Gem openGL shape;
#X text 20 85 INLET_0 gemlist font text list string justify alias;
#X text 20 105 INLET_1 float;
#X text 20 125 OUTLET_0 gemlist;
#X text 10 145 AUTHOR IOhannes m zmölnig;
#X text 10 165 LICENSE GPL-2.0-or-later;
#X restore 528 8 pd META;
#X msg 522 316 string 20320 10 22909 10 19990 10 30028, f 17;
#X msg 521 366 text مرحبا بالعالم;
#X text 15 204 Note that text is rendered using only the given font. Therefore \, your font must have the glyphs you want to display (or you will only see placeholders);
#X text 27 502 Inlet 1: message: alias 1|0 : anti-aliasing on/off (default:1), f 66;
#X msg 518 393 alias \$1;
#X obj 577 393 tgl 18 0 empty empty empty 0 -9 0 10 #fcfcfc #000000 #000000 0 1;
#X obj 30 597 cnv 15 400 40 empty empty empty 20 12 0 14 #fce0c0 #404040 0;
#X text 43 601 Note: changing the fontsize will re-generate the glyphs \, which can be slow. [scale] is much faster.;
#X obj 473 538 _gemwin;
#X text 21 561 Outlet 2: information about the text;
#N canvas 15 180 585 372 more_informations 0;
#X text 33 24 for now the outlet 2 outputs for each frame :;
#X text 45 47 - ascender : size over the pivot point (pixels);
#X text 45 66 - descender : size under the pivot point (pixels);
#X text 45 85 - bbox : bounding box of the text;
#X text 59 103 (x1 \, y1 \, z1 \, x2 \, y2 \, z2);
#X text 41 126 - bboxline : line number + bounding box of this specific line, f 62;
#X restore 262 560 pd more_informations;
#X obj 471 477 color 1 0 0;
#X obj 471 498 _textbbox \; width 2;
#X obj 551 478 hradio 18 1 0 4 empty empty empty 0 -9 0 10 #fcfcfc #000000 #000000 0;
#X obj 551 501 - 1;
#N canvas 735 461 450 300 multiline 0;
#X obj 100 101 bng 18 250 50 0 \$0-multiline \$0-multiline empty 0 -9 0 10 #fcfcfc #000000 #000000;
#X obj 240 192 outlet;
#X obj 242 95 r \$0-multiline;
#X msg 242 118 10;
#X obj 240 142 makefilename %c;
#X msg 240 165 text multi\$1line;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 5 0 1 0;
#X coords 0 -1 1 1 85 20 1 100 100;
#X restore 502 210 pd multiline;
#X connect 14 0 33 0;
#X connect 15 0 34 1;
#X connect 16 0 34 0;
#X connect 17 0 16 0;
#X connect 18 0 17 0;
#X connect 19 0 34 0;
#X connect 20 0 34 0;
#X connect 26 0 34 0;
#X connect 27 0 33 3;
#X connect 28 0 33 1;
#X connect 33 0 34 0;
#X connect 34 0 59 0;
#X connect 34 1 60 1;
#X connect 39 0 34 0;
#X connect 48 0 34 0;
#X connect 49 0 34 0;
#X connect 52 0 34 0;
#X connect 53 0 52 0;
#X connect 59 0 60 0;
#X connect 61 0 62 0;
#X connect 62 0 60 2;
#X connect 63 0 34 0;
