Печать из C#
От: altan  
Дата: 19.09.03 05:58
Оценка:
Мне нужно вывести некоторую информацию на печать
Как это сделать наиболее простым способом?
Принтера подключен как сетевой

Спасибо

25.03.04 14:49: Перенесено модератором из '.NET' — AVK
Re: Печать из C#
От: Аноним  
Дата: 19.09.03 06:52
Оценка:
Здравствуйте, altan, Вы писали:

A>Мне нужно вывести некоторую информацию на печать

A>Как это сделать наиболее простым способом?
A>Принтера подключен как сетевой

A>Спасибо


смотри класс PrintDocument
Re: Печать из C#
От: Undying Россия  
Дата: 21.09.03 09:37
Оценка: 18 (2)
Здравствуйте, altan, Вы писали:

A>Мне нужно вывести некоторую информацию на печать

A>Как это сделать наиболее простым способом?

    PrintDocument prndoc;
    PageSetupDialog setdlg;
    PrintPreviewDialog predlg;
    PrintDialog prndlg;
        
        Form1 ()
      {
      prndoc = new PrintDocument ();
      setdlg = new PageSetupDialog ();
      predlg = new PrintPreviewDialog ();
      prndlg = new PrintDialog ();

      prndoc.PrintPage += new PrintPageEventHandler (OnPrintPage);
      prndoc.QueryPageSettings += new QueryPageSettingsEventHandler(OnQueryPageSettings);
      prndoc.BeginPrint += new PrintEventHandler (OnBeginPrint);
      setdlg.Document = prndoc;
      predlg.Document = prndoc;
      prndlg.Document = prndoc;
      prndlg.AllowSomePages = true;
      prndlg.PrinterSettings.FromPage = 1;
      prndlg.PrinterSettings.ToPage = prndlg.PrinterSettings.MaximumPage;
      }
            
    void OnQueryPageSettings (object sender, QueryPageSettingsEventArgs e)
    {
      e.PageSettings.Landscape = true;
    }
    public void OnBeginPrint (object sender, PrintEventArgs args)
    {
    }
    void OnPrintPage (object sender, PrintPageEventArgs e)
    {
          //рисуем изображение
            //если надо вывести еще страницу
            e.HasMorePages = true;
    }
        
        //вызов окна предварительного просмотра
        predlg.ShowDialog ();
        //печатать
        prndoc.Print ();
... << RSDN@Home 1.1 beta 2 >>
Re[2]: Печать из C#
От: Аноним  
Дата: 24.03.04 18:14
Оценка:
Здравствуйте, Undying, Вы писали:

U>Здравствуйте, altan, Вы писали:


A>>Мне нужно вывести некоторую информацию на печать

A>>Как это сделать наиболее простым способом?

U>
U>    PrintDocument prndoc;
U>    PageSetupDialog setdlg;
U>    PrintPreviewDialog predlg;
U>    PrintDialog prndlg;
        
U>        Form1 ()
U>      {
U>      prndoc = new PrintDocument ();
U>      setdlg = new PageSetupDialog ();
U>      predlg = new PrintPreviewDialog ();
U>      prndlg = new PrintDialog ();

U>      prndoc.PrintPage += new PrintPageEventHandler (OnPrintPage);
U>      prndoc.QueryPageSettings += new QueryPageSettingsEventHandler(OnQueryPageSettings);
U>      prndoc.BeginPrint += new PrintEventHandler (OnBeginPrint);
U>      setdlg.Document = prndoc;
U>      predlg.Document = prndoc;
U>      prndlg.Document = prndoc;
U>      prndlg.AllowSomePages = true;
U>      prndlg.PrinterSettings.FromPage = 1;
U>      prndlg.PrinterSettings.ToPage = prndlg.PrinterSettings.MaximumPage;
U>      }
            
U>    void OnQueryPageSettings (object sender, QueryPageSettingsEventArgs e)
U>    {
U>      e.PageSettings.Landscape = true;
U>    }
U>    public void OnBeginPrint (object sender, PrintEventArgs args)
U>    {
U>    }
U>    void OnPrintPage (object sender, PrintPageEventArgs e)
U>    {
U>          //рисуем изображение
U>            //если надо вывести еще страницу
U>            e.HasMorePages = true;
U>    }
        
