问题标签 [textkit]
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.
ios - TextKit 在广泛的排除路径后不布局文本
我从 objc.io #5 http://www.objc.io/issue-5/getting-to-know-textkit.html中获取了 TextKit 示例项目,并在 Text Interaction Demo 中修改了排除路径的宽度和形式。我使排除路径宽度大于其容器宽度。而且我发现如果我将它放在文本的中间,它不会在排除路径之后布局。有什么办法可以解决吗?我想查看排除路径下方的文本。如果我添加一个新的文本容器,我将失去选择行为。
ios - 如何使 UITableView 行高响应用户的首选文本大小(动态类型)?
我希望UITableView
的行高能够响应用户首选文本大小的变化。例如,当首选文本大小增加时,我想按比例增加行高。这是我到目前为止所拥有的:
那么计算反映用户首选文本大小的行高的最佳方法是什么?
ios - NSLayoutManager,每段有一个 NSTextContainer
如何创建一个 NSLayoutManager,将其文本中的每个段落分配给不同的 NSTextContainer?
这类似于 TextKit 中常见的多页/列用法,但每个页面对应于可变长度的不同段落。
ios - 在 iOS7 或 TextKit 中使用什么来代替 scrollRangeToVisible
在以前版本的 iOS 中,我UITextView
将使用滚动到底部
或者
但是前者现在会产生奇怪的效果,即每次我将文本附加到视图时,都会从长文本的顶部开始动画滚动到底部。添加文本时有没有办法弹出到文本底部?
ios - iOS NSAttributedString 到 HTML
我有一个NSAttributed
为UITextView
.
然后我让用户编辑他们想要的内容,然后我想再次将其转换为 HTML,所以我使用:
它确实返回 HTML,但这不是我想要的。一切都被赋予了一个类属性,以及它放在文档顶部的 CSS。图像和链接之类的东西甚至不包含在返回的 HTML 中,而且可能还有更多问题。
有没有更好的方法从NSAttributedString
. 或者,有没有一种方法可以解析NSAttributedString
并编写自己的 HTML?
ios - 动画 NSLayoutManager 绘图
我有一个NSLayoutManager
使用以下代码绘制文本的内容:
在我看来-drawRect:
。这非常有效,但我真正想做的是逐个字符地为文本设置动画,就好像它正在被输入一样。
我尝试将字符附加到“可见字符串”变量,然后调用-[self setNeedsDisplay]
,但是在处理大约 20 个字符以上的文本时,它开始滞后,因为它每次都会重绘所有文本。
回归:我怎样才能为NSLayoutManager
's设置动画-drawGlyphsForGlyphRange:atPoint:
?
ios - 为 NSTextStorage 子类设置 viewController 的 layoutManager 时字形索引无效
我的目标是使用 TextKit 斜体,设置某些单词的文本大小等。
首先,我只是想突出显示文本字符串中的一个字符。作为 TextKit 的新手(并且对于一般的编程来说如实说),我正在关注 obc.io 问题 #5 的语法高亮主题。
当使用我创建的 UITextView 内置的 NSLayoutManager 时,我的文本出现在屏幕上,没有抛出异常。当我在视图控制器(如下)中将 UITextView 设置为 NSTextStorage 子类的布局管理器时,我收到无效字形索引异常的错误。
控制台输出如下:
我多次阅读 Apple 的 Text Programming Guide 并认为我了解文本系统是如何建立的,但不知道为什么我的字形数会超过字形数......
ios - 连接的 NSAttributedString 没有以正确的格式呈现
我NSAttributedString
使用 TextKit 将 a 中的一大段文本(已经使用正确呈现的属性格式化)呈现为多列、多页格式,如下所示:
但是,在执行此操作之前,我需要将两个附加的属性字符串添加到现有的NSAttributedString
(self.attrString
在本例中),如下所示:
当我查看生成的属性字符串的内容时,我得到以下信息:
Moby Dick {NSFont = " font-family: \"Georgia\"; font-weight: normal; font-style: normal; font-size: 28.00pt";}Herman Melville{NSFont = " font-family: \"Georgia \"; 字体粗细:正常;字体样式:正常;字体大小:12.00pt"; }Lorem ipsum dolor et { NSColor = "UIDeviceWhiteColorSpace 0 1"; NSFont = " font-family: \"Times New Roman\"; font-weight: normal; font-style: normal; font-size: 12.00pt"; NSParagraphStyle = "Alignment 4, LineSpacing 0, ParagraphSpacing 12, ParagraphSpacingBefore 0, HeadIndent 0, TailIndent 0, FirstLineHeadIndent 0, LineHeight 0/0, LineHeightMultiple 0, LineBreakMode 0, Tabs (\n 28L,\n 56L,\n 84L,\ n 112L,\n
140L,\n 168L,\n 196L,\n 224L,\n 252L,\n 280L,\n
308L,\n 336L\n), DefaultTabInterval 36, Blocks (null), Lists (null), BaseWritingDirection -1, HyphenationFactor 0, TighteningFactor 0, HeaderLevel 0"; }more lorem ipsum 等等...
即看起来属性已正确添加。但是,当使用 TextKit 渲染时(参见第一段代码),合并文本组件(本示例中的标题和作者)的文本大小和不同字体无法如此渲染,而只是被分配了相同的基本属性如下文。
如果我没有使用 TextKit,而是创建了一个 UITextView 并将其NSAttributedString
直接呈现到该视图中(即不使用NSLayoutManager
等),则插入的属性字符串中的字体和大小差异会正确呈现。
我的问题:为什么添加的文本在使用 TextKit 时无法正确呈现,但在直接使用 UITextView 时却没有?我需要使用 TextKit 来支持它的多列和排除路径。
ios - 属性文本不适用于 TableView 单元格
尝试在 TabelViewCell 上使用不同的字体和字体大小,但它不起作用。
这是我尝试过的:
此代码使应用程序崩溃
然后我尝试了这个:
现在一切正常,但字体和字体大小没有改变。
以下是我的应用程序中的更多代码:
ios - 为 UITextView 中的文本获取 CGRect 以使用 CALayer 突出显示
我试图在 UITextView 中绘制一个透明的 CALayer,以便在搜索中突出显示匹配的文本。
我已经找到了正确的方法,但仍然没有找到正确的坐标。我需要找到文本容器的来源。现在,我得到了 textView 的原点,并以此偏移了图层的原点:
如果我移动文本字段,或者我不将偏移量除以 2,我会得到以下结果:
我想知道我是否走在正确的轨道上,如果是的话,如何找到 NSTextContainer 对象的来源。