为什么我只能用AVAsset的AVAssetImageGenerator截取屏幕截图?

时间:2017-09-26 14:33:20

标签: ios swift avfoundation

我目前遇到一个问题,我需要截取MoneyRails.configure do |config| config.rounding_mode = BigDecimal::ROUND_CEILING end Money.new(12345).format(:no_cents) 的屏幕截图,其上附有UIView

我读了一些Apple's documents for AVFoundation,建议使用AVPlayerLayer。但是,我无法访问AVAssetImageGenerator对象。

我尝试过像

这样的解决方案
AVPlayer

UIGraphicsBeginImageContextWithOptions(videoPlayerView.bounds.size, videoPlayerView.isOpaque, 0)
videoPlayerView.drawHierarchy(in: videoPlayerView.bounds, afterScreenUpdates: false)
let image = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()

videoPlayerView.snapshotView(afterScreenUpdates: false)

但它们都不起作用。

我也遇到了这个Screenshot for AVPlayer and Video,似乎当前唯一的解决方案是使用videoPlayerView.layer.render(in: context)

任何人都可以帮助我理解为什么吗?

0 个答案:

没有答案