问题标签 [hyphenation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
6242 浏览

css - css3 word-wrap:break-word / break-all,没有连字符

word-wrap:break-word;CSS3 规范说在 Chrome 中必须使用部分支持,word-wrap:break-all;但没有连字符。我正在使用text-align:justify;有没有想出一个解决方案,在 chrome 中出现断字时有一个连字符?

我已经多次看到这个问题,但还没有找到完整的解决方案。

这是我当前如何使用它的代码示例。

jsFiddle

作品在 FF 和 Safari 中找到。

使用:Firefox:17 Chrome:23 Safari:6.0.2

0 投票
1 回答
3891 浏览

json - 带有连字符的 HTML 元素属性名称会自动转换为驼峰式

我正在构建一个自定义 AngularJS 指令来创建一个谷歌地图,并且我已经将一些谷歌地图选项存储在我的标签内的自定义属性中:

Angular 的指令编译方法有参数(tElement, tAttrs, transclude);当我登录tAttrs到控制台时,该对象的属性名称已将连字符转换为 camelCase:

扩展的 $tAttrs 对象的 Chrome 开发工具的屏幕截图(属性名称已转换为有效格式)

谁在做这件事——Angular 还是浏览器(在 Firefox 和 Chrome 中检查)?我可以依靠这种行为吗?

PS 当我检查 DOM 时,html 元素的属性仍然有连字符。

0 投票
1 回答
567 浏览

javascript - 使用 hyphenator.js 在 dompdf 中进行连字符

我一直试图让连字符在 dompdf 中工作。我的想法是在我提供给 dompdf 的 html 上使用 hyphenator.js。

到目前为止,我已经尝试了以下方法:

  1. <script src在标头中包含 hyphenator.js 文件
  2. <script src在正文中包含 hyphenator.js 文件
  3. 将连字符源代码直接包含在正文中

当我在浏览器中呈现页面时,hyphenator.js 在所有三种情况下都能完美运行。然而它在 dompdf 中根本不起作用。我错过了什么吗?

这真的很重要,因为我还需要使用 JavaScript 来动态绝对放置内容。

如果 JavaScript 根本不起作用,还有其他连字符选项吗?

非常感谢您!

0 投票
2 回答
2056 浏览

javascript - 使用 Hyphenator.js 的 Android 完全对齐和自动断字

我正在尝试通过自动连字符来完全证明 Android 中的文本。如here所述,我已经使用 WebView 实现了充分的理由。我已经阅读了几个关于 Android 中自动连字的线程,但没有一个适用于 WebViews。我尝试使用新的 CSS3 连字符:auto(包括 -webkit-hyphens:auto),但 Android WebKit 还不支持它。

我在这里找到了一篇博客文章,其中提到了使用连字符 JavaScript,但我不知道如何实现它(JavaScript 和 HTML 是待办事项列表中的下一个)。由于 .js 文件的大小,我不想简单地使用webView.loadUrl("javascript:someFunction()");

这是我目前正在使用的代码:

这是HTML:

与 html 文件一起存储的是 Hyphenator.js 文件。在我的计算机浏览器中打开 HTML 文件按预期工作,但在电话上我没有运气:计算机浏览器 (FF) 与 WebView 最终,我希望动态生成文本,但让它工作将是一个巨大的帮助。谢谢。

0 投票
2 回答
1682 浏览

css - 分解大字/防止破坏布局/连字符 js

我已经看到并浏览了太多页面来解释相同的问题并取得了各种成功。我想做的是想出一种方法,我可以分解大单词,这样它们就不会通过将内容拉伸到指定宽度之外来破坏 table/divs/etc。我需要为百分比宽度元素完成此操作。我觉得我已经尝试了一切,但必须有一个解决方案,即使它是一个 hack。到目前为止,我发现的最佳解决方案是使用hyphenator js。它适用于大多数长单词,除了它似乎只适用于可以在字典文件中找到的真实单词。例如,在我的所有示例中都很好地分解了这一点:

这是一串文本,如果我正在使用连字符 json 这将与连字符很好地分手,一切都会好起来的

像这样的事情不会被破坏,而是会破坏我的网站:

阿里巴巴

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

我想使用它的大多数网站都允许用户创建的文本出现在网站上,并且等号和连字符的长字符串很常见。我还注意到stackoverflow通过使用自动换行来解决这个问题:break-word; CSS(至少在Firefox中)。我对此进行了试验,发现它效果很好,但仅在使用预定义的像素宽度时才有效,我需要一个适用于百分比宽度的解决方案。我还使用了 word-wrap: break-all ,但它看起来很丑,因为它在应该换行时会在中间切断小词。

如果可能的话,我想继续使用连字符,因为它在大多数情况下都很好用。也许我已经看这个太久了,但是我可以设置连字符中的某种选项来分解像上面那些太大的非单词吗?也许有人在调整连字符正则表达式以实现这一点方面取得了一些成功?

0 投票
1 回答
1048 浏览

css - 如何检测自动断字支持?

仅当 CSS 连字符不可用时,我才想使用连字符 polyfill(例如hypher.jshyphenator.js ),即:

但是 Modernizr 中没有这样的检测。支持测试hyphens: auto并不可靠:Chrome 和 Mobile Safari 都支持它(带前缀),但只有后者支持连字符。

这是一个无法检测的功能吗?

0 投票
0 回答
769 浏览

c# - 如何防止 PDFBox 用连字符拆分单词

我正在使用 PDFBox 1.7.0 版从 PDF 中提取文本。这些类使用 .NET 编译为 .NET IKVM.NET。我正在使用以下代码,我在其中传递文件的名称和路径:

PDF 有 2 列。提取工作相当好。然而,许多单词被一个连字符分割到下一行,它们应该被保留为一个完整的单词。

例如,单词“becoming”变成了“becoming”,
就像许多其他单词一样。

有没有办法防止 PDFBox 用破折号“-”或连字符随机拆分单词并在一行上显示部分单词,而将其余部分带到下一行?

我在 stackoverflow 上看到了一篇文章,该文章涉及在单词之间随机插入空格,即PDFBox 在单词中添加空格

但是,我的问题是 PDFBox 用破折号或连字符拆分。

我还看到了对名为 的方法的引用,该方法charactersByArticle专门用于双列 PDF,我认为这可能会正确呈现提取的文本。但是,我还没有找到如何使用这种方法的工作示例,只是对它的预告片引用。

如果该charactersByArticle方法不能阻止这种情况,我什至会考虑 Regex,如果有人可以提供一个很好的工作示例,将其与我上面的 PDFTextStripper 方法结合使用。先感谢您。

0 投票
2 回答
8971 浏览

javascript - 我应该使用哪个 JavaScript 库进行客户端连字符?

我想通过 JavaScript 在我网站上的一些大文本上实现客户端连字符。(我知道 CSS3 连字符,并且会在可用时使用它,但它通常不可用。)

我一直在使用Hyphenator.js,它运行良好,但非常大(我的优化编译版本只有英文版,大小为 106 KB)而且速度很慢。它又大又慢,我正在考虑完全放弃连字符。无论如何,这只是一种奢侈。

但最近我遇到了一个似乎可以替代的东西:Hypher。让我感到困惑的是,Hypher 怎么能让我变得更小,做同样的事情。我想知道是否有人可以解释这一点。

Hypher 也同样有效吗?有什么理由改用 Hyphenator.js 吗?Hypher 的自述文件在页面底部有一个指向 Hyphenator.js 的链接,但没有任何文字解释这些项目之间的联系。

有人对最有效的客户端连字符有意见吗?

0 投票
1 回答
36 浏览

javascript - 在 Sencha 面板中尝试连字符文本失败

我正在编写一本电子书,它的页面分布在 Sencha Touch 2 的面板中,并且在尝试将面板中的段落连字符连接时遇到了麻烦。我已经尝试过 Hyphenator.js 和 CSS3 连字符,但没有任何运气。Sencha 框架之外的 html 中的相同代码成功连字符。有什么线索吗?谢谢你的帮助。

0 投票
0 回答
200 浏览

html - HTML 的离线文本断字

我有一个(俄语)文本,我需要以编程方式将其连字符以显示在浏览器中(即使用某种脚本放置&shy;在适当的位置)。

我知道hyphenator.js,但是,由于我的所有内容都已经离线生成,我也想离线进行连字符。也就是说,我不希望我的文本在浏览器中被连字符,而是生成到已经带有软连字符的静态 HTML 文件中。

一个(Linux)命令行工具或一个 C 库就可以了。甚至一些 Python 代码也可以。

有什么线索吗?也许我可以使用 TeX 以某种方式为我完成这项工作?