- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
请考虑以下示例图像:
所有对象(矩形、形状、文本等)都写入 BufferedImage
中。我的问题是,在我在它们上面写了一个 Graphics.drawline(..) 后,如何撤消、重置或清除我创建的线条。即使我重新执行图形的初始化,我绘制的线仍然存在。
我仍然可以捕获线条的坐标。如果它是一个普通的背景,我可以用相同的背景重新绘制它。但是,在这种情况下,这是行不通的。
最佳答案
无法撤消您使用 Graphics 所做的事情。但您还可以采取其他措施来恢复图像。
在执行任何您可能想要撤消的操作之前,请保留图像的副本。并在需要时重新绘制。
在执行任何您可能想要撤消的操作之前,保留图像区域的剪辑图像。并在需要时重新绘制该区域。
保留这些有限尺寸图像的堆栈将是按系列撤消的好主意。不要让堆栈大小太大,因为它会消耗你的堆内存
关于java - 如何在 Java 中重置、清除或撤消 DrawLine,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31103607/
在我的应用程序中,我需要绘制一个方程。绘制的方程将由许多小的直线组成。当我在 for 中使用 DrawLine 方法绘制它时,我获得了比使用 DrawLines 方法时更高的质量。 Graphics
我在 C++ 中使用 GDI+ 绘制图表控件。我想知道上述两个函数之间是否存在性能差异。我不懒惰为写代码DrawLines() 但正是这样做使我的代码变得复杂。所以我权衡是否以降低可读性和潜在增加错误
我有一个绘画程序,并且我已经完成了所有按钮和 slider ,但是我在实际绘画本身方面遇到了问题。当我将光标拖过屏幕而不是一条不间断的线时,我几乎得到了一条我不想要的虚线。以下是 JPanel 和 B
一般来说,对 Swing 和制作 GUI 有点陌生,我一直在使用 DrawLine 方法来创建“地板”,并且它一直在为 PaintComponent 类中的坐标变量本地工作,但是我想更改使用 acti
所以我将这个类放在一个 JPanel 实现类中。 private static class Line extends JComponent { private static final
我需要有关此代码的帮助。我的 g.drawLine(0,0,300,300) 不起作用。一直工作到周一,不知道出了什么问题。我使用 g.drawLine(0,0,300,300) 来在使用plota_
我正在创建一个随机绘制小行星的游戏(使小行星呈现锯齿状外观)。经过研究,我只发现你可以填充原始形状。有谁知道我可以用来填充这些形状的方法? package view.game_object; impo
我被 canvas.drawLines() 卡住了。 我的应用程序显示轨道 om map View ,但生成的线条很糟糕。有没有人看到这样的行为?即,线的宽度不同,甚至不是“正方形”,而是菱形,有时甚
我想知道,通常情况下,你们如何为从 Paint.drawLine 绘制的线投下阴影?据我所知,Paint.setShadowLayer 仅对 Paint.drawText 有影响,但对 Paint.d
开始在 Delphi 中使用 GDI+。需要画几条平滑的直线。例如试图在表格上画对角线(从左上角到右下角)但什么也没有出现。该代码有什么问题(Delphi XE3、Windows 10 x64)? u
我试图使用 alpha channel 通过 CustomPaint 对线条颜色应用透明度的Canvas.drawLine() . 问题 但是,alpha channel 上的颜色调整对结果没有影响,
这是我到目前为止的代码,其中包含一些打印行,只是为了确保它实际上进入了该方法。由于某种原因, Canvas 上没有绘制任何内容,我有一个与此类似的程序,就绘图而言,它工作得很好。这个有什么问题吗? i
我有一段代码需要绘制数千条线(6000 到 50000 之间)。 我随后修复了一个不相关的错误,暴露了一些有趣的东西;也就是说,当这些线条很长(比如 30k 像素)时,drawLine 函数会占用我的
我正在使用 C#.NET 3.5 在 Windows CE 中绘制一条指向 Graphics 对象的线。 我使用的代码如下所示: e.Graphics.DrawLine(new Pen(Color.F
我已经尝试了很多方法,但我的代码仍然拒绝在 Canvas 上简单地画一条线。我注释掉的每一次尝试要么使程序崩溃,要么不显示该行。我真的很难理解如何做到这一点,我不断收到关于使用线程或 onDraw 或
我正在用安卓开发游戏。我是初学者,所以我对android了解不多。我遇到了与 Canvas 相关的问题。我正在尝试设计包含圆网格(5 * 6)的板。 我想在它们之间显示线条,使它们看起来像盒子。为此,
问题:除了在输入点上画圆之外,还有什么更好的方法来实现在屏幕上画线的功能? 详细信息:我正在尝试编写一个基本上会画一条线的函数。但是该线不会是普通的彩色线。这条线会让用户通过那条线将一个图像的像素复制
import java.awt.event.*; import java.awt.*; import javax.swing.*; public class Line{ public static
我知道这很简单,但我不明白为什么单击按钮后 Form1 上没有绘制任何内容: namespace GeometryTest { public partial class Form1 : For
给定以下代码: import javax.swing.*; import java.awt.*; public class NewClass extends JPanel { public v
我是一名优秀的程序员,十分优秀!