gpt4 book ai didi

c# 如何正确渲染图像?

转载 作者:太空宇宙 更新时间:2023-11-03 16:27:00 24 4
gpt4 key购买 nike

背景

我正在编写一个应用程序,它在按 ctrl+cprint screen 时复制剪贴板的对象,这样您不仅可以拥有当前内容,还可以拥有“旧内容” "字符串图像文件等

更多背景

我的应用有3 个列表框1 个picBox。 PicBox 是一个预览窗口。如果用户双击图像(将其粘贴到剪贴板),他将获得预览(以便他可以确保它是正确的)。 p>

我想改进什么

我测试了预览并在 picBox 的边缘遇到了一些瑕疵:

Artifacts

第一行:原始图像(以下称为图像 1/2/3)。

第二行:我点击图片的顺序。第二列和第三列中有一些工件。

第三行:如果我点击图片 1,然后点击图片 3,我会得到您可以在第 3 行看到的图片列 2row3 col3 显示相同的图像,但突出显示了伪影。

伪影似乎是第一张图片遗留下来的,因为它们与第一张图片的“红线”位于同一位置

我使用的方法是:

        Graphics grx = Graphics.FromImage(pictureBox1.Image);
grx.DrawImage(clipboardListImage[listBoxImg.SelectedIndex], new Rectangle (new Point(0,0), pictureBox1.Size));
pictureBox1.Refresh();

最佳答案

好的,我想我找到了解决方案。如果我错了请纠正我。

我正在使用 imageAttributes 并将 wrapmode 设置为 TileFlipXY。

        ImageAttributes imgattr = new ImageAttributes();
imgattr.SetWrapMode(System.Drawing.Drawing2D.WrapMode.TileFlipXY);

并在绘图函数中使用它。

grx.DrawImage(clipboardListImage[listBoxImg.SelectedIndex], new Rectangle(new Point(0, 0), pictureBox1.Size),0,0,
clipboardListImage[listBoxImg.SelectedIndex].Width, clipboardListImage[listBoxImg.SelectedIndex].Height,
GraphicsUnit.Pixel, imgattr);

不是很方便,但它似乎可以工作;)

关于c# 如何正确渲染图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12249452/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com