U>        //вызов окна предварительного просмотра
U>        predlg.ShowDialog ();
U>        //печатать
U>        prndoc.Print ();
U>


есть вопрос: пусть у меня есть какието данные(например цифры и строки) . как мне их передать на печать? может как параметры какието? и еще: как красиво выводить данные на печать(напр. в виде таблицы)?
Re[3]: Печать из C#
От: Undying Россия  
Дата: 24.03.04 19:34
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>есть вопрос: пусть у меня есть какието данные(например цифры и строки) . как мне их передать на печать? может как параметры какието?


Рисуешь картинку в void OnPrintPage (object sender, PrintPageEventArgs e) с помощью GDI+, она и выводится на печать.

А> и еще: как красиво выводить данные на печать(напр. в виде таблицы)?


Встроенного ничего не нашел, хотя вообще есть Crystal Report, он вроде должен уметь, но я с ним не работал. Отрисовку таблиц и графиков/диаграмм сам писал, если хочешь могу кинуть на мыло.
... << RSDN@Home 1.1.2 stable >>
Re[4]: Печать из C#
От: Аноним  
Дата: 24.03.04 20:06
Оценка:
Здравствуйте, Undying, Вы писали:

U>Здравствуйте, <Аноним>, Вы писали:


А>>есть вопрос: пусть у меня есть какието данные(например цифры и строки) . как мне их передать на печать? может как параметры какието?


U>Рисуешь картинку в void OnPrintPage (object sender, PrintPageEventArgs e) с помощью GDI+, она и выводится на печать.


гык... каким образом? как нарисовать простые данные? я на C# ничего не рисовал — поэтому буду признателен за кусочек кода который рисует картинку по каким то данным

А>> и еще: как красиво выводить данные на печать(напр. в виде таблицы)?


U>Встроенного ничего не нашел, хотя вообще есть Crystal Report, он вроде должен уметь, но я с ним не работал. Отрисовку таблиц и графиков/диаграмм сам писал, если хочешь могу кинуть на мыло.


как таковой у меня нет таблицы. про таблицы я так: есть просто значения — надо вывести их друг под другом... хотя может лучше создать в памяти таблицу, поместить значения туда и напечатать их? кстати еще вопрос: как перед печатью сделать просмотр того что будет печататься?
Re[5]: Печать из C#
От: Undying Россия  
Дата: 24.03.04 20:30
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>>>есть вопрос: пусть у меня есть какието данные(например цифры и строки) . как мне их передать на печать? может как параметры какието?


U>>Рисуешь картинку в void OnPrintPage (object sender, PrintPageEventArgs e) с помощью GDI+, она и выводится на печать.


А>гык... каким образом? как нарисовать простые данные? я на C# ничего не рисовал — поэтому буду признателен за кусочек кода который рисует картинку по каким то данным


Для рисования нужно получить объект Graphics, содержится он в параметрах OnPrintPage и OnPaint (также можно получить его напрямую, но тебе думаю этого не нужно). У этого Graphics есть куча методов рисующих всякие примитивы, например, строка рисуется так:

    void OnPrintPage (object sender, PrintPageEventArgs e)
    {
      e.Graphics.DrawString("String", new Font("Microsoft Sans Serif", 8), Brushes.Black, 100, 50);
        }


А>как таковой у меня нет таблицы. про таблицы я так: есть просто значения — надо вывести их друг под другом... хотя может лучше создать в памяти таблицу, поместить значения туда и напечатать их?


Тогда не заморачивайся, а просто выведи в столбик, изменяя координату Y у DrawString.

А> кстати еще вопрос: как перед печатью сделать просмотр того что будет печататься?


Посмотри внимательнее мой листинг печати, там это есть внизу с комментарием.
... << RSDN@Home 1.1.2 stable >>
Re: Печать из C#
От: MChariev Узбекистан www.frx2any.com
Дата: 24.03.04 20:36
Оценка:
Здравствуйте, altan, Вы писали:

A>Мне нужно вывести некоторую информацию на печать

