2012-11-21 84 views
1

我是编程语言的开始人,所以我想从Visual Studio(Visual Basic语言)这样简单的东西开始。目前试图找出为什么使用这种代码,通过代码插入到我的表单中的图像更大,然后实际上它们应该是...Visual Basic和图形大小

我的第一个项目是创建可以通过Photoshop皮肤化的模拟时钟,但是这个图像大小的东西让我疯狂。

这将是非常好的,如果有人可以解释我为什么会这样......

代码,并导致如下:

Public Class Form1 

'25x25 white rectangle image 
Dim rec As Image = Image.FromFile("c:\img\rectangle.png") 

Private Sub pic_Paint(sender As Object, e As PaintEventArgs) Handles pic.Paint 
    'Declaring graphics 
    Dim g As Graphics = e.Graphics 
    'Drawing image into PictureBox called pic 
    g.DrawImage(rec, 200, 200) 
End Sub 
End Class 

Outcome

谢谢!

+0

你确定你正在加载的矩形只有25x25像素? – StingyJack

+0

是的,双重检查它,也是picturebox的背景是正确的大小。但是,当运行代码放入白色方块的项目时,它会将方块大小调整为较大。如果我把两个图像像一个图画框放在其他所有东西上都很好,但那不是我所需要的。 – enflam3

回答

1

您可能没有在96dpi运行(您的标题栏看起来有点大)或者您使用的25x25图像有一个DPI元数据字段,告诉GDI(Windows中的图形系统)用它来绘制缩放尺寸。

我建议使用Bitmap类的SetResolution方法或摆弄DrawImage重载。

0

原来,这是我的图形编辑器相关的问题。 使用ms paint创建25x25正方形显示它在运行程序时正确显示。 谢谢!