Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Разрешение принтера, Подскажите как вычислить? 
:(
    Опции темы
nikakoi
Дата 21.2.2007, 13:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 176
Регистрация: 6.5.2006

Репутация: нет
Всего: нет



Добрый день. Подскажите пожалуйста. 
Пытаюсь печатать картинки в C#.
На событие Print в PrintPageEventArgs получаю, что размеры страницы 800 на 1100..
А вроде у принтера разрешение больше. Как мне печатать картинки больше чем 800 на 1100.. 
Возможно ли такое, без сжатия изображения, что ли.. 
Надеюсь, понятно написалsmile)
PM MAIL   Вверх
Gelis
Дата 21.2.2007, 21:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 145
Регистрация: 26.10.2006
Где: Брест

Репутация: 2
Всего: 4



Цитата(nikakoi @  21.2.2007,  13:52 Найти цитируемый пост)
Как мне печатать картинки больше чем 800 на 1100.. 

Не знаю может после работы торможу, но по-идее так:
Код

            Image bmp;
            int dpiX = 0, dpiY = 0;
            dpiX = bmp.Width / e.MarginBounds.Width;
            dpiY = bmp.Height / e.MarginBounds.Height;
            if (dpiX <= 1 && dpiY <= 1)
            {
                e.Graphics.DrawImage(bmp,new Point(e.MarginBounds.Left,e.MarginBounds.Top);
            }
            else
            {
                if(dpiX>dpiY)
                {
                    e.Graphics.DrawImage(bmp,new Rectangle(e.MarginBounds.Left,
                        e.MarginBounds.Top,e.MarginBounds.Width,(int)bmp.Height/dpiX));
                }
                else
                {
                    e.Graphics.DrawImage(bmp,new Rectangle(e.MarginBounds.Left,
                        e.MarginBounds.Top,(int)bmp.Width/dpiY,e.MarginBounds.Height));
                }
            }


Это сообщение отредактировал(а) Gelis - 21.2.2007, 21:25
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0400 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.