A>Как это сделать наиболее простым способом?
A>Принтера подключен как сетевой

A>Спасибо


Ya ispol'zyu dlay etih celey ReportDepot for .NET — pozvolayet generit' otchety na letu
Re[6]: Печать из C#
От: Аноним  
Дата: 24.03.04 20:51
Оценка:
Здравствуйте, Undying, Вы писали:

U>Здравствуйте, <Аноним>, Вы писали:


А>>>>есть вопрос: пусть у меня есть какието данные(например цифры и строки) . как мне их передать на печать? может как параметры какието?


U>>>Рисуешь картинку в void OnPrintPage (object sender, PrintPageEventArgs e) с помощью GDI+, она и выводится на печать.


А>>гык... каким образом? как нарисовать простые данные? я на C# ничего не рисовал — поэтому буду признателен за кусочек кода который рисует картинку по каким то данным


U>Для рисования нужно получить объект Graphics, содержится он в параметрах OnPrintPage и OnPaint (также можно получить его напрямую, но тебе думаю этого не нужно). У этого Graphics есть куча методов рисующих всякие примитивы, например, строка рисуется так:


U>
U>    void OnPrintPage (object sender, PrintPageEventArgs e)
U>    {
U>      e.Graphics.DrawString("String", new Font("Microsoft Sans Serif", 8), Brushes.Black, 100, 50);
U>        }
U>


а какой наймспейс надо включить а то ругается на PrintPageEventArgs?
Re[7]: Печать из C#
От: Undying Россия  
Дата: 24.03.04 20:55
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>а какой наймспейс надо включить а то ругается на PrintPageEventArgs?


System.Drawing.Printing и System.Drawing.

зы
Посмотрел бы в msdn'е, быстрее бы получилось.
... << RSDN@Home 1.1.2 stable >>
Re[6]: Печать из C#
От: Аноним  
Дата: 24.03.04 21:24
Оценка:
Здравствуйте, Undying, Вы писали:

U>Здравствуйте, <Аноним>, Вы писали:


А>>>>есть вопрос: пусть у меня есть какието данные(например цифры и строки) . как мне их передать на печать? может как параметры какието?


U>>>Рисуешь картинку в void OnPrintPage (object sender, PrintPageEventArgs e) с помощью GDI+, она и выводится на печать.


А>>гык... каким образом? как нарисовать простые данные? я на C# ничего не рисовал — поэтому буду признателен за кусочек кода который рисует картинку по каким то данным


U>Для рисования нужно получить объект Graphics, содержится он в параметрах OnPrintPage и OnPaint (также можно получить его напрямую, но тебе думаю этого не нужно). У этого Graphics есть куча методов рисующих всякие примитивы, например, строка рисуется так:


U>
U>    void OnPrintPage (object sender, PrintPageEventArgs e)
U>    {
U>      e.Graphics.DrawString("String", new Font("Microsoft Sans Serif", 8), Brushes.Black, 100, 50);
U>        }
U>


А>>как таковой у меня нет таблицы. про таблицы я так: есть просто значения — надо вывести их друг под другом... хотя может лучше создать в памяти таблицу, поместить значения туда и напечатать их?


U>Тогда не заморачивайся, а просто выведи в столбик, изменяя координату Y у DrawString.


а нужно ли заботится о том если данных больше чем 1 лист? или винда сама все сделает за меня?
Re[7]: Печать из C#
От: Undying Россия  
Дата: 24.03.04 21:31
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>а нужно ли заботится о том если данных больше чем 1 лист? или винда сама все сделает за меня?


Нужно. Заведи счетчик напечатанных страниц и в OnPrintPage прибавляй к нему по единице.
... << RSDN@Home 1.1.2 stable >>
Re[8]: Печать из C#
От: Аноним  
Дата: 24.03.04 21:45
Оценка:
Здравствуйте, Undying, Вы писали:

U>Здравствуйте, <Аноним>, Вы писали:


А>>а нужно ли заботится о том если данных больше чем 1 лист? или винда сама все сделает за меня?


U>Нужно. Заведи счетчик напечатанных страниц и в OnPrintPage прибавляй к нему по единице.


