2012-04-09 2 views
1

Я надеюсь, что смогу сделать что-то похожее на окно масштабирования универсального доступа, показанное ниже. Я уже создал NSView и использовал операцию заполнения, я сделал прямоугольник с ясным «сквозным» композитом, чтобы увидеть его через окно и показать рабочий стол. Теперь мне интересно, можно ли увеличивать и уменьшать масштаб внутри моего представления, как на картинке ниже. Я думал, что это может быть IkImageView или что-то, что я могу применить, но я был уверен, как это было сделано. Кто-нибудь знает, как это сделать или показать мне, где я могу найти это в документах? Некоторый код будет замечательным. Благодаря!Увеличение и уменьшение через NSView или увеличение

enter image description here

ответ

1

Посмотрите пример Apple CIAnnotation. В этом примере увеличенное изображение, но я думаю, что вы можете достичь того, чего хотите. Вы можете скачать образец кода от here.

CIAnnotation приложение Пример:

enter image description here

Ссылки и руководства, которые могут помочь Вам с этим:

Core Image Programming guide
Quartz 2D Programming Guide
NSGraphicsContext Class Reference

1

NSView поддерживает масштабирование через - (void)scaleUnitSquareToSize:(NSSize)newUnitSize

Это увеличивает содержание зрения, так, чтобы использовать это вы должны установить рабочий стол позади мыши как его содержимого (NSImage может быть?), А затем увеличьте представление. Он будет обновляться при перетаскивании мыши.

Проверьте часть ImageKit кварца, в частности класс IKImageView. У него есть функции масштабирования, но я еще не работал с ним сам.