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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> PrintPreview(не отображается text) 
:(
    Опции темы
shark1
Дата 28.9.2008, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Почему то не отображается text.Пытаюсь вывести на печать текст,но почемуто его не видно.Плизззззз,подскажите где ошибка.
Зарание спасибо.
Код:
Код

static int intCurrentChar;
        private StringReader stringReader;
        private Font currentFont = null;

private void printDocument1_PrintPage(object sender, PrintPageEventArgs e)
        {
            Font font2 = new Font("Microsoft Sans Serif", 13);    

            textBox1.Font = new Font(textBox1.Font, FontStyle.Regular); ;
           
            this.textBox1.Text ="TO :   " + this.txt_ClientNameMail.Text;        



            int intPrintAreaHeight;
            int intPrintAreaWidth;
            int marginLeft;
            int marginTop;

            e.Graphics.DrawImage(this.pictureBox12.Image, 5, 5, this.pictureBox12.Size.Width, this.pictureBox12.Size.Height);
            e.Graphics.DrawImage(this.pictureBox11.Image, 135, 85, this.pictureBox11.Size.Width, this.pictureBox11.Size.Height);
            textBox1.Text = "";
            intPrintAreaHeight = printDocument1.DefaultPageSettings.PaperSize.Height - printDocument1.DefaultPageSettings.Margins.Top - printDocument1.DefaultPageSettings.Margins.Bottom;
            intPrintAreaWidth = printDocument1.DefaultPageSettings.PaperSize.Width - printDocument1.DefaultPageSettings.Margins.Left - printDocument1.DefaultPageSettings.Margins.Right;
            printDocument1.DefaultPageSettings.Margins.Bottom = 0; // 0,5 inches
            printDocument1.DefaultPageSettings.Margins.Top = 0; // 0,5 inches
            printDocument1.DefaultPageSettings.Margins.Left = 0; // 0,5 inches
            printDocument1.DefaultPageSettings.Margins.Right = 0; // 0,5 inches


            marginLeft = printDocument1.DefaultPageSettings.Margins.Left; // X coordinate
            marginTop = printDocument1.DefaultPageSettings.Margins.Top; // Y coordinate

                int intTemp = intPrintAreaHeight;
                intPrintAreaHeight = intPrintAreaWidth;
                intPrintAreaWidth = intTemp;
          

            int intLineCount = (int)(intPrintAreaHeight / font2.Height);

            // Initialize the rectangle structure that defines the printing area.

            RectangleF rectPrintingArea = new RectangleF(marginLeft, marginTop, intPrintAreaWidth, intPrintAreaHeight);


            StringFormat sfmt = new StringFormat(StringFormatFlags.LineLimit);

            int intLinesFilled;
            int intCharsFitted;

            e.Graphics.MeasureString(textBox1.Text.Substring(intCurrentChar), font2, new SizeF(intPrintAreaWidth, intPrintAreaHeight), sfmt, out intCharsFitted, out intLinesFilled);

            // Print the text to the page.

            e.Graphics.DrawString(textBox1.Text.Substring(intCurrentChar), font2, Brushes.Black, rectPrintingArea, sfmt);

        
            intCurrentChar += intCharsFitted;


            if (intCurrentChar < (textBox1.Text.Length - 1))
            {
                e.HasMorePages = true;
            }
            else
            {
                e.HasMorePages = false;
                
                intCurrentChar = 0;
            }
        }


        private void button1_Click(object sender, EventArgs e)
        {
            PrintPreviewDialog printPreviewDialog1 = new PrintPreviewDialog();


            try
            {
                printDocument1.DefaultPageSettings.Landscape = true;
                printDocument1.DefaultPageSettings.PaperSize = new System.Drawing.Printing.PaperSize("No.10envelope", 104, 241);

                printPreviewDialog1.Document = printDocument1;
                printPreviewDialog1.ShowDialog();

            }
            catch
            {

                MessageBox.Show("An error occurred while trying to load the " +
                    "document for Print Preview. Make sure you currently have " +
                    "access to a printer. A printer must be connected and " +
                    "accessible for Print Preview to work.", this.Text,
                    MessageBoxButtons.OK, MessageBoxIcon.Error);

            }
        }

PM MAIL   Вверх
shark1
Дата 28.9.2008, 11:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Как то криво все получается.Текст появляется после второго нажатия на кнопку,и почему то в левом верхнем углу.Как мне его сдвинуть на центр конверта.Спасибо.

Добавлено через 4 минуты и 38 секунд
Как сдвинуть разобрался надо через:
printDocument1.DefaultPageSettings.Margins.Bottom = 0; 
            printDocument1.DefaultPageSettings.Margins.Top = 50; // 0,5 inches
            printDocument1.DefaultPageSettings.Margins.Left = 50; // 0,5 inches
            printDocument1.DefaultPageSettings.Margins.Right = 0; 
а вот почему отображается только по второму нажатию,в чем ошибка.Спасибо.
PM MAIL   Вверх
shark1
Дата 28.9.2008, 13:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Vopros snimaetsa.Vsem spasibo.
PM MAIL   Вверх
shark1
Дата 29.9.2008, 01:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



HELP ME PLEASE.
Весь код неработает,попробовал распичатать,а оно мало того что паспечатало не вдоль а поперёк конверта,так еще и мелко мелко в самом верху.Короче неработает нечего.Помогите где я ошибаюсь.Зарание спасибо.
PM MAIL   Вверх
shark1
Дата 29.9.2008, 18:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Ну все сдаюсь прошу помощи.Непонимаю в printpreview показывает вроде нормальный размер,а когда выдаю на печать то принтер вообще пичатает в другой стороне от конверта.Плизззззззззззззз помогите с этим делом ,очень надо ,а я застрял :( :(:(
Зарание спасибо.
PM MAIL   Вверх
shark1
Дата 30.9.2008, 07:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Ну где же помощь.Плизззззззззззззз :(
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

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


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

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




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


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

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