Класс: Phaser.RetroFont
Конструктор
new RetroFont(game, key, characterWidth, characterHeight, chars, charsPerRow, xSpacing, ySpacing, xOffset, yOffset)
Шрифт RetroFont аналогичен BitmapFont, поскольку он использует текстуру для рендеринга текста. Однако в отличие от BitmapFont, каждый символ в RetroFont
имеет одинаковый размер. Это делает его похожим на спрайт-лист. Как правило, такие шрифтовые листы встречаются в старых играх и демонстрациях 8/16 бит.
Параметры
| Имя | Тип | Аргумент | Значение по умолчанию | Описание |
|---|---|---|---|---|
game | Phaser.Game | Текущая инстанция игры. | ||
key | string | Графический набор шрифта, сохраненный в Game.Cache. | ||
characterWidth | number | Ширина каждого символа в наборе шрифта. | ||
characterHeight | number | Высота каждого символа в наборе шрифта. | ||
chars | string | Используемые символы в наборе шрифта в порядке отображения. Можно использовать константы TEXT_SET для распространенных способов организации набора шрифта. | ||
charsPerRow | number | <optional> | Количество символов на строке в наборе шрифта. Если не указано, charsPerRow будет равно ширине изображения / characterWidth. | |
xSpacing | number | <optional> | 0 | Если между символами в наборе шрифта есть горизонтальное расстояние, укажите требуемое значение здесь. |
ySpacing | number | <optional> | 0 | Если между символами в наборе шрифта есть вертикальное расстояние, укажите требуемое значение здесь. |
xOffset | number | <optional> | 0 | Если набор шрифтов не начинается в левом верхнем углу заданного изображения, укажите смещение координаты X здесь. |
yOffset | number | <optional> | 0 | Если набор шрифтов не начинается в левом верхнем углу заданного изображения, укажите смещение координаты Y здесь. |
- Исходный код: gameobjects/RetroFont.js (Строка 25)
Расширяет
Общественные свойства
- Source code: gameobjects/RetroFont.js (Line 196)
- Source code: gameobjects/RetroFont.js (Line 182)
- Source code: gameobjects/RetroFont.js (Line 189)
- Source code: gameobjects/RetroFont.js (Line 203)
- Source code: gameobjects/RetroFont.js (Line 210)
- Source code: gameobjects/RetroFont.js (Line 217)
- Source code: gameobjects/RetroFont.js (Line 224)
- Source code: gameobjects/RetroFont.js (Line 231)
- Source code: gameobjects/RetroFont.js (Line 238)
- Source code: gameobjects/RetroFont.js (Line 245)
- Source code: gameobjects/RetroFont.js (Line 252)
- Source code: gameobjects/RetroFont.js (Line 259)
- Source code: gameobjects/RetroFont.js (Line 266)
- Source code: gameobjects/RetroFont.js (Line 273)
- Source code: gameobjects/RetroFont.js (Line 77)
- Default Value
- true
- Source code: gameobjects/RetroFont.js (Line 89)
- Inherited From
- Source code: pixi/textures/RenderTexture.js (Line 78)
- Source code: gameobjects/RetroFont.js (Line 45)
- Source code: gameobjects/RetroFont.js (Line 60)
- Source code: gameobjects/RetroFont.js (Line 50)
- Source code: gameobjects/RetroFont.js (Line 55)
[static] ALIGN_CENTER : string
Выровнять каждую строку многострочного текста по центру.
[static] ALIGN_LEFT : string
Выровнять каждую строку многострочного текста по левому краю.
[static] ALIGN_RIGHT : string
Выровнять каждую строку многострочного текста по правому краю.
[static] TEXT_SET1 : string
Text Set 1 = !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{ | }~
[static] TEXT_SET2 : string
Text Set 2 = !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ
[static] TEXT_SET3 : string
Text Set 3 = ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
[static] TEXT_SET4 : string
Text Set 4 = ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789
[static] TEXT_SET5 : string
Text Set 5 = ABCDEFGHIJKLMNOPQRSTUVWXYZ.,/() '!?-*:0123456789
[static] TEXT_SET6 : string
Text Set 6 = ABCDEFGHIJKLMNOPQRSTUVWXYZ!?:;0123456789"(),-.'
[static] TEXT_SET7 : string
Text Set 7 = AGMSY+:4BHNTZ!;5CIOU.?06DJPV,(17EKQW")28FLRX-'39
[static] TEXT_SET8 : string
Text Set 8 = 0123456789 .ABCDEFGHIJKLMNOPQRSTUVWXYZ
[static] TEXT_SET9 : string
Text Set 9 = ABCDEFGHIJKLMNOPQRSTUVWXYZ()-0123456789.:,'"?!
[static] TEXT_SET10 : string
Text Set 10 = ABCDEFGHIJKLMNOPQRSTUVWXYZ
[static] TEXT_SET11 : string
Text Set 11 = ABCDEFGHIJKLMNOPQRSTUVWXYZ.,"-+!?()':;0123456789
align : string
Выравнивание текста, когда multiLine = true или установлен fixedWidth. Установлено в RetroFont.ALIGN_LEFT (по умолчанию), RetroFont.ALIGN_RIGHT или RetroFont.ALIGN_CENTER.
autoUpperCase : boolean
Автоматически преобразовывать любой текст в верхний регистр. Многие старые растровые шрифты содержат только заглавные буквы, поэтому значение по умолчанию — true.
baseTexture : PIXI.BaseTexture
Объект базовой текстуры, используемый этой текстурой
characterHeight : number
Высота каждого символа в наборе шрифтов.
characterPerRow : number
Количество символов в строке в наборе шрифтов.
characterSpacingX : number
Если символы в наборе шрифтов имеют горизонтальный интервал между ними, установите необходимое значение здесь.
characterSpacingY : number
Если символы в наборе шрифтов имеют вертикальный интервал между ними, установите необходимое значение здесь.
characterWidth : number
Ширина каждого символа в наборе шрифтов.
- Source code: gameobjects/RetroFont.js (Line 40)
- Inherited From
- Source code: pixi/textures/RenderTexture.js (Line 69)
- Source code: gameobjects/RetroFont.js (Line 95)
- Source code: gameobjects/RetroFont.js (Line 101)
- Source code: gameobjects/RetroFont.js (Line 108)
- Source code: gameobjects/RetroFont.js (Line 113)
- Inherited From
- Source code: pixi/textures/RenderTexture.js (Line 61)
- Source code: gameobjects/RetroFont.js (Line 130)
- Inherited From
- Source code: gameobjects/RenderTexture.js (Line 30)
- Inherited From
- Source code: pixi/textures/RenderTexture.js (Line 45)
- Inherited From
- Source code: pixi/textures/Texture.js (Line 79)
- Inherited From
- Source code: gameobjects/RenderTexture.js (Line 35)
- Source code: gameobjects/RetroFont.js (Line 83)
- Inherited From
- Source code: pixi/textures/Texture.js (Line 28)
- Source code: gameobjects/RetroFont.js (Line 66)
- Source code: gameobjects/RetroFont.js (Line 72)
- Inherited From
- Source code: pixi/textures/RenderTexture.js (Line 99)
- Inherited From
- Source code: pixi/textures/Texture.js (Line 95)
- Inherited From
- Source code: pixi/textures/Texture.js (Line 87)
crop :Rectangle
Это область изображения BaseTexture, которая фактически копируется в Canvas/WebGL при отрисовке,
независимо от фактического размера или расположения фрейма (что может влиять на отсечённые текстуры атласа)
customSpacingX : number
Добавляет горизонтальное расстояние между каждым символом шрифта в пикселях.
customSpacingY : number
Добавляет вертикальное расстояние между каждой строкой многострочного текста в пикселях.
fixedWidth : number
Если вам нужно, чтобы у этого RetroFont было фиксированное значение ширины, вы можете установить ширину в это значение.
Если текст шире указанной ширины, он будет обрезаться.
fontSet :Image
Ссылка на изображение, хранящееся в кэше Game, содержащее шрифт.
frame :Rectangle
Кадровая прямоугольная область рендеринг-текстуры
frameData : Phaser.FrameData
FrameData, представляющий этот Retro Шрифт.
game : Phaser.Game
Ссылка на текущую игру.
height : number
Высота рендеринг-текстуры
isTiling : boolean
Это текстура-плитка? Как используется в TilingSprite.
key : string
Ключ RenderTexture в кэше, если он там хранится.
multiLine : boolean
Если установлено в true, все символы возврата каретки в тексте будут образовывать новые строки (см. выравнивание). Если false, шрифт будет содержать только одну строку текста (по умолчанию)
noFrame : boolean
У этой Texture есть какие-либо данные фрейма?
[readonly] offsetX : number
Если набор шрифтов не начинается с верхнего левого угла заданного изображения, укажите здесь координату смещения по оси X.
[readonly] offsetY : number
Если набор шрифтов не начинается с верхнего левого угла заданного изображения, укажите здесь координату смещения по оси Y.
renderer : PIXI.CanvasRenderer | PIXI.WebGLRenderer
Рендерер, используемый этим RenderTexture. В данный момент RenderTexture может принадлежать только одному рендереру, если это webGL.
Type
requiresReTint : boolean
Это позволит рендереру знать, что родитель с оттенком обновил свою текстуру.
requiresUpdate : boolean
Это позволит рендереру знать, что текстура была обновлена (в основном для обновлений uv webGL)
- Inherited From
- Source code: pixi/textures/RenderTexture.js (Line 53)
- Source code: gameobjects/RetroFont.js (Line 585)
- Source code: gameobjects/RetroFont.js (Line 163)
- Source code: gameobjects/RetroFont.js (Line 547)
- Inherited From
- Source code: pixi/textures/Texture.js (Line 63)
- Source code: gameobjects/RetroFont.js (Line 170)
- Inherited From
- Source code: pixi/textures/RenderTexture.js (Line 125)
- Inherited From
- Source code: pixi/textures/RenderTexture.js (Line 37)
resolution : number
Разрешение текстуры.
smoothed : boolean
Указывает, сглажена ли штамповка.
[readonly] stamp : Phaser.Image
Изображение, которое штампуется на RenderTexture для каждого символа в шрифте.
text : string
Установите это значение, чтобы обновить текст в этом спрайте. Возвраты каретки автоматически удаляются, если multiLine равен false. Текст преобразуется в верхний регистр, если autoUpperCase равен true.
trim :Rectangle
Данные обрезки текстуры.
type : number
Основной тип объекта Phaser.
valid : boolean
width : number
Ширина render-текстуры.
Public Methods
- Исходный код: gameobjects/RetroFont.js (Строка 328)
- Унаследовано от
- Исходный код: pixi/textures/RenderTexture.js (Строка 175)
- Унаследовано от
- Исходный код: pixi/textures/Texture.js (Строка 165)
- Унаследовано от
- Исходный код: pixi/textures/RenderTexture.js (Строка 309)
- Унаследовано от
- Исходный код: pixi/textures/RenderTexture.js (Строка 320)
- Унаследовано от
- Исходный код: pixi/textures/RenderTexture.js (Строка 296)
- Исходный код: gameobjects/RetroFont.js (Строка 459)
- Исходный код: gameobjects/RetroFont.js (Строка 420)
- Внутренняя:
- Этот член является внутренним (защищённым) и может быть изменён или удалён в будущем.
- Исходный код: gameobjects/RetroFont.js (Строка 486)
- Унаследовано от
- Исходный код: gameobjects/RenderTexture.js (Строка 117)
buildRetroFontText()
Обновляет текстуру новым текстом.
clear()
Очищает RenderTexture.
destroy(destroyBase)
Уничтожает эту текстуру
Параметры
| Имя | Тип | Описание |
|---|---|---|
destroyBase | Boolean | Уничтожить базу текстуры также |
getBase64() → {String}
Возвращает строку, закодированную в base64, этой текстуры. Она работает, вызывая RenderTexture.getCanvas, а затем выполняя toDataURL на нём.
Возвращает
Строка, закодированная в base64, текстуры.
getCanvas() → {HTMLCanvasElement}
Создаёт элемент Canvas, отрисовывает этот RenderTexture на нём и возвращает его.
Возвращает
Элемент Canvas с отрисованной текстурой.
getImage() → {Image}
Возвращает HTML Image текстуры
Возвращает
getLongestLine() → {number}
Определяет самую длинную строку текста в _text и возвращает её длину
Возвращает
Длина самой длинной строки текста.
pasteLine(line, x, y, customSpacingX)
Внутренняя функция, которая принимает одну строку текста (второй параметр) и вставляет её в BitmapData по заданным координатам.
Используется функциями getLine и getMultiLine
Параметры
| Имя | Тип | Описание |
|---|---|---|
line | string | Одна строка текста для вставки. |
x | number | Координата x. |
y | number | Координата y. |
customSpacingX | number | Настройка интервала по оси X. |
<internal> removeUnsupportedCharacters(stripCR) → {string}
Внутренняя вспомогательная функция, которая удаляет все неподдерживаемые символы из строки _text, оставляя только символы, содержащиеся в наборе шрифтов.
Параметры
| Имя | Тип | Аргумент | По умолчанию | Описание |
|---|---|---|---|---|
stripCR | boolean | <optional> | true | Удалить возвраты каретки? |
Возвращает
Очищенная версия строки.
render(displayObject, matrix, clear)
Эта функция нарисует элемент displayObject на RenderTexture.
В версиях Phaser до 2.4.0 второй параметр был объектом Phaser.Point.
Теперь это матрица, позволяющая вам гораздо больше управлять тем, как отображается элемент Display Object.
Если вам нужно воссоздать предыдущее поведение, используйте Phaser.RenderTexture.renderXY.
Если вы хотите, чтобы элемент displayObject был нарисован с учётом его текущего масштаба, поворота и перевода, то либо
передайте null, оставьте его неопределённым или передайте displayObject.worldTransform в качестве значения матрицы.
Параметры
| Имя | Тип | Аргумент | По умолчанию | Описание |
|---|---|---|---|---|
displayObject | Phaser.Sprite | Phaser.Image | Phaser.Text | Phaser.BitmapText | Phaser.Group | Элемент display object для отрисовки на этой текстуре. | ||
matrix | Phaser.Matrix | <optional> | Необязательная матрица для применения к элементу display object перед отрисовкой. Если null или undefined, будет использована матрица worldTransform заданного элемента display object. | |
clear | boolean | <optional> | false | Если true, текстура будет очищена перед отрисовкой элемента display object. |
renderRawXY(displayObject, x, y, clear)
- Унаследовано от
- Исходный код: gameobjects/RenderTexture.js (Строка 89)
- Унаследовано от
- Исходный код: gameobjects/RenderTexture.js (Строка 57)
- Унаследовано от
- Исходный код: pixi/textures/RenderTexture.js (Строка 139)
- Исходный код: gameobjects/RetroFont.js (Строка 275)
- Унаследовано от
- Исходный код: pixi/textures/Texture.js (Строка 178)
Эта функция отобразит объект отображения на RenderTexture в заданных координатах.
При отрисовке объекта отображения не учитываются масштаб, поворот или смещение.
Если вам нужны эти параметры, используйте RenderTexture.renderXY вместо этого.
Параметры
| Имя | Тип | Аргумент | Значение по умолчанию | Описание |
|---|---|---|---|---|
displayObject | Phaser.Sprite | Phaser.Image | Phaser.Text | Phaser.BitmapText | Phaser.Group | Объект отображения, который необходимо отобразить на этой текстуре. | ||
x | число | Позиция x для отрисовки объекта. | ||
y | число | Позиция y для отрисовки объекта. | ||
clear | логическое | <необязательно> | false | Если true, текстура будет очищена перед отрисовкой объекта отображения. |
renderXY(displayObject, x, y, clear)
Эта функция отобразит объект отображения на RenderTexture в заданных координатах.
При отрисовке объекта отображения учитываются масштаб и поворот.
Если эти параметры не нужны, используйте RenderTexture.renderRawXY вместо этого.
Параметры
| Имя | Тип | Аргумент | Значение по умолчанию | Описание |
|---|---|---|---|---|
displayObject | Phaser.Sprite | Phaser.Image | Phaser.Text | Phaser.BitmapText | Phaser.Group | Объект отображения, который необходимо отобразить на этой текстуре. | ||
x | число | Позиция x для отрисовки объекта. | ||
y | число | Позиция y для отрисовки объекта. | ||
clear | логическое | <необязательно> | false | Если true, текстура будет очищена перед отрисовкой объекта отображения. |
resize(width, height, updateBase)
Изменяет размер RenderTexture.
Параметры
| Имя | Тип | Описание |
|---|---|---|
width | Число | Ширина, на которую необходимо изменить размер. |
height | Число | Высота, на которую необходимо изменить размер. |
updateBase | Логическое | Нужно ли также изменить значения baseTexture.width и height? |
setFixedWidth(width, lineAlignment)
Если нужно, чтобы этот RetroFont имел фиксированную ширину и пользовательское выравнивание, вы можете установить ширину здесь.
Если текст шире, чем указанная ширина, он будет усечен.
Параметры
| Имя | Тип | Аргумент | Значение по умолчанию | Описание |
|---|---|---|---|---|
width | число | Ширина этого RetroFont в пикселях. Установите в ноль, чтобы отключить и снова включить автоматическое изменение размера. | ||
lineAlignment | строка | <необязательно> | 'left' | Выровнять текст в этой ширине. Установите RetroFont.ALIGN_LEFT (по умолчанию), RetroFont.ALIGN_RIGHT или RetroFont.ALIGN_CENTER. |
setFrame(frame)
Указывает область baseTexture, которую будет использовать эта текстура.
Параметры
| Имя | Тип | Описание |
|---|---|---|
frame | Прямоугольник | Кадр текстуры, на который необходимо установить ее. |
setText(content, multiLine, characterSpacing, lineSpacing, lineAlignment, allowLowerCase)
Вспомогательная функция, которая быстро устанавливает множество переменных и затем обновляет текст.
Параметры
| Имя | Тип | Аргумент | Значение по умолчанию | Описание |
|---|---|---|---|---|
content | строка | Текст этого спрайта. | ||
multiLine | логическое | <необязательно> | false | Установите в значение true, если вы хотите поддерживать символы возврата каретки в тексте и создавать многострочный спрайт вместо однострочного. |
characterSpacing | число | <необязательно> | 0 | Чтобы добавить горизонтальное расстояние между каждым символом, укажите значение в пикселях. |
lineSpacing | число | <необязательно> | 0 | Чтобы добавить вертикальное расстояние между каждой строкой текста, установите значение в пикселях. |
lineAlignment | строка | <необязательно> | 'left' | Выровнять каждую строку многострочного текста. Установите RetroFont.ALIGN_LEFT, RetroFont.ALIGN_RIGHT или RetroFont.ALIGN_CENTER. |
allowLowerCase | логическое | <необязательно> | false | Многие наборы шрифтов bitmap содержат только символы верхнего регистра. Если ваш шрифт должен поддерживать символы нижнего регистра, установите это значение в true. |
- Исходный код: gameobjects/RetroFont.js (Строка 293)
- Исходный код: gameobjects/RetroFont.js (Строка 514)
updateOffset(xOffset, yOffset)
Обновляет смещение по оси X и/или Y, с которого отрисовывается шрифт. Это обновляет все текстурные кадры, поэтому будьте осторожны, как часто вы это делаете.
Обратите внимание, что значения, заданные для свойств x и y, либо добавляются к, либо вычитаются из (если отрицательные) существующих смещений offsetX/Y символов.
Таким образом, если текущее смещение по оси Y равно 8, и вы хотите начать отрисовку с y16, вы должны вызвать updateOffset(0, 8), чтобы добавить 8 к текущему смещению по оси Y.
Параметры
| Имя | Тип | Аргумент | По умолчанию | Описание |
|---|---|---|---|---|
xOffset | число | <необязательно> | 0 | Если набор шрифтов не начинается в верхнем левом углу заданного изображения, укажите здесь смещение по координате X. |
yOffset | число | <необязательно> | 0 | Если набор шрифтов не начинается в верхнем левом углу заданного изображения, укажите здесь смещение по координате Y. |
© 2016 Richard Davey, Photon Storm Ltd.
Licensed under the MIT License.
http://phaser.io/docs/2.6.2/Phaser.RetroFont.html