JavaScript must be enabled in order for you to use JSXGraph and JSXGraph reference. However, it seems JavaScript is either disabled or not supported by your browser.

Class Index | File Index

Elements
Classes

Class JXG.Text

JXG.GeometryElement,JXG.CoordsElement
      ↳ JXG.Text

Creates a new text object. Do not use this constructor to create a text. Use JXG.Board#create with type Text instead.

Defined in: text.js.
Extends JXG.CoordsElement, JXG.GeometryElement.

Class Summary
Constructor Attributes Constructor Name and Description
 
JXG.Text(board, coordinates, attributes, content)
Construct and handle texts.
Fields borrowed from class JXG.GeometryElement:
_org_type, _pos, ancestors, baseElement, board, childElements, dash, descendants, draft, dragToTopOfLayer, dump, elementClass, elType, fillColor, fillOpacity, fixed, frozen, gradient, gradientAngle, gradientCX, gradientCY, gradientEndOffset, gradientFR, gradientFX, gradientFY, gradientR, gradientSecondColor, gradientSecondOpacity, gradientStartOffset, hasLabel, highlight, highlighted, highlightFillColor, highlightFillOpacity, highlightStrokeColor, highlightStrokeOpacity, highlightStrokeWidth, id, inherits, isDraggable, isReal, lastDragTime, methodMap, mouseover, name, needsRegularUpdate, needsUpdate, notExistingParents, numTraces, parents, precision, quadraticform, rendNode, rotatable, scalable, shadow, snapToGrid, stdform, strokeColor, strokeOpacity, strokeWidth, subs, symbolic, tabindex, trace, traceAttributes, traces, transformations, transitionDuration, transitionProperties, type, visible, visProp, visPropCalc, withLabel
Fields borrowed from class JXG.CoordsElement:
coords, groups, isConstrained, needsUpdateFromParent, onPolygon, position, slideObject, slideObjects
Field Summary
Field Attributes Field Name and Description
<private>  
Width and height of the text element in pixel.
Fields borrowed from class JXG.GeometryElement:
_org_type, _pos, ancestors, baseElement, board, childElements, dash, descendants, draft, dragToTopOfLayer, dump, elementClass, elType, fillColor, fillOpacity, fixed, frozen, gradient, gradientAngle, gradientCX, gradientCY, gradientEndOffset, gradientFR, gradientFX, gradientFY, gradientR, gradientSecondColor, gradientSecondOpacity, gradientStartOffset, hasLabel, highlight, highlighted, highlightFillColor, highlightFillOpacity, highlightStrokeColor, highlightStrokeOpacity, highlightStrokeWidth, id, inherits, isDraggable, isReal, lastDragTime, methodMap, mouseover, name, needsRegularUpdate, needsUpdate, notExistingParents, numTraces, parents, precision, quadraticform, rendNode, rotatable, scalable, shadow, snapToGrid, stdform, strokeColor, strokeOpacity, strokeWidth, subs, symbolic, tabindex, trace, traceAttributes, traces, transformations, transitionDuration, transitionProperties, type, visible, visProp, visPropCalc, withLabel
Fields borrowed from class JXG.CoordsElement:
coords, groups, isConstrained, needsUpdateFromParent, onPolygon, position, slideObject, slideObjects
Method Summary
Method Attributes Method Name and Description
<private>  
This sets the updateText function of this element depending on the type of text content passed.
<private>  
_setText(text)
Defines new content.
<private>  
Used to save updateSize() calls.
<private>  
Converts the GEONExT tags and to HTML span tags with proper CSS formatting.
<private>  
Alias for convertGeonext2CSS and convertSketchometry2CSS
<private>  
Converts the sketchometry tag to HTML span tags with proper CSS formatting.
 
