Печать Cartographic Legend

MapInfo, MapBasic
Ответить
Роман01
Участник
Сообщения: 66
Зарегистрирован: 03 авг 2010, 04:24
Репутация: 0

Печать Cartographic Legend

Сообщение Роман01 » 14 дек 2012, 06:53

Уважаемые форумчане!
Я создал Cartographic Legend (2 Frame). Но распечатывается на 2-х листах (на втором только рамка).
Как сделать, чтобы печаталось на одном листе? Где и какие настройки надо поменять?

С уважением, Роман.

Boris
Гуру
Сообщения: 4231
Зарегистрирован: 10 апр 2006, 22:34
Репутация: -344969098
Откуда: Париж

Re: Печать Cartographic Legend

Сообщение Boris » 16 дек 2012, 01:59

ну хоть картинку приложите, что мы не гадали, что именно вы делаете. у термина "печатаю" в мапинфо как минимум два значения. плюс еще есть экспорт окна.

Роман01
Участник
Сообщения: 66
Зарегистрирован: 03 авг 2010, 04:24
Репутация: 0

Re: Печать Cartographic Legend

Сообщение Роман01 » 19 дек 2012, 05:42

Вот окно и подпрограмма. Помогите, пожалуйста.
Вложения
Sub kartz.doc
подпрограмма
(36 КБ) 726 скачиваний
okno.doc
прямо перед печатью.
(79 КБ) 350 скачиваний

thegeo
Активный участник
Сообщения: 161
Зарегистрирован: 17 янв 2012, 18:51
Репутация: 74

Re: Печать Cartographic Legend

Сообщение thegeo » 19 дек 2012, 15:44

М.б. стоит:
- свернуть окно до минимально необходимых размеров
- использование Interactive (в последней строке) излишне, т.к. все параметры печати заданы и диалог "Печать" не нужен.

Роман01
Участник
Сообщения: 66
Зарегистрирован: 03 авг 2010, 04:24
Репутация: 0

Re: Печать Cartographic Legend

Сообщение Роман01 » 20 дек 2012, 04:20

А разве в строке
Create Cartographic Legend From Window FrontWindow() Position (7, 0) Width 6 Height 5
Width 6 Height 5 - это не ограничения? Я и хотел, чтобы она была ограничена.

А как тогда свернуть окно до минимально необходимых размеров?

juffin_h
Завсегдатай
Сообщения: 265
Зарегистрирован: 22 окт 2012, 08:35
Репутация: 50
Откуда: Нижний Новгород

Re: Печать Cartographic Legend

Сообщение juffin_h » 20 дек 2012, 07:46

Да, это размер окна. И на А4 все должно уместится. Но окно у вас в режиме «полностью развернуто» и на картинке не виден его реальный размер (просто чтобы убедится).
Можно добавить строчку Set Window FrontWindow() Restore
Может в настройках принтера что то?
Как на первом листе распечатки размещено изображение? Заполнен весь лист?

Роман01
Участник
Сообщения: 66
Зарегистрирован: 03 авг 2010, 04:24
Репутация: 0

Re: Печать Cartographic Legend

Сообщение Роман01 » 20 дек 2012, 08:56

На A4 не поместилось всё. Restore уменьшил окно до минимума и так распечатал мелко.
Настройки принтера? А что там может быть?
На первом листе было всё, кроме рамки. В том то и всё дело - в рамке. Помогите, пожалуйста, как поместить на один лист.

juffin_h
Завсегдатай
Сообщения: 265
Зарегистрирован: 22 окт 2012, 08:35
Репутация: 50
Откуда: Нижний Новгород

Re: Печать Cartographic Legend

Сообщение juffin_h » 20 дек 2012, 09:59

Размер окна (Width 6 Height 5) по умолчанию в дюймах. Может у Вас сантиметры?
Попробуйте Width 6 Height 5 Units “in” Чтобы гарантировано были дюймы.
Роман01 писал(а):Настройки принтера? А что там может быть?
Установки полей и масштаба например.

Может пример данных выложите, чтоб поэкспериментировать. Так было бы проще разобраться.

thegeo
Активный участник
Сообщения: 161
Зарегистрирован: 17 янв 2012, 18:51
Репутация: 74

Re: Печать Cartographic Legend

Сообщение thegeo » 20 дек 2012, 18:24

