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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Graphics save image format, Save graphic 
V
    Опции темы
Nestap
Дата 20.2.2009, 10:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



привет,
рибята бот такая проблема:

создаю график но как сохранить его?

  
Код

Graphics gr=this.pictureBox1.CreateGraphics();
   gr.DrawLine(marg, 640 / 3, 0, 640 / 3, 480);//марг пен(колор)


как сохранять все ето? в формате бмп,жпг...


--------------------
<?    echo "Nestap";?>
PM WWW ICQ Skype Jabber   Вверх
amarenkov
Дата 20.2.2009, 12:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Используй this.pictureBox1.Image.Save.
PM MAIL ICQ   Вверх
diadiavova
Дата 20.2.2009, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

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



Если выполнять прорисовку в самом пикчербоксе, то сохранение изображения ничего не даст(его вообще там может и не быть).
Сначала надо для бокса создать изображение.
Код

Bitmap bm = new Bitmap(picturebox1.Width, picturebox1.Height);
picturebox1.Image = bm;


Объект Graphics создать для изображения(а не бокса)
Код

Graphics g = Graphics.FromImage(picturebox1.Image);
//здесь код прорисовки


А после этого уже можно делать, как написал amarenkov. 


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
Nestap
Дата 20.2.2009, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



diadiavova, 

зделал как  вот так:

      
Код

      Bitmap bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);
            pictureBox1.Image = bmp;
            Graphics gr = Graphics.FromImage(pictureBox1.Image);
            gr.DrawRectangle(marg, 0, 0, 640, 480);

           SaveFileDialog dialog = new SaveFileDialog();
            dialog.Filter= ".jpg | *.jpg"; 
           
            if (dialog.ShowDialog() == DialogResult.OK)
            {
                pictureBox1.Image.Save(dialog.FileName, ImageFormat.Jpeg);
            }
        


всео идёт но опен филе .жпг там вапше другие цвета: background=black, a pen ramke blue koda ia postavil (belii fon i krasnii tvet ramki);

??:(
--------------------
<?    echo "Nestap";?>
PM WWW ICQ Skype Jabber   Вверх
diadiavova
Дата 20.2.2009, 17:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

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



Фон  надо залить сначала(по-моему у грэфикс это делается при помощи метода Clear), что до цвета рамки, то я тут не увидел где ты цвет задаёшь, так что ничего не могу сказать.

ЗЫ
На каком языке ты написал конец сообщения? smile 



--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
Nestap
Дата 20.2.2009, 17:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



diadiavova, 

спосибо,

проблема било в том што я поставил обиект графикс и бмп глобал,
а типери кажетса фсео нормалино, поставил в функти. 
--------------------
<?    echo "Nestap";?>
PM WWW ICQ Skype Jabber   Вверх
Nestap
Дата 20.2.2009, 18:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



diadiavova, 

опять штота не то!

Код

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Graphics
{
    public partial class frmLab1 : Form
    {
           
        public frmLab1()
        {
            InitializeComponent();
          
        }

        private void frmLab1_Load(object sender, EventArgs e)
        {

        }

        private void toolStripButton1_Click(object sender, EventArgs e)
        {       
           Bitmap bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);
            pictureBox1.Image = bmp;
             System.Drawing.Graphics gr = System.Drawing.Graphics.FromImage(pictureBox1.Image);//colori pen si brush 
            Pen chenar = new Pen(Color.Black, 3);
            Pen contur = new Pen(Color.Red, 2);
            SolidBrush fon_ob = new SolidBrush(Color.LightBlue);
            Pen contur2 = new Pen(Color.SkyBlue, 2);
           // end
            //start chenar
            gr.DrawRectangle(chenar, 0, 1, 640, 480);
            gr.DrawLine(chenar, 640 / 3, 0, 640 / 3, 480);
            gr.DrawLine(chenar, 640 / 3 * 2, 0, 640 / 3 * 2, 480);
            gr.DrawLine(chenar, 0, 480 / 3 * 2, 640, 480 / 3 * 2);
            gr.DrawLine(chenar, 0, 480 / 3, 640, 480 / 3);
            //end chenar start graphics object
            //1
            Draw3D_nestap dd = new Draw3D_nestap(gr);
            dd.Draw3D_paralelipiped_dreapta(fon_ob,contur2, 35 , 50,100,75);
        }

        private void toolStripButton4_Click(object sender, EventArgs e)
        {
            Close();
        }

        private void toolStripButton2_Click(object sender, EventArgs e)
        {
            SaveFileDialog sv = new SaveFileDialog();
            sv.FileName = "Graphics lab_1";
            sv.Filter = "JPG files (*.jpg)|*.jpg|All files (*.*)|*.*";
            if (sv.ShowDialog() == DialogResult.OK)
                pictureBox1.Image.Save(sv.FileName, System.Drawing.Imaging.ImageFormat.Jpeg);

        }

        private void toolStripButton3_Click(object sender, EventArgs e)
        {
            OpenFileDialog op = new OpenFileDialog();
            op.Filter = "JPG files (*.jpg)|*.jpg|All files (*.*)|*.*";
            if (op.ShowDialog() == DialogResult.OK)
                pictureBox1.Load(op.FileName);
        }
    }
}



вот што на саве()...

http://pic.ipicture.ru/uploads/090220/WWfg1vx3SD.jpg

а должен :

http://pic.ipicture.ru/uploads/090220/22ZsFAB1kh.jpg
--------------------
<?    echo "Nestap";?>
PM WWW ICQ Skype Jabber   Вверх
diadiavova
Дата 20.2.2009, 19:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

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



Код

        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            Bitmap bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);
            pictureBox1.Image = bmp;
            System.Drawing.Graphics gr = System.Drawing.Graphics.FromImage(pictureBox1.Image);//colori pen si brush 
            Pen chenar = new Pen(Color.Black, 3);
            Pen contur = new Pen(Color.Red, 2);
            SolidBrush fon_ob = new SolidBrush(Color.LightBlue);
            Pen contur2 = new Pen(Color.SkyBlue, 2);
            // end
            //start chenar
            gr.Clear(Color.White);
            gr.DrawRectangle(chenar, 0, 1, 640, 480);
            gr.DrawLine(chenar, 640 / 3, 0, 640 / 3, 480);
            gr.DrawLine(chenar, 640 / 3 * 2, 0, 640 / 3 * 2, 480);
            gr.DrawLine(chenar, 0, 480 / 3 * 2, 640, 480 / 3 * 2);
            gr.DrawLine(chenar, 0, 480 / 3, 640, 480 / 3);
            //end chenar start graphics object
            //1
            Draw3D_nestap dd = new Draw3D_nestap(gr);
            dd.Draw3D_paralelipiped_dreapta(fon_ob, contur2, 35, 50, 100, 75);
        }



Добавлено через 14 минут и 44 секунды
Обрати внимание на 12 строку

Это сообщение отредактировал(а) diadiavova - 20.2.2009, 19:27


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
Nestap
Дата 22.2.2009, 11:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



болишое спосибо!
--------------------
<?    echo "Nestap";?>
PM WWW ICQ Skype Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

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


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

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


 




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


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

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