A very crude estimation of the dimensions of the textbox in case nothing else is available.
<private>  
Converts shortened math syntax into correct syntax: 3x instead of 3*x or (a+b)(3+1) instead of (a+b)*(3+1).
<private>  
generateTerm(contentStr, expand, avoidGeonext2JS)
Converts the GEONExT syntax of the terms into JavaScript.
<private>  
Computes the number of overlaps of a box of w pixels width, h pixels height and center (x, y)
 
Return the width of the text element.
<private>  
hasPoint(x, y)
<private>  
notifyParents(content)
Finds dependencies in a given term and notifies the parents by adding the dependent object to the found objects child elements.
 
Replace _{} by <sub>
 
Replace ^{} by <sup>
 
Sets the offset of a label element to the position with the least number of overlaps with other elements, while retaining the distance to its anchor element.
 
setCoords(x, y)
Move the text to new coordinates.
 
setText(text)
Defines new content.
 
Defines new content but converts < and > to HTML entities before updating the DOM.
 
update(fromParent)
Evaluates the text.
<private>  
The update function of the renderert is called.
 
Recompute the width and the height of the text box.
 
updateText()
 
utf8_decode(string)
Decode unicode entities into characters.
Methods borrowed from class JXG.GeometryElement:
_set, addChild, addDescendants, addParents, addParentsFromJCFunctions, addRotation, addTicks, addTransform, animate, bounds, clearTrace, cloneToBackground, countChildren, createGradient, createLabel, draggable, fullUpdate, generatePolynomial, getAttribute, getAttributes, getLabelAnchor, getName, getParents, getProperty, getSnapSizes, getTextAnchor, getType, handleSnapToGrid, hide, hideElement, labelColor, noHighlight, normalize, prepareUpdate, remove, removeAllTicks, removeChild, removeDescendants, removeTicks, resolveShortcuts, setArrow, setAttribute, setDash, setDisplayRendNode, setLabel, setLabelText, setName, setParents, setPosition, setPositionDirectly, setProperty, show, showElement, snapToPoints, updateVisibility
Methods borrowed from class JXG.CoordsElement:
_anim, addAnchor, addConstraint, Dist, free, handleAttractors, handleSnapToPoints, makeGlider, moveAlong, moveTo, popSlideObject, setGliderPosition, setPositionByTransform, updateConstraint, updateCoords, updateGlider, updateGliderFromParent, updateTransform, visit, X, XEval, Y, YEval, Z, ZEval
Events borrowed from class JXG.GeometryElement:
attribute, attribute:key, down, drag, keydrag, mousedown, mousedrag, mousemove, mouseout, mouseover, mouseup, move, out, over, pendown, pendrag, penup, touchdown, touchdrag, touchup, up
Class Detail
JXG.Text(board, coordinates, attributes, content)
Construct and handle texts. The coordinates can be relative to the coordinates of an element given in JXG.Options#text.anchor. MathJax, HTML and GEONExT syntax can be handled.
Parameters:
{string|JXG.Board} board
The board the new text is drawn on.


{Array} coordinates
An array with the user coordinates of the text.


{Object} attributes
An object containing visual properties and optional a name and a id.


{string|function} content
A string or a function returning a string.


Field Detail
<private> {Array} size
Width and height of the text element in pixel.
Method Detail
<private> _createFctUpdateText(text)
This sets the updateText function of this element depending on the type of text content passed. Used by JXG.Text#_setText and JXG.Text constructor.
Parameters:
{String|Function|Number} text

<private> {JXG.Text} _setText(text)
Defines new content. This is used by JXG.Text#setTextJessieCode and JXG.Text#setText. This is required because JessieCode needs to filter all Texts inserted into the DOM and thus has to replace setText by setTextJessieCode.
Parameters:
{String|Function|Number} text
Returns:
{JXG.Text}

<private> checkForSizeUpdate()
Used to save updateSize() calls. Called in JXG.Text.update That means this.update() has been called. More tests are in JXG.Renderer.updateTextStyle. The latter tests are one update off. But this should pose not too many problems, since it affects fontSize and cssClass changes.

