Я пытаюсь отобразить CIImage в определенном месте на IOSurface с использованием [CIContext render:toIOSurface:bounds:colorSpace:]
, указав в качестве целевого прямоугольника параметр bounds.Render CIImage для конкретного прямоугольника в IOSurface
В соответствии с документацией это должно работать, но CoreImage всегда отображает изображение в нижнем левом углу IOSurface.
Мне кажется, как ошибка в CoreImage.
Я могу преодолеть эту проблему, предоставив изображение промежуточной IOS-поверхности с тем же размером CIImage, а затем скопируйте содержимое поверхности на другую поверхность. Однако я бы хотел избежать распределения и копирования в решении.
Любое предложение?
Это решение очень медленно для визуализации небольших участков изображения по запросу. В основном, поскольку CoreImage может копировать данные с CGDataProvider на графический процессор, и кажется, что его автоматическое кэширование в этом случае не работает. –