а для чего нужен то счтчик? и как мне порезать инфу по страничкам?
Re[9]: Печать из C#
От: Undying Россия  
Дата: 24.03.04 22:59
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>>>а нужно ли заботится о том если данных больше чем 1 лист? или винда сама все сделает за меня?


U>>Нужно. Заведи счетчик напечатанных страниц и в OnPrintPage прибавляй к нему по единице.


А>а для чего нужен то счтчик?


А как ты без счетчика узнаешь какая страница сейчас выводится?

А>и как мне порезать инфу по страничкам?


Как я понял у тебя задача примерно сводится к выводу массива строк в столбик, т.е. тебе нужно определить сколько строк влазит на страницу, нарисовать их, вывести страницу на печать, вывести следующие сколько-то строк, снова вывести и т.д.

Размеры страницы можно узнать через e.PageBounds, высоту шрифта через font.GetHeight(e.Graphics);

зы
В принципе могу кинуть на мыло класс, который умеет выводить большую картинку в виде кучи страниц. Т.е. тебе достаточно будет задать размер картинки и размер области вывода, этот класс сам определить на сколько страниц нужно эту картинку разбить и последовательно их выведет.
... << RSDN@Home 1.1.2 stable >>
Re[4]: Печать из C#
От: Cru  
Дата: 24.03.04 23:59
Оценка:
U>Встроенного ничего не нашел, хотя вообще есть Crystal Report, он вроде должен уметь, но я с ним не работал. Отрисовку таблиц и графиков/диаграмм сам писал, если хочешь могу кинуть на мыло.

Кинь мне пожалуйсто
crue1@hotbox.ru
Re[10]: Печать из C#
От: Аноним  
Дата: 25.03.04 04:48
Оценка:
Здравствуйте, Undying, Вы писали:

U>Здравствуйте, <Аноним>, Вы писали:


А>>>>а нужно ли заботится о том если данных больше чем 1 лист? или винда сама все сделает за меня?


U>>>Нужно. Заведи счетчик напечатанных страниц и в OnPrintPage прибавляй к нему по единице.


А>>а для чего нужен то счтчик?


U>А как ты без счетчика узнаешь какая страница сейчас выводится?


А>>и как мне порезать инфу по страничкам?


U>Как я понял у тебя задача примерно сводится к выводу массива строк в столбик, т.е. тебе нужно определить сколько строк влазит на страницу, нарисовать их, вывести страницу на печать, вывести следующие сколько-то строк, снова вывести и т.д.


U>Размеры страницы можно узнать через e.PageBounds, высоту шрифта через font.GetHeight(e.Graphics);


U>зы

U>В принципе могу кинуть на мыло класс, который умеет выводить большую картинку в виде кучи страниц. Т.е. тебе достаточно будет задать размер картинки и размер области вывода, этот класс сам определить на сколько страниц нужно эту картинку разбить и последовательно их выведет.

кинь плиз на sse@ua.fm
Re[4]: Печать из C#
От: Scalder  
Дата: 25.03.04 07:17
Оценка:
U>Встроенного ничего не нашел, хотя вообще есть Crystal Report, он вроде должен уметь, но я с ним не работал. Отрисовку таблиц и графиков/диаграмм сам писал, если хочешь могу кинуть на мыло.

А можно и мне? scalder_xp@mail.ru
Re[5]: Печать из C#
От: Yehuda  
Дата: 25.03.04 07:52
Оценка:
Здравствуйте, Scalder, Вы писали:

U>>Встроенного ничего не нашел, хотя вообще есть Crystal Report, он вроде должен уметь, но я с ним не работал. Отрисовку таблиц и графиков/диаграмм сам писал, если хочешь могу кинуть на мыло.


S>А можно и мне? scalder_xp@mail.ru


..и мне? y_kaptsan@yahoo.com
Re[5]: Печать из C#
От: Undying Россия  
Дата: 25.03.04 10:28
Оценка:
Здравствуйте, Scalder, Вы писали:

S>А можно и мне? scalder_xp@mail.ru


