Witam wszystkich, chciałem zrobić prostą aplikacje która rysuje prostokąt na pliku graficznym. Niestety napotkałem spory problem. Plik z grafiką ma rozszerzenie PNG, wszystko jest w porządku jeśli plik graficzny jest dużej rozdzielczości np. 640x480 wówczas obiekt jest rysowany lecz jeśli załaduje plik o niższej rozdzielczości np. 300x300 to program się „wysypuje” (w linii g = Graphics.FromImage(pictureBox1.Image);). Nie wiem co zrobić aby wszystko było w porządku. Poniżej prezentuje ten króciutki skrypt:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Drawing.Drawing2D;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
private Graphics g;
private Pen p;
public Form1()
{
InitializeComponent();
}
private void pictureBox1_Click(object sender, EventArgs e)
{
p = new Pen(Color.Orange, 3);
Image obraz = Image.FromFile("101_1.png");
pictureBox1.Image = obraz;
g = Graphics.FromImage(pictureBox1.Image);
g.DrawRectangle(p, 10, 20, 30, 40);
}
}
}