Hi iam new to C# and have loaded the image in the picture box using menustrip and have displayed some text using picturebox_Paint and label. now i tried to save the image (with image and text) using save event from the menustrip. in the saved location the file shows as no preview avaliable and when i tried to open the file it shows out of memory.
can any one say where iam going worng....
my coades
private void openToolStripMenuItem_Click(object sender, EventArgs e)
        {
            string file = "";
            OpenFD.FileName = "";
            OpenFD.Title = "open image";
            OpenFD.InitialDirectory = "C";
            OpenFD.Filter = "JPEG|.jpg|Bmp|.bmp|All Files|..*";
            if (OpenFD.ShowDialog() == DialogResult.OK)
            {
                file = OpenFD.FileName;
                pictureBox1.Image = Image.FromFile(file);
                sz = pictureBox1.Size;
                a=sz.Width; b= sz.Height;
        }
private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
        {
            switch (e.Button)
        {
            case MouseButtons.Left:
        {
                rect = new Rectangle(rect.Left, rect.Top, e.X - rect.Left, e.Y - rect.Top);
                this.Invalidate();
                y = flag.e;
                Application.DoEvents();
            break;   
        }
        }
    }
private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
        {
            rect = new Rectangle(e.X, e.Y, 0, 0);
            this.Invalidate();
    }
private void pictureBox1_Paint(object sender, PaintEventArgs e)
        {
                 using (Pen pen = new Pen(Color.Red, 2))
                    e.Graphics.DrawRectangle(pen, rect);
            //e.Graphics.DrawString(label1.Text, label1.Font, new 
            // SolidBrush(label1.ForeColor), label1.Left - pictureBox1.Left, label1.Top - pictureBox1.Top);
            if (label1.TextAlign == ContentAlignment.TopLeft)
            {
                e.Graphics.DrawString(label1.Text, label1.Font, new SolidBrush(label1.ForeColor), label1.Bounds);
            }
            else if (label1.TextAlign == ContentAlignment.TopCenter)
            {
                SizeF size = e.Graphics.MeasureString(label1.Text, label1.Font);
                float left = ((float)this.Width + label1.Left) / 2 - size.Width / 2;
                RectangleF rect1 = new RectangleF(left, (float)label1.Top, size.Width, label1.Height);
                e.Graphics.DrawString(label1.Text, label1.Font, new SolidBrush(label1.ForeColor), rect1);
            }
            else
            {
                SizeF size = e.Graphics.MeasureString(label1.Text, label1.Font);
                float left = (float)label1.Width - size.Width + label1.Left;
                RectangleF rect1 = new RectangleF(left, (float)label1.Top, size.Width, label1.Height);
                e.Graphics.DrawString(label1.Text, label1.Font, new SolidBrush(label1.ForeColor), rect1);
            }
label1.Top = rect.Top; label1.Left = rect.Left; label1.Width = rect.Width; 
            label1.Height = rect.Height; 
}
private void saveToolStripMenuItem_Click(object sender, EventArgs e)
        {
            SaveFileDialog SaveFD1 = new SaveFileDialog();
            //string Sd_file = "";
            SaveFD1.FileName = "";
            SaveFD1.InitialDirectory = "C";
            SaveFD1.Title = "save file Name";
            SaveFD1.Filter= "JPG|.jpg|Bmp|.bmp";
        if (SaveFD1.ShowDialog() != DialogResult.Cancel)
        {
                System.IO.Stream filename = (System.IO.FileStream)SaveFD1.OpenFile();
                if (SaveFD1.Filter == "JPG")
                    pictureBox1.Image.Save(SaveFD1.FileName);
                //pictureBox1.Image.Save (filename, System.Drawing.Imaging.ImageFormat.Jpeg);
                else if (SaveFD1.Filter == "Bmp")
                {
                    //pictureBox1.Image.Save(filename, System.Drawing.Imaging.ImageFormat.Bmp);
                }
            filename.Close();                                   
        }
    }