Более подробно.
Свернуть окно. Как это выглядит и как взаимосвязано показано на рисунках. Размеры и масштабы можно варьировать по необходимости.
Печать выполнялась следующим кодом:

Sub Main
Set Window FrontWindow() Printer Default
PrintWin Window FrontWindow()
end sub
Вложения
p1.png
Состояние окна и результат печати. Вар.1
p1.png (20.88 КБ) 10026 просмотров
p2.png
Состояние окна и результат печати. Вар.2
p2.png (23.25 КБ) 10026 просмотров

Роман01
Участник
Сообщения: 66
Зарегистрирован: 03 авг 2010, 04:24
Репутация: 0

Re: Печать Cartographic Legend

Сообщение Роман01 » 21 дек 2012, 04:37

Уважаемый thegeo !
Я вставил строки
Sub Main
Set Window FrontWindow() Printer Default
Create Cartographic Legend From Window FrontWindow() Position (7, 0) Width 6 Height 5 Units "in"
...
PrintWin Window FrontWindow()
end sub

Но у меня также печатается на 2-х листах... (скриншот окна)
Что еще нужно доисправлять?
Вложения
Скриншот окна.doc
на 2-х листах...
(68.5 КБ) 381 скачивание

Роман01
Участник
Сообщения: 66
Зарегистрирован: 03 авг 2010, 04:24
Репутация: 0

Re: Печать Cartographic Legend

Сообщение Роман01 » 21 дек 2012, 04:54

А может быть как-то влияет то, что вначале у меня стоит
Set Window FrontWindow()
Create Cartographic Legend From Window FrontWindow() Position (6, 0) Width 6 Height 5 Units "in"
Window Title "Данные колодца!" Portrait
...

а в конце подпрограммы стоит
Set Window FrontWindow() Printer Name WindowInfo(FrontWindow(),WIN_INFO_PRINTER_NAME)
Orientation Portrait Copies 1 Papersize 9
PrintWin Window FrontWindow() Interactive
?

juffin_h
Завсегдатай
Сообщения: 265
Зарегистрирован: 22 окт 2012, 08:35
Репутация: 50
Откуда: Нижний Новгород

Re: Печать Cartographic Legend

Сообщение juffin_h » 21 дек 2012, 10:33

Покажите, что у Вас получается на бумаге. Все должно быть как показал thegeo.
1й вариант — окно развернуто, второй — нормальный размер (Restore).
Роман01 писал(а):Restore уменьшил окно до минимума и так распечатал мелко
Распечатал на 2х листах? Что значит мелко? Размер рамки д.б. 6Х5 дюймов.
Размер шрифта соответствует заданному в программе?

Роман01
Участник
Сообщения: 66
Зарегистрирован: 03 авг 2010, 04:24
Репутация: 0

Re: Печать Cartographic Legend

Сообщение Роман01 » 21 дек 2012, 11:32

Размер шрифта соответствует. Image-14 -1-й лист, Image-15 - 2-й лист, ДанныеКолодца - c Restore.
Вложения
ДанныеКолодца.pdf
(11.6 КБ) 438 скачиваний
Image-15.jpg
Image-15.jpg (295.42 КБ) 9985 просмотров
Image-14.jpg
Image-14.jpg (454.8 КБ) 9985 просмотров

juffin_h
Завсегдатай
Сообщения: 265
Зарегистрирован: 22 окт 2012, 08:35
Репутация: 50
Откуда: Нижний Новгород

Re: Печать Cartographic Legend

Сообщение juffin_h » 21 дек 2012, 13:09

Все должно работать.
Немного изменил высоту, так как легенда не помещалась
Create Cartographic Legend From Window FrontWindow() Position (7, 0) Width 5 Height 6.5
и привел окно к нормальному виду
Set Window FrontWindow() Restore Printer Name WindowInfo(FrontWindow(),WIN_INFO_PRINTER_NAME)

Выглядит так.
MI.png
Окно MapInfo
MI.png (54.65 КБ) 9978 просмотров
Paper.png
На печати
Paper.png (35.74 КБ) 9978 просмотров
Вы этого добивались?

Роман01
Участник
Сообщения: 66
Зарегистрирован: 03 авг 2010, 04:24
Репутация: 0

Re: Печать Cartographic Legend

Сообщение Роман01 » 24 дек 2012, 05:34

Да, огромное спасибо!

Ответить

Вернуться в «MapInfo»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя