From 977f3d889d5830768e4bc415bbe847609765f8c2 Mon Sep 17 00:00:00 2001 From: hneemann Date: Wed, 17 May 2017 22:10:16 +0200 Subject: [PATCH] better quality of animated gifs --- src/main/dig/74xx/trafic.dig | 28 +++++++++---------- .../neemann/digital/draw/gif/GifExporter.java | 14 +++++++--- 2 files changed, 24 insertions(+), 18 deletions(-) diff --git a/src/main/dig/74xx/trafic.dig b/src/main/dig/74xx/trafic.dig index 636de8409..810f662f7 100644 --- a/src/main/dig/74xx/trafic.dig +++ b/src/main/dig/74xx/trafic.dig @@ -81,7 +81,7 @@ - + @@ -89,7 +89,7 @@ - + @@ -102,7 +102,7 @@ - + @@ -130,7 +130,7 @@ - + @@ -141,7 +141,7 @@ - + @@ -158,7 +158,7 @@ - + @@ -193,8 +193,12 @@ - - + + + + + + @@ -261,12 +265,8 @@ - - - - - - + + \ No newline at end of file diff --git a/src/main/java/de/neemann/digital/draw/gif/GifExporter.java b/src/main/java/de/neemann/digital/draw/gif/GifExporter.java index 57ada5ade..40d30e828 100644 --- a/src/main/java/de/neemann/digital/draw/gif/GifExporter.java +++ b/src/main/java/de/neemann/digital/draw/gif/GifExporter.java @@ -12,6 +12,7 @@ import de.neemann.digital.draw.graphics.linemerger.GraphicSkipLines; import javax.imageio.stream.FileImageOutputStream; import javax.imageio.stream.ImageOutputStream; +import java.awt.*; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; @@ -69,14 +70,19 @@ public class GifExporter { private BufferedImage createBufferedImage() throws IOException { - GraphicsImage gr = GraphicsImage.create(null, minMax.getMin(), minMax.getMax(), "gif", 2); + GraphicsImage gri = GraphicsImage.create(null, minMax.getMin(), minMax.getMax(), "gif", 1); + BufferedImage bi = gri.getBufferedImage(); + Graphics gr = bi.getGraphics(); + gr.setColor(Color.WHITE); + gr.fillRect(0, 0, bi.getWidth(), bi.getHeight()); + GraphicLineCollector glc = new GraphicLineCollector(); circuit.drawTo(glc); - glc.drawTo(gr); + glc.drawTo(gri); - circuit.drawTo(new GraphicSkipLines(gr)); + circuit.drawTo(new GraphicSkipLines(gri)); - return gr.getBufferedImage(); + return gri.getBufferedImage(); } }