Я использовал следующий код, чтобы эмулировать возможности Safari, чтобы изменить масштаб веб-страницы:Печать Webview == Обрезанные содержание после изменения scaleUnitSquareToSize
-(IBAction)changeScale:(NSControl *)sender {
[[[[wv mainFrame] frameView] documentView] setBounds:[self originalBounds]];
[[[[wv mainFrame] frameView] documentView] scaleUnitSquareToSize:NSMakeSize([sender floatValue], [sender floatValue])];
[[[[wv mainFrame] frameView] documentView] setNeedsDisplay:YES];
}
Проблема у меня в том, что когда я печатаю после уменьшения масштаба, в то время как контент меньше, он не репаринируется: документ изначально 4 страницы длиной все еще 4 страницы, но страницы только частично заполнены. Мое ожидание в том, что страницы будут более узкими, а также использовать всю высоту бумаги.
Для печати, я использую это:
[[[[wv mainFrame] frameView] documentView] print:sender];
Мысли?
Спасибо! Вуди
Update: Я рассматривал этот вопрос с командой печати на WWDC, и оказывается, моя реализация не была идеальной реализации. ;) Они посоветовали мне не добавлять функциональность шкалы, изменяя webview. Вместо этого они предложили мне изменить параметры «Диалоговое окно печати», чтобы он добавлял параметры «Масштаб», позволяя настраивать его во время печати/создания PDF-файлов.
Корпус закрыт.