我目前的任务是制作一个程序,在两张图片之间画线。在未来,该线路将被旋转,但仍然连接为一条线。目前,试图使两张图片之间的线路连接第一。目前使用2个面板作为图片和大图片框设置为透明覆盖两个面板作为画布绘制线条,但在进行测试运行时,表单是空白的,就像在图片中一样。我的问题是。
我不知道搜索错误的关键字。我试过使用picturebox & panels,但是结果是一样的。
以2个面板作为图片框的表单

覆盖面板的大图片框

空白误差结果

编辑。试着将1张大图片盒分割成2张图片。它适用于线条绘制,但下面按钮的空白错误已返回。

发布于 2019-12-18 08:07:52
在主代码中,将图像加载到内存中。如果需要,此方法可以通过将文件加载到内存流中以避免文件被锁定。
Image image1 = Image.FromFile(@"C:/Users/RPC1940/Pictures/500px.jpg");
Image image2 = Image.FromFile(@"C:/Users/RPC1940/Pictures/500px2.jpg");然后,在picturebox top事件上,将图像绘制到主画布上,并在顶部绘制您的线条。这没有考虑到伸展等,但应该给你一个开始。
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
int halfWidth = pictureBox1.Width / 2;
e.Graphics.DrawImage(image1, new Rectangle(0, 0, halfWidth, pictureBox1.Height));
e.Graphics.DrawImage(image2, new Rectangle(halfWidth + 1, 0, halfWidth, pictureBox1.Height));
e.Graphics.DrawLine(Pens.Black, 140, 140, 300, 300);
}https://stackoverflow.com/questions/59387216
复制相似问题