webForumDet fria alternativet

spara till grafikformat.

Java

4 svar · 493 visningar · startad av ps

Medlem sedan juni 2000841 inlägg
Frågan#1

Är det möjligt att plocka innehållet i en JFrame, JPanel eller liknande och spara det i något grafikformat tex .gif eller .jpg?

------------------
ps » Email » URL

Medlem sedan juni 2000841 inlägg
#2

Har skrivit ihop detta.. borde väl funka?

Ska sova nu.. testa imorron :)

<font size="1" face="Verdana, Arial, Helvetica, sans-serif">Kod:<font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#666600">
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.FileOutputStream;
import java.awt.Container;
import com.sun.image.codec.jpeg.*;

public class WriteJPEG
{
private String mFilename;

public WriteJPEG(String pFilename)
{
	mFilename = pFilename;
}

public void encode(Container cont)
{
	try
	{
		BufferedImage bi = (BufferedImage)cont.createImage(cont.getWidth(), cont.getHeight());

		FileOutputStream out = new FileOutputStream(mFilename);
		JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
		encoder.encode(bi);
	}
	catch(Exception e)
	{
		System.out.println(e.getMessage());
	}
}

public static void main(String\[\] args)
{
	new WriteJPEG("test.jpg");
}

}

------------------
ps » Email » URL

Medlem sedan juni 2000841 inlägg
#3

Det vill inte fungera. Det skapas en bild när jag använder metoden encode, men den är bara grå... storleken blir rätt, men inget innehåll kommer med.

Nån som vet vad som kan vara fel?

------------------
ps » Email » URL

Medlem sedan sep. 2001961 inlägg
#4

Som jag ser det så skapas en tom bild som har samma storlek som den yta som man vill rita. Jag misstänker att man på något sätt måste komma åt paint-metoden för det man vill dumpa. Det är i alla fall så man gör det i MFC.

Skärmen är ju bara en buffert så rimligtvis borde det gå att styra om paint/repaint-metoden till en annan buffert.

/Lime

------------------
Praeterea conseo microsoftenem esse delendam.
- modernt latinskt ordspråk

Medlem sedan juni 2000841 inlägg
#5

Blir nog så att kravspecen kan ändras lite så jag kan köra på ver J2SE 1.4.0 istället. Den har ju kommit i skarp nu. Verkar finnas en hel nytt trevligt.

------------------
ps » Email » URL

259 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)