1
26
好吧,如果你想要一些非常简单的东西,可能对你来说太没用了(如果你在段落中有任何HTML的话,就需要进行大的修改),那么看看这个:
这太简单了,可能只会起作用。这样做的目的是用空格分隔文本,然后逐字追加单词,观察元素高度是否增加,这将指示换行。 |
2
12
用于生成PDF之类的用例。 您可以将每行的字符数限制为,如果中间出现拆分,请适当调整。 要获得每行更准确的字符,可以使用单空格字体,然后确定每个允许字体的每个字符的宽度。然后将字符宽度除以允许的文本行宽度的大小,您将得到该字体每行允许的字符数。 你可以使用非等宽字体,但是你必须测量每个字母的宽度。自动猜测宽度的一种方法是使用一个没有边距或填充的跨距,为每个字体(和大小)添加每个字符,然后测量跨距的宽度并使用它。 我已经完成了代码:
|
3
11
以下是我最后使用的东西(为了你自己的邪恶目的,请随意批评和复制)。
首先,当编辑来自用户时,它与
换行是因为编辑文本框中填充了
当我需要提取格式化文本时,我会调用
最终结果是一个散列列表,每个散列包含一行文本的内容和垂直偏移量。
如果我只想要未格式化的文本,
|
4
7
一旦你有了更复杂的结构(比如段落中的链接),上面的解决方案就不起作用了。
所以我创建了一个javascript库来检测在这些情况下行的换行方式: http://github.com/xdamman/js-line-wrap-detector 我希望这有帮助。 |
5
0
在这种情况下,我需要把每一行都用一个跨距来包装。我这样做是为了向文本块添加加垫突出显示效果。将背景添加到包装文本的跨度标记将只填充文本块的开头和结尾,每行必须单独包装。 这是我根据上述建议提出的:
|
6
0
当存在内部标记和任意字体和样式时,概念上简单的方法也可以工作,就是进行第一次传递,将每个单词简单地放入自己的元素(可能是“span”,或者像“w”这样的自定义名称)。 然后,可以使用getboundingclientrect()迭代以查找“top”属性的更改位置:
这听起来很慢,但除非文件很大,否则你不会注意到。 |
Softly · 单选按钮未按预期取值 1 年前 |
NovoMannen · 导航中的下拉菜单在内容后面重叠 1 年前 |
eXor420 · 如何在脚本标记中使用导出的函数? 1 年前 |
IonicMan · 剑道网格在宽度过大时不显示某些列 1 年前 |
Kernier · 如何将数学公式支持添加到StacksEditor? 1 年前 |
Md. Ibrahim · CSS网格项溢出小屏幕滚动 1 年前 |
Akshay mek · Vscode扩展建议不适用于某些文件夹 1 年前 |