问题标签 [paint]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
471 浏览

.net - Antialiased SmoothingMode 扭曲虚线笔

为什么打开抗锯齿会干扰我的虚线笔?

替代文字
(来源:googlepages.com

0 投票
1 回答
616 浏览

windows - 如何为子控件绘制透明区域?

我有一个 CTabCtrl 子类,我正在尝试覆盖 WM_PAINT 来执行自定义绘图。唯一的问题是,当我更改选定的选项卡时,我会在对话框中留下伪影,在新代码绘制在顶部之前,旧的绘制代码还没有被擦除。(标准选项卡控件使选定选项卡显示比未选定选项卡大 2 个像素,因此当您从选定选项更改为非选定选项时,您会留下以前的绘画工件)。

“重新粉刷”这个区域的最佳方法是什么?我尝试将父控件的 DC 和 BitBlt'ing 放到子 DC 上,但这不起作用,因为父 DC 已经包含此控件的图像。

0 投票
2 回答
2358 浏览

java - Java 1.6 中的 Java Swing App 中的绘画问题

我正在开发一个 Swing 应用程序(目前在 Java 1.6 update 11 上运行),它有一些间歇性的油漆刷新问题(例如,有工件等)。这只会发生在我们应用程序的某些用户身上,而不会发生在其他用户身上。

在做了一些研究之后,我发现将属性设置sun.java2d.d3dfalse可能会有所帮助,事实上,它对我们的一位用户有所帮助。

现在其他一些用户正在抱怨这个问题,我正在考虑将属性设置false为所有用户。

我的基本问题如下:

这究竟是什么原因?是显卡吗?是司机吗?它是来自 Sun 的错误吗?(如http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6635462)这三者的结合?

换句话说,最好简单地关闭这个属性,还是它只影响某些显卡,更新到最新的驱动程序可以修复?

0 投票
1 回答
547 浏览

.net - 在 Windows.Forms 中绘制图像的最快方法是什么?

过去我曾使用多种技术在 Windows.Forms 中绘制图像,现在我正在重新审视一些处理为我们的产品呈现皮肤图像的核心库。我特别感兴趣的是多次渲染相同的图像(平铺)以表示背景控件的字段。假设图像的大小正好合适(不需要缩放)并且只包含要平铺的部分,那么将该图像绘制到屏幕上的最快方法是什么?

我使用的优化之一是将图像转换为 PixelFormat.Format32bpp P Argb,它会预先计算一些 alpha 通道。

DrawImage 和 DrawImageUnscaled 之间有性能差异吗?

寻找真实世界的经验,而不是记录在案的期望。

更新:在挖掘框架类之后,我看到 Control 类使用 TextureBrush 使用要平铺的图像。这看起来很有希望。

0 投票
3 回答
969 浏览

java - 如何在java中拆分paint swing方法?

我正在用java开发一个相当大的医院模拟游戏。现在,我的止痛方法开始看起来有点大,我需要一种方法将它分成不同的部分……我有一个想法,但我不确定这是否是最好的方法。首先是画草,然后是医院大楼,然后是任何建筑物,然后是人,然后是任何建筑物在建造时的预览。草和医院大楼不会改变,所以我只需要画一次。建筑物本身不会经常变化,只有在建造新建筑物时才会发生变化。

我在想,使用布尔值来确定哪些部分需要重新绘制?理想,我希望能够拆分paint方法,然后在需要时调用每个方法,但我不确定如何在物理上拆分它。

我对Java还是很陌生,并且在旅途中学习。

提前致谢。

相对

0 投票
1 回答
1530 浏览

java - Java中的自由绘图画布(带有形状)

我正在开发一个允许用户创建设计图的 GMF (RCP/EMF/GEF) 应用程序。作为该应用程序的一部分,我们必须允许用户创建自己的自定义形状以添加到图表中。我们正在考虑使用 SVG 作为形状的存储格式。

我正在寻找一个创建此类画布并允许我们将图像导出为 SVG 文件的 Java 库。它还应该能够导入 SVG 文件并允许操作。即使是 Eclipse 插件也可以,因为我猜我们应该能够在 RCP 应用程序中制作 Eclipse 插件,只要该插件是开源的。

我们将在应用程序中使用 Batik 进行 SVG 工作。许可说明:我们不想让我们的应用程序开源,因此具有 LGPL 等需要衍生作品开源的许可证的库对我们不起作用。

0 投票
1 回答
1226 浏览

java - 如何在移动精灵时重新绘制小程序?

我有一个小的 Java 小程序,在其中创建 2 个线程,一个线程重绘,另一个将图像从一个点移动到用户单击的位置。问题是,当我调用 move 函数时,它会循环直到图像是用户单击的位置,但是即使执行移动的线程和执行绘画的线程是分开的,在我跳出循环之前它也不会重新绘制。

关键点的缩短版:

  • 我的程序是一个使用paint() 方法的小程序

  • 我有 2 个线程,一个移动图像,另一个绘制该图像

  • 当我移动图像时,它处于一个while循环中

  • 绘画线程仍在调用 repaint() 但就调用而言,它永远不会重新绘制

感谢您的时间。

0 投票
2 回答
606 浏览

.net - 有人知道.net 的简单绘画/注释控制吗?

我想要一个简单的可重用控件,我可以在表单中使用它来查看和注释图像。

示例用法:

  • 我加载图像,或从剪贴板粘贴到控件。
  • 注释图像,例如在特征周围绘制红色环。
  • 也许添加一些文字。
  • 以选定的格式保存图像或复制到剪贴板(即我们可以压缩)。
0 投票
2 回答
3420 浏览

wpf - 类似于 Paint 的 WPF 应用程序的 MVVM 模式?

我目前正处于我的一个项目的规划阶段。

我考虑过在我的应用程序中使用 MVVM 模式来实现可测试性、可维护性等。我才刚刚开始了解 MVVM,但是在我计划的应用程序的上下文中我无法弄清楚一件事。

我的应用程序旨在通过让运动教练直观地捕捉练习来帮助他们制定锻炼计划。这是一种供运动教练使用的涂料。

我已经考虑过如何为我的应用程序(例如:Ball、Player 等)实现不同的 PaintObject(这就是我所说的),并发现最方便的方法是编写一个具有多个 DependencyProperties 的类和然后为此类提供 XAML-ControlTemplate。

现在,当我考虑构建应用程序的绘制屏幕时,我想我会使用 PaintView.xaml 之类的东西和 PaintViewModel.cs。现在的问题是 PaintViewModel 是如何存储 PaintObjects 的?PaintObjects到底是什么?它们是 ViewModel 本身吗?他们是模特吗?他们是观点吗?

这就是我完全陷入深思熟虑的部分,并希望从更有经验的 MVVM 用户那里获得一些建议。提前致谢!

最好的问候,克里斯楚

0 投票
3 回答
8104 浏览

java - 如何让 Jpanel 扩展到 JFrame 的大小?

以下代码来自 Michale Kolling 和 David J Barnes 的书籍对象 First With Java,以下是书中的练习(前 5.49)。前是:改进您的 drawFrame 方法以自动适应当前画布的大小。为此,您需要了解如何使用 Dimension 类的 objectof。

在下面的BallDemo类中有一个叫做drameFrame的方法。创建该方法的目的是在窗口内绘制一个20像素的Rectangle,并在frame的大小发生变化时重新绘制矩形

为了获得帧大小,我在 Canvas 类中包含了一个方法 getFrameSize ,如下所示

由于执行程序是必要的,因此我也包括第三类

有了解决方案,我提出了练习我面临两个问题

1 在使用鼠标更改框架的大小并执行 drawFrame 方法后,按预期绘制了一个矩形但是在执行 drawFrame 方法后框架扩展了一点,超过了使用鼠标更改的大小。这是因为我想通过 frame.size() 获得的宽度和高度甚至包括边框大小。因此,当执行 myCanvas.setSize(width, height) 时,myCanvas 扩展为包含边框大小的框架大小。如何阻止 myCanvas 扩展超出框架的边界

2 myCanvas 扩展部分的背景颜色是黑色的,怎么可能变成白色?