このテキスト「1111111111111111111111111」を使用してPIXI.BitmapTextインスタンスを作成します。 幅を覚えてから、テキストを「1」に変更して幅をもう一度確認すると、同じになります。
この問題は、PIXI.BitmapTextインスタンスに199を超える頂点を持つ子としてPIXI.Meshインスタンスがある場合に発生します。
https://pixijs.io/examples/#/text/bitmap -text.js
このコードを貼り付けます:
const app = new PIXI.Application({ backgroundColor: 0x1099bb });
document.body.appendChild(app.view);
app.loader
.add('desyrel', 'examples/assets/bitmap-font/desyrel.xml')
.load(onAssetsLoaded);
function onAssetsLoaded() {
const bitmapFontText = new PIXI.BitmapText('11111111111111111111111111111111111111111111111', { font: '55px Desyrel'});
console.log(bitmapFontText.width);
bitmapFontText.x = 50;
bitmapFontText.y = 200;
bitmapFontText.text = '1';
console.log(bitmapFontText.width);
app.stage.addChild(bitmapFontText);
}
pixi.js
バージョン:5.3.2JSFiddleバージョンは次のとおりです。
https://jsfiddle.net/bigtimebuddy/syt6gdpb/
JSFiddleバージョンは次のとおりです。
https://jsfiddle.net/bigtimebuddy/syt6gdpb/
私が理解しているように、この問題は、新しいテキストが以前よりも小さい場合に頂点バッファをクリーンアップしないために発生します。
この状態がどのように機能するかを確認してください
頂点バッファをゼロにすることで、新しく作成されていない場合、この問題が修正される可能性があります。
最も参考になるコメント
私が理解しているように、この問題は、新しいテキストが以前よりも小さい場合に頂点バッファをクリーンアップしないために発生します。
この状態がどのように機能するかを確認してください