【问题标题】:Copy, paste, move and delete image on another image in C#.NET or C# WPF在 C#.NET 或 C# WPF 中复制、粘贴、移动和删除另一个图像上的图像
【发布时间】:2019-11-10 22:53:41
【问题描述】:

在 C#.NET 或 WPF C# 中,我想复制图像(例如 image2)并粘贴到已经存在的图像(例如 image1)上,然后能够将 image1 上的 image2 移动到 image1 中的任何其他位置,并且还可以可以删除image2。

【问题讨论】:

  • 没有 Martheen。我是基于 C# 图像的编程的新手,没有找到合适的代码来完成并理解移动或删除复制到另一个图像的图像的过程。虽然,复制是可能的,但仅此而已。
  • 您可以结合设置 PictureBox.Image=image1 和 Paint 事件 e.Graphics.DrawImage(image2, x, y)。通过 pbox.Invalidate 更改 x & y 和触发 Paint。通过要复制的链接或 pbox.DrawToBitmap 完成导出。
  • 除非您使用图层,否则您实际上无法从另一个图像中“移动”和“删除”图像。所以你真正想要的只是保留原来的image1,当你需要“移动”时,只需将image2重新复制到不同的位置,当你需要“删除”时,只需重新使用你保留的原始图像.
  • 谢谢你,TaW;我会试试你的建议。 Martheen,如果只需要添加和删除一张图像,您的逻辑就很好。如果我想添加超过 1 个(例如 n 个图像),然后选择一个特定图像以删除该图像或将特定图像移动到新位置怎么办?以及如何进行分层;这似乎是个好建议。

标签: c#


【解决方案1】:

我可以通过将 lambda 表达式(可能我们不需要 lambda 表达式,但我稍后会测试相同)与拖放事件相结合来解决我的目标。多亏了 Google、Youtube 视频和 Martheen 发人深省的贡献,我上面提出的所有要求都已实现。在正常的拖放事件处理之后,用于鼠标按下和鼠标移动的 Lambda 表达式。在 lambda 表达式中创建的虚拟图片框,来自 picturebox2 或要移动的前景图像。因此,可以创建多张同一张图片(picturebox2)的图片,每张图片都可以轻松移动,并且可以在不影响背景图片(或picturebox1)的情况下删除每张图片。

【讨论】:

    猜你喜欢
    • 2012-03-25
    • 1970-01-01
    • 1970-01-01
    • 2012-03-23
    • 2020-01-16
    • 2018-02-01
    • 1970-01-01
    • 2013-11-02
    • 1970-01-01
    相关资源
    最近更新 更多