我正在使用FabricJs创建一些文本图层,但我对齐线有问题。正在创建文本图层,并在图层边界和实际文本之间添加额外的空白空间。 我想要实现的是对齐线符合文本限制,但是,即使填充设置为0(这是默认值),它们也会对齐,包括空白空间。
我试图提出一个hacky解决方案,在图层上添加-7px填充,但看起来仍然很奇怪。
var iText2 = new fabric.IText('Text with negative padding', {
fontFamily: 'Arial',
left: 100,
top: 250,
fill: "#000000",
stroke: "",
padding: -7,
transparentCorners: true
});
答案 0 :(得分:0)
我想出了一个hacky解决方案。我已经从fabricJS修改了AligningGuidelines功能,因此对于iText图层它的工作方式不同。
if (activeObject.typeL == 'TEXT' && !activeTransformed) {
activeObjectHeight -= (activeObjectHeight / 2.2);
activeTransformed = true;
}
if (canvasObjects[i].typeL == 'TEXT') {
objectHeight -= (objectHeight / 2.2);
}
if (canvasObjects[i].typeL !== 'TEXT' && activeObject.typeL !== 'TEXT') {
//Default function code
}
基本上,如果活动对象与另一个对象或文本图层对齐,我会强制修改高度。