Отправил.
... << RSDN@Home 1.1.2 stable >>
Re[6]: Печать из C#
От: Undying Россия  
Дата: 25.03.04 10:28
Оценка:
Здравствуйте, Yehuda, Вы писали:

Y>..и мне? y_kaptsan@yahoo.com


Отправил.
... << RSDN@Home 1.1.2 stable >>
Re[5]: Печать из C#
От: Undying Россия  
Дата: 25.03.04 10:28
Оценка:
Здравствуйте, Cru, Вы писали:

Cru>Кинь мне пожалуйсто

Cru>crue1@hotbox.ru

Отправил.
... << RSDN@Home 1.1.2 stable >>
Re[11]: Печать из C#
От: Undying Россия  
Дата: 25.03.04 10:28
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>кинь плиз на sse@ua.fm


Отправил.
... << RSDN@Home 1.1.2 stable >>
Re[4]: Печать из C#
От: FightUntilWeDie Россия http://www.crownest.ru
Дата: 22.08.04 13:15
Оценка:
Здравствуйте, Undying, Вы писали:

U>Здравствуйте, <Аноним>, Вы писали:


А>>есть вопрос: пусть у меня есть какието данные(например цифры и строки) . как мне их передать на печать? может как параметры какието?


U>Рисуешь картинку в void OnPrintPage (object sender, PrintPageEventArgs e) с помощью GDI+, она и выводится на печать.


А>> и еще: как красиво выводить данные на печать(напр. в виде таблицы)?


U>Встроенного ничего не нашел, хотя вообще есть Crystal Report, он вроде должен уметь, но я с ним не работал. Отрисовку таблиц и графиков/диаграмм сам писал, если хочешь могу кинуть на мыло.




Здраствуйте.. может уже позно... но мне можно на мыло кинуть..... !!
Заранее благодарен!!
You gotta do what you gotta do.
Re[5]: Печать из C#
От: Undying Россия  
Дата: 22.08.04 15:00
Оценка: 2 (1)
Здравствуйте, FightUntilWeDie, Вы писали:

FUW>Здраствуйте.. может уже позно... но мне можно на мыло кинуть..... !!

FUW>Заранее благодарен!!

Отправил.
... << RSDN@Home 1.1.2 stable >>
Re[6]: Печать из C#
От: FightUntilWeDie Россия http://www.crownest.ru
Дата: 22.08.04 17:43
Оценка:
Здравствуйте, Undying, Вы писали:

U>Здравствуйте, FightUntilWeDie, Вы писали:


FUW>>Здраствуйте.. может уже позно... но мне можно на мыло кинуть..... !!

FUW>>Заранее благодарен!!

U>Отправил


Спасибо!!!!
You gotta do what you gotta do.
Re[4]: Печать из C#
От: Аноним  
Дата: 23.08.04 04:02
Оценка:
Здравствуйте, Undying, Вы писали:

U>Здравствуйте, <Аноним>, Вы писали:


А>>есть вопрос: пусть у меня есть какието данные(например цифры и строки) . как мне их передать на печать? может как параметры какието?


U>Рисуешь картинку в void OnPrintPage (object sender, PrintPageEventArgs e) с помощью GDI+, она и выводится на печать.


А>> и еще: как красиво выводить данные на печать(напр. в виде таблицы)?


U>Встроенного ничего не нашел, хотя вообще есть Crystal Report, он вроде должен уметь, но я с ним не работал. Отрисовку таблиц и графиков/диаграмм сам писал, если хочешь могу кинуть на мыло.



Будь добр, кинь мне на мыло.
pinkl@inbox.ru
Заранее спасибо.
Re[5]: Печать из C#
От: Undying Россия  
Дата: 23.08.04 15:33
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Будь добр, кинь мне на мыло.

А>pinkl@inbox.ru
А>Заранее спасибо.

Отправил.
... << RSDN@Home 1.1.2 stable >>
Re[11]: Печать из C#
От: Spaider Верблюд  
Дата: 14.01.05 15:45
Оценка:
Здравствуйте, Аноним, Вы писали:

U>>В принципе могу кинуть на мыло класс, который умеет выводить большую картинку в виде кучи страниц. Т.е. тебе достаточно будет задать размер картинки и размер области вывода, этот класс сам определить на сколько страниц нужно эту картинку разбить и последовательно их выведет.


