Когда изменить размер моего NSView для печати?
У меня есть NSView
подкласс специально для печати. Я хочу, чтобы он соответствовал ширине страницы, а высота - количеству записей.
Но я действительно не нашел подходящего места для оценки вида. Я в настоящее время оцениваю представление в -beginDocument
(потому что мне нужно получить размер бумаги из -printInfo
чтобы иметь возможность сделать это), но иногда счетчик страниц при предварительном просмотре панели печати неверен, поэтому, похоже, это происходит слишком поздно.
Есть ли рекомендуемый способ сделать вывод на печать выводным в зависимости от размера страницы?
Вид создается прямо в -print:
метод и дан объект модели для печати, прежде чем создавать NSPrintOperation
с -printOperationWithView:
и звонит -runModal
на нем (где пользователь затем устанавливает все свойства, которые ему нравятся). Это реализует -beginDocument
(по вышеупомянутым причинам) и -drawRect:
и это в значительной степени это.
Я также предоставляю операции печати вспомогательный контроллер представления, который изменяет несколько свойств моего представления (цвета и размеры шрифта), которые затем вызывают перерисовку предварительного просмотра, потому что я выдаю их ключи из -keyPathsForValuesAffectingPreview
,