Project1

标题: 装备名字太长之后 显示的文字被挤压变瘦 [打印本页]

作者: pajiman1999    时间: 2022-9-8 06:14
标题: 装备名字太长之后 显示的文字被挤压变瘦
装备名字太长之后 显示的文字被挤压变瘦 请问修改哪里可以拓宽显示 让装备的名字字体可以正常显示 而不是被挤压变成了瘦瘦的字体

作者: 小秋橙    时间: 2022-9-8 06:14
Bitmap.prototype.drawText = function(text, x, y, maxWidth, lineHeight, align) {
    // [Note] Different browser makes different rendering with
    //   textBaseline == 'top'. So we use 'alphabetic' here.
    const context = this.context;
    const alpha = context.globalAlpha;
    maxWidth = maxWidth || 0xffffffff;
    let tx = x;
    let ty = Math.round(y + lineHeight / 2 + this.fontSize * 0.35);
    if (align === "center") {
        tx += maxWidth / 2;
    }
    if (align === "right") {
        tx += maxWidth;
    }
    context.save();
    context.font = this._makeFontNameText();
    context.textAlign = align;
    context.textBaseline = "alphabetic";
    context.globalAlpha = 1;

    if (this.measureTextWidth(text) > maxWidth) { // 新增内容开始
        const size =  this.fontSize;
        this.fontSize = Math.floor(size * maxWidth / this.measureTextWidth(text));
        context.font = this._makeFontNameText();
        this.fontSize = size;
    } // 新增内容结束

    this._drawTextOutline(text, tx, ty, maxWidth);
    context.globalAlpha = alpha;
    this._drawTextBody(text, tx, ty, maxWidth);
    context.restore();
    this._baseTexture.update();
};

这个函数大概位于rmmz_core.js的第1650到第1700行之间,可以搜索"drawText ="(等号前面有个空格)来找到。
效果图:

作者: 小秋橙    时间: 2022-9-8 13:35
https://developer.mozilla.org/zh ... gContext2D/fillText
这是浏览器原生方法fillText自己的特性,指定最大宽度的情况下会横向压缩。
一种妥协的办法是先使用measureText方法测量出默认字号所需要的宽度,然后除以最大宽度得到压缩比,
最后直接根据该压缩比将字号设置为更小的值,再进行绘制时就会横竖两个方向都压缩了(字会变小但依然是正方形)。
作者: pajiman1999    时间: 2022-9-9 04:55
小秋橙 发表于 2022-9-8 13:35
https://developer.mozilla.org/zh-CN/docs/Web/API/CanvasRenderingContext2D/fillText
这是浏览器原生方 ...

这是mv的吗? 看不懂 可否直接给出 修改mv的那个位置 修改哪一句?
我以前用VA就改成功过 但是记不清改的是哪了
作者: 小秋橙    时间: 2022-9-9 11:03
还有一种办法是,新建一个空插件,就写一行:
Window_ItemList.prototype.maxCols = function() { return 1; };
丢进js/plugins文件夹,在编辑器中启用,这样游戏里的物品栏就会变成一列而不是两列,相当于宽度扩大了一倍。
作者: pajiman1999    时间: 2022-9-11 19:16
谢谢哥!~~~~




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1