问题标签 [catextlayer]

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 投票
0 回答
253 浏览

ios - CATextLayer/NSAttributedString - 确定显示文本的确切大小

我有一个带有 NSAttributedString 的 CATextLayer,我想计算可见/绘制文本的确切大小。

我试过这个: http ://www.taffysoft.com/pages/20120202-01.html

但它对字符串“1”和“5”给出了相同的结果,即使使用我的测试字体(AvenirNextCondensed),这两个字体的宽度也很明显不同。

如何计算可见文本的确切大小?

0 投票
0 回答
75 浏览

ios - NSTimer IOS设置层的文本,但一旦定时器被破坏,文本就会消失

我正在使用 NSTimer 将文本写入 CATextLayer,但文本仅显示一瞬间。

我这样设置第一个计时器:

}

它调用此方法来更改文本,然后创建一个新计时器。

代码运行没有错误,文本在适当的时间显示,但文本只在屏幕上闪烁一瞬间,并且不会在方法调用之间持续存在。是因为我没有保留对计时器的引用吗?

应使用 nextLine 方法设置文本,如下所示:

}

TextLayer 是一个 CATextLayer,并在接口中声明为变量,如下所示:

它在 viewDidLoad 方法中被实例化。

我也试过这样设置文本:

但同样的事情也会发生。句子仅在计时器触发时出现,然后再次消失。我想知道是不是因为它在 CATextLayer 中?对IOS非常陌生,所以不知所措。任何帮助都会很棒。谢谢

0 投票
2 回答
292 浏览

swift - 尝试将 CATextLayer 添加到视频时出现无效的合成错误 (-11841)

我正在尝试在视频上添加文本,但无论我做什么,我都会收到无效的合成错误 (-11841)。我遵循了教程,通读了线程,没有什么是错误的。我正在组合 3 个视频和一个音轨,效果很好。我正在尝试在第一个视频剪辑 (videoStartAsset) 的持续时间内添加文本。

这是我正在使用的代码:

谢谢。

0 投票
1 回答
146 浏览

ios - 如何根据 CATextLayer 的宽度更改字体?

对于 UILabel,我们有 adjustFontSizetoWidth 属性,就像我们对 CATextLayer 有任何东西一样。

我想调整字符串以适合给定的文本层宽度。

0 投票
1 回答
859 浏览

ios - 具有 NSAttributedString 奇怪间距的多行 CATextLayer

使用从 UITextView 获得的文本,我将文本呈现在视频顶部。我正在使用 CATextLayer 并得到一个非常奇怪的结果。当我使用 UILabel 在屏幕上显示它以进行预览时,它看起来很好并且没有间距问题。

有没有办法格式化 CATextLayer 以使其与 UILabel 结果匹配?到目前为止,我尝试过的是在将 NSAttributedString 放在 CATextLayer 上之前对其进行格式化什么都不做。

有什么建议吗?

0 投票
2 回答
565 浏览

ios - 无效果:CATextLayer 包裹

我有关键问题。

我开发 iOS 应用程序。我尝试在 iOS 8.3 上使用这个应用程序,CATextLayer 不能像以前那样工作。

我认为“包装”属性不起作用。因为 CATextLayer 具有正确的高度和宽度。但只是文本没有被包装。

如果文本是多行,则只有行尾存在此问题。

官方参考: https ://developer.apple.com/documentation/quartzcore/catextlayer/1515302-wrapped

0 投票
1 回答
259 浏览

ios - 调用 removeFromSuperlayer 后,CATextLayer 仍在子层中

我有一个 mapView,它有 34 个 CAShapeLayer 来渲染每个省,另外 34 个 CATextLayer 来渲染每个省的名称。我将计算每个省的中心。

现在我将此 mapView 添加到 UIScrollView 中,当我缩放 mapView 时,我想重新绘制 CATextLayer 以使用另一个字体大小。所以在缩放之后,我会手动移除所有的 CATextLayer 并重新绘制它们,如下所示。

但是,我发现,for循环结束后,子层中还有一些CATextLayer,准确的说,每次测试,有18个CATextLayer没有被删除。我从来没有遇到过这个问题,我错过了什么吗?请帮忙,谢谢。

0 投票
1 回答
192 浏览

ios - 更改 CATextLayer 的高度时文本会跳转

当我更改 CATextLayer 的高度时,会从上方(或下方)进入新文本,如下图所示。我怎样才能防止这种情况?

在此处输入图像描述

0 投票
1 回答
4540 浏览

swift - CATextLayer 忽略字体大小

我想为我的图像创建一个文本覆盖。问题是,如果我尝试添加第二个文本,比如字幕,它会忽略我的字体大小。

新字体是正确的,但它总是和 titleFont 一样大小(16)。如何更改字体大小?

0 投票
0 回答
53 浏览

ios - 为视频添加了字幕但删除了音频?

我已按照以下链接中的说明添加字幕(在“就像那些外国电影一样 - 为视频添加字幕”部分下):

http://www.raywenderlich.com/30200/avfoundation-tutorial-adding-overlays-and-animations-to-videos#comments

但是,由于某种原因,当我播放创建的视频时,声音被删除了。

我应该怎么做才能在最终视频中保持该音频?

任何帮助将不胜感激。