2014-04-02 6 views
1

Я пытаюсь распечатать NSView, который включает в себя пару пиротехнических диаграмм ядра среди других элементов. Однако пиар-коды не появляются. Теперь я понимаю, что просмотры с поддержкой слоев не печатаются, но мне трудно найти какие-либо примеры, когда люди обходили это и печатали графики ядра в NSView. Каков наилучший подход для этого?Как печатать диаграмму CorePlot

ответ

2

Для меня он работал, как только я в printRect настройки как:

NSRect printRect = NSZeroRect; 
printRect.size.width = (printInfo.paperSize.width - printInfo.leftMargin - printInfo.rightMargin) * printInfo.scalingFactor; 
printRect.size.height = (printInfo.paperSize.height - printInfo.topMargin - printInfo.bottomMargin) * printInfo.scalingFactor; 

self.hostingView.printRect = printRect;  
op = [NSPrintOperation printOperationWithView:self.hostingView printInfo:printInfo]; 

Примечание self.hostingView относится к CorePlot hostingView.

+0

Спасибо, это заставляет меня двигаться в правильном направлении, это отлично работает, если вы просто хотите построить один граф. Но у меня есть пара графиков в NSView, плюс дополнительные элементы, поэтому я хотел бы распечатать все элементы, как я их выложил в NSView. Но это, конечно, заставляет меня начать. – Cory

+1

Просто нужно было установить свойство printRect в каждом из просмотров хоста [frame view]], и все работает! Еще раз спасибо! – Cory

+0

На самом деле очень просто: self.hostingView.printRect = self.hostingView.bounds – Lubos

Смежные вопросы