<private> convertGeonext2CSS(s)
Converts the GEONExT tags and to HTML span tags with proper CSS formatting.
Parameters:
s
See:
JXG.Text.generateTerm
JXG.Text._setText

<private> convertGeonextAndSketchometry2CSS(s)
Alias for convertGeonext2CSS and convertSketchometry2CSS
Parameters:
s
See:
JXG.Text.convertGeonext2CSS
JXG.Text.convertSketchometry2CSS

<private> convertSketchometry2CSS(s)
Converts the sketchometry tag to HTML span tags with proper CSS formatting.
Parameters:
s
See:
JXG.Text.generateTerm
JXG.Text._setText

{Array} crudeSizeEstimate()
A very crude estimation of the dimensions of the textbox in case nothing else is available.
Returns:
{Array}

<private> {string} expandShortMath(expr)
Converts shortened math syntax into correct syntax: 3x instead of 3*x or (a+b)(3+1) instead of (a+b)*(3+1).
Parameters:
expr
Returns:
{string} expanded String

<private> generateTerm(contentStr, expand, avoidGeonext2JS)
Converts the GEONExT syntax of the terms into JavaScript. Also, all Objects whose name appears in the term are searched and the text is added as child to these objects. This method is called if the attribute parse==true is set.
Parameters:
contentStr
expand
avoidGeonext2JS
See:
JXG.GeonextParser.geonext2JS

<private> {Number} getNumberofConflicts(x, y, w, h)
Computes the number of overlaps of a box of w pixels width, h pixels height and center (x, y)
Parameters:
{Number} x
x-coordinate of the center (screen coordinates)
{Number} y
y-coordinate of the center (screen coordinates)
{Number} w
width of the box in pixel
{Number} h
width of the box in pixel
Returns:
{Number} Number of overlapping elements

{Array} getSize()
Return the width of the text element.
Returns:
{Array} [width, height] in pixel

<private> {Boolean} hasPoint(x, y)
Parameters:
{Number} x
{Number} y
Returns:
{Boolean}

<private> notifyParents(content)
Finds dependencies in a given term and notifies the parents by adding the dependent object to the found objects child elements.
Parameters:
{String} content
String containing dependencies for the given object.

{String} replaceSub(te)
Replace _{} by <sub>
Parameters:
{String} te
String containing _{}.
Returns:
{String} Given string with _{} replaced by <sub>.

{String} replaceSup(te)
Replace ^{} by <sup>
Parameters:
{String} te
String containing ^{}.
Returns:
{String} Given string with ^{} replaced by <sup>.

{JXG.Text} setAutoPosition()
Sets the offset of a label element to the position with the least number of overlaps with other elements, while retaining the distance to its anchor element. Twelve different angles are possible.
Returns:
{JXG.Text} Reference to the text object.

{object} setCoords(x, y)
Move the text to new coordinates.
Parameters:
{number} x
{number} y
Returns:
{object} reference to the text object.

{JXG.Text} setText(text)
Defines new content.
Parameters:
{String|function} text
Returns:
{JXG.Text} Reference to the text object.

setTextJessieCode(text)
Defines new content but converts < and > to HTML entities before updating the DOM.
Parameters:
{String|function} text

update(fromParent)
Evaluates the text. Then, the update function of the renderer is called.
Parameters:
fromParent

<private> updateRenderer()
The update function of the renderert is called.

{[type]} updateSize()
Recompute the width and the height of the text box. Updates the array JXG.Text#size with pixel values. The result may differ from browser to browser by some pixels. In canvas an old IEs we use a very crude estimation of the dimensions of the textbox. JSXGraph needs JXG.Text#size for applying rotations in IE and for aligning text.
Returns:
{[type]} [description]

updateText()

{String} utf8_decode(string)
Decode unicode entities into characters.
Parameters:
{String} string
Returns:
{String}

Documentation generated by JsDoc Toolkit 2.4.0 on Fri Jan 27 2023 10:57:45 GMT+0100 (Mitteleuropäische Normalzeit)