А>кинь плиз на sse@ua.fm


Сейчас как раз мучаюсь с выводом большой картинки на печать с разрезанием её на кусочки. Запутался, и не могу понять, где именно.
Если не сложно, выложите исходники этого дела, если у кого сохранились. Или киньте сразу на мыло denis.dm[@]tut.by
--
К вашим услугам,
Re[7]: Печать из C#
От: Yehuda  
Дата: 19.01.05 10:22
Оценка:
Здравствуйте, Undying, Вы писали:

U>Здравствуйте, Yehuda, Вы писали:


Y>>..и мне? y_kaptsan@yahoo.com


U>Отправил.


Нету... Не сочтите за труд — еще раз...
Спасибо заранее.
Re[12]: Печать из C#
От: Undying Россия  
Дата: 19.01.05 10:39
Оценка:
Здравствуйте, Spaider, Вы писали:

S>Сейчас как раз мучаюсь с выводом большой картинки на печать с разрезанием её на кусочки. Запутался, и не могу понять, где именно.

S>Если не сложно, выложите исходники этого дела, если у кого сохранились. Или киньте сразу на мыло denis.dm[@]tut.by

Отправил.
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Re[8]: Печать из C#
От: Undying Россия  
Дата: 19.01.05 10:39
Оценка:
Здравствуйте, Yehuda, Вы писали:

Y>Нету... Не сочтите за труд — еще раз...

Y>Спасибо заранее.

Отправил.
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Re[4]: Печать из C#
От: SelfCoder  
Дата: 19.01.05 22:42
Оценка:
Здравствуйте, Undying, Вы писали:

U>Встроенного ничего не нашел, хотя вообще есть Crystal Report, он вроде должен уметь, но я с ним не работал. Отрисовку таблиц и графиков/диаграмм сам писал, если хочешь могу кинуть на мыло.


Если не трудно, скинь сюда hethead@hotbox.ru, пожалуйста
Re[5]: Печать из C#
От: Undying Россия  
Дата: 20.01.05 00:06
Оценка:
Здравствуйте, SelfCoder, Вы писали:

SC>Если не трудно, скинь сюда hethead@hotbox.ru, пожалуйста


Не посылается, ящик точно правильный?
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Re[5]: Печать из C#
От: Аноним  
Дата: 02.02.06 08:59
Оценка:
Здравствуйте, SelfCoder, Вы писали:

SC>Здравствуйте, Undying, Вы писали:


U>>Встроенного ничего не нашел, хотя вообще есть Crystal Report, он вроде должен уметь, но я с ним не работал. Отрисовку таблиц и графиков/диаграмм сам писал, если хочешь могу кинуть на мыло.


SC>Если не трудно, скинь сюда hethead@hotbox.ru, пожалуйста


А можно и мне примерчик

mx-mx-mx@yandex.ru

спасибо !
Re[6]: Печать из C#
От: ekamaloff Великобритания  
Дата: 02.02.06 09:14
Оценка:
Здравствуйте, Undying, Вы писали:

U>Здравствуйте, SelfCoder, Вы писали:


SC>>Если не трудно, скинь сюда hethead@hotbox.ru, пожалуйста


U>Не посылается, ящик точно правильный?


Есть гениальная идея — выложить это дело в файлы и запостить ссылку сюда. Кто захочет — пусть скачивает.

А то эта ветка превратилась в бюро добрых услуг .
It is always bad to give advices, but you will be never forgiven for a good one.
Oscar Wilde
Re[6]: Печать из C#
От: Аноним  
Дата: 22.02.07 11:26
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, SelfCoder, Вы писали:


SC>>Здравствуйте, Undying, Вы писали:


U>>>Встроенного ничего не нашел, хотя вообще есть Crystal Report, он вроде должен уметь, но я с ним не работал. Отрисовку таблиц и графиков/диаграмм сам писал, если хочешь могу кинуть на мыло.


Я понимаю, что уж слишком много просьб, но очень актуальная тема!
Можно и сюда: g_panin@inbox.ru
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.