Печать рисунков - неск.вопросов разработчикам

 
Добрый день. К сожалению, столкнулся с трудностями при печати графиков. Увы, стандартная печать не совсем удобна, особенно при печати на большом формате. Принтер позволяет получить до 1200 dpi, но стандартная печать ограничивается тем, что видно на экране, и возможности принтера используются далеко не полностью. Ув.разработчики, не могли бы вы пояснить, в чем преимущества такого подхода?

Так или иначе, в сложившейся ситуации я вынужден сохранять график как рисунок, а потом печатать его из сторонних программ. К сожалению, здесь я сталкиваюсь с другой трудностью - при сохранении рисунков с большим разрешением в некоторых случаях рисунок не создается. Отсюда вопрос - каково максимальное гарантированное разрешение, при котором рисунок будет сохранен? (или это зависит от других параметров?). Рисунок с разрешением 2000х1000, как правило, будет создан, но с разрешениями 3500х1000 и выше дело обстоит не так тривиально.

Но даже если мне удается сохранить данный рисунок - я, к своему стыду, не могу уловить, по какому принципу выбирается область, которая будет напечатана. Вроде бы это не левая сторона экрана, не правая и даже не точка в нижней части графика, в которой стоит маленький серый треугольник. Не могли бы вы пояснить методику расчета области?

Спасибо.
 
При печати на принтере происходит вписывание графика в разрешение принтера, а не печать того, что видно на экране. График рисуется в контексте целевого устройства.

Чтобы подобрать необходимый вариант вывода лучше всего пользоваться предварительным просмотром и только потом печатать.
 
Под "печатью того, что видно на экране" я подразумевал временные и ценовые границы печатаемого, а не разрешение. Не сомневаюсь (и это видно на отпечатанном графике), что используется контекст принтера, и надписи выглядят соответственно лучше, чем на экране.

При моих настройках (вид графика - "Линии", минимальный масштаб) при использовании стандартного механизма печати я получаю на формате А4 график даже меньшей емкости, чем экранный, и где-то раза в полтора более вместительный - на А3. К сожалению, для меня шаг между соседними точками графика "линии", используемый в стандартном механизме печати, слишком велик, а информационная емкость графика, соответственно, крайне недостаточна. Мне кажется удобным, если емкость отпечатанного листа А4 в два-три раза выше, чем экрана - похожее соотношение можно усмотреть и при печати текстов.

Именно поэтому мне приходится сохранять график как рисунок, разрешением порядка 5000х1000, и в дальнейшем печатать его через другие программы. И тут я сталкиваюсь с описанными в первом сообщении проблемами. Впрочем, вопрос о точке отсчета снимается - меня смутили случаи, когда печатаемая область находится близко к настоящему времени, а в этом случае график принудительно утягивается "правее", чтобы заполнять всю область печати. Это не совсем удобно, но логически объяснимо.

Однако проблема с неустойчивостью сохранения остается. Я не могу уловить системы, но разрешение порядка 4000х2000 является неким порогом, после которого вероятность успешного сохранения уменьшается. Система при этом не выдает никаких ошибок - но файл на диске не создается.
 
При моих настройках (вид графика - "Линии", минимальный масштаб) при использовании стандартного механизма печати я получаю на формате А4 график даже меньшей емкости, чем экранный, и где-то раза в полтора более вместительный - на А3. К сожалению, для меня шаг между соседними точками графика "линии", используемый в стандартном механизме печати, слишком велик, а информационная емкость графика, соответственно, крайне недостаточна.

Попробуйте подобрать масштаб увеличения графика и используйте превью.

Я только что попробовал сохранить 6000х3000 пикселей - получилось (на два оригинал/сжатый буфера тратится не меньше 72Mb), потом 10000х5000 (на два буфера тратится не меньше 200Mb) - тоже получилось. Вероятнее всего все дело в недостатке памяти. У меня стоит 2 Gb.
 
Продлема при печати графика на принтере. Не видно совсем идикатор. Это точки. Как ее решить в программном коде?
 
svagor:
Продлема при печати графика на принтере. Не видно совсем идикатор. Это точки. Как ее решить в программном коде?

Может у Вас что-то с настройками принтера? Какой нибудь экономичный режим? 

И вообще, какой тип терминала, какой билд терминала, какая операционная система, какой принтер и драйвер принтера? 

 
Forex Trader:
Добрый день. К сожалению, столкнулся с трудностями при печати графиков. Увы, стандартная печать не совсем удобна, особенно при печати на большом формате. Принтер позволяет получить до 1200 dpi, но стандартная печать ограничивается тем, что видно на экране, и возможности принтера используются далеко не полностью. Ув.разработчики, не могли бы вы пояснить, в чем преимущества такого подхода?

Так или иначе, в сложившейся ситуации я вынужден сохранять график как рисунок, а потом печатать его из сторонних программ. К сожалению, здесь я сталкиваюсь с другой трудностью - при сохранении рисунков с большим разрешением в некоторых случаях рисунок не создается. Отсюда вопрос - каково максимальное гарантированное разрешение, при котором рисунок будет сохранен? (или это зависит от других параметров?). Рисунок с разрешением 2000х1000, как правило, будет создан, но с разрешениями 3500х1000 и выше дело обстоит не так тривиально.

Но даже если мне удается сохранить данный рисунок - я, к своему стыду, не могу уловить, по какому принципу выбирается область, которая будет напечатана. Вроде бы это не левая сторона экрана, не правая и даже не точка в нижней части графика, в которой стоит маленький серый треугольник. Не могли бы вы пояснить методику расчета области?

Спасибо.
сбрасывайте необходимые данные в виде CSV и печатайте отдельными программами предназначенными для вывода мат/стат графиков (их тьма таких). Других путей получить красивую и адекватную картинку я не вижу.
Причина обращения: