Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Java export do svg, batik.jar, cmd javac - nejde kompilovat

Ahoj. Exportuji z javy do svg pres batik.jar. Jde o to ze v eclipsu to krasne beha, ale kdyz volam javac v cmd hlasi to error, nechapu proc, je nutne uvest prikaz javac v nejakem jinem tvaru? A jakem? diky

Jde o balík: batik

Error vypadá:

Slozitejsi.java:15: error: package org.apache.batik.dom does not exist
import org.apache.batik.dom.GenericDOMImplementation;
^
Slozitejsi.java:16: error: package org.apache.batik.svggen does not exist
import org.apache.batik.svggen.SVGGraphics2D;
^
Slozitejsi.java:91: error: cannot find symbol
GenericDOMImplementation.getDOMImplementation();
^
symbol: variable GenericDOMImplementation
location: class Slozitejsi
Slozitejsi.java:99: error: cannot find symbol
SVGGraphics2D svgGenerator = new SVGGraphics2D(document);
^
symbol: class SVGGraphics2D
location: class Slozitejsi
Slozitejsi.java:99: error: cannot find symbol
SVGGraphics2D svgGenerator = new SVGGraphics2D(document);
^
symbol: class SVGGraphics2D
location: class Slozitejsi
5 errors
>Exit code: 1

Zdroják:

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.geom.AffineTransform;
import java.awt.geom.Area;
import java.awt.geom.Ellipse2D;
import java.awt.geom.GeneralPath;
import java.io.FileWriter;
import java.io.Writer;

import javax.swing.JFrame;

import org.apache.batik.dom.GenericDOMImplementation;
import org.apache.batik.svggen.SVGGraphics2D;
import org.w3c.dom.DOMImplementation;
import org.w3c.dom.Document;

public class Slozitejsi extends JFrame {
	
	public void paint(Graphics g){
		paint2D((Graphics2D)g);
	}
	
	public void paint2D(Graphics2D g2) {		
		int width = this.getWidth();
		int height = this.getHeight();
				
		// vymazani platna
		g2.setColor(Color.WHITE);
		g2.fillRect(0, 0, width, height);
		
		g2.setColor(Color.black);
		// TODO vytvorime ctverec s oblymi rohy pomoci general path
		GeneralPath oblyCtverec = new GeneralPath();
		// TODO pocatek objektu stanovime na 100,100, zacneme ale z nezakulaceneho praveho horniho rohu
		oblyCtverec.moveTo(200, 100);
		// TODO prava a spodni hrana jako jedna bezierova krivka
		// zdvojenim prostredniho bodu dosahneme zakulaceneho rohu
		oblyCtverec.curveTo(200, 200, 200, 200, 100, 200);
		// TODO leva a vrchni hrana jako jedna bezierova krivka
		oblyCtverec.curveTo(100, 100, 100, 100, 200, 100);
		// uzavreme objekt
		oblyCtverec.closePath();
		// a vykreslime
		g2.draw(oblyCtverec);
		
		/// BONUSOVA ULOHA - vykresleni sipek 
		g2.drawRect(100, 100, 300, 300);
		drawArrow(g2, 80, 350, 200, 270);
		drawArrow(g2, 250, 200, 150, 135);
		drawArrow(g2, 130, 430, 200, 0);
			
	}
	
	public void drawArrow(Graphics2D g, int x, int y, int delka, double uhel) {
		AffineTransform orig = g.getTransform();
		// provedeme transformace - 
		// - nutno dodrzet "opacne" poradi prikazu nez jak je chceme provest
		// translace do zadaneho bodu
		g.translate(x, y);
		// rotace o zadany uhel - chceme rotovat ve vychozi pozici
		g.rotate(Math.toRadians(uhel));
		// vykresleni tela sipky rovnobezne s x-ovou osou
		g.drawLine(0, 0, delka, 0);
		// hrot musi byt posunuty na konec sipky
		g.translate(delka, 0);
		// vykresleni hrotu sipky
		g.drawLine(0, 0, -10, -10);
		g.drawLine(0, 0, -10, 10);
		
		g.setTransform(orig);
	}
	
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		Slozitejsi okno = new Slozitejsi();
		okno.setTitle("Slozitejsi tvary");
		okno.setSize(640, 480);
		okno.setDefaultCloseOperation(EXIT_ON_CLOSE);
		
		okno.setLocationRelativeTo(null);	//vycentruje okno 
		okno.setVisible(true);

	  // TODO - odcommentovat :)		
		// Document Object Model - ziskani definice dokumentu jako objektu
	    DOMImplementation domImpl =
	      GenericDOMImplementation.getDOMImplementation();

	    // Vytvoreni org.w3c.dom.Document. dokumentu
	    String svgNS = "www.w3.org/2000/svg";
	    Document document = domImpl.createDocument(svgNS, "svg", null);

	    // TODO 
	    // Vytvoreni instance SVG generatoru
	    SVGGraphics2D svgGenerator = new SVGGraphics2D(document);
	    // TODO
	    // vykresleni obsahu okna pomoci metody paint2D a vytvoreneho generatoru
		okno.paint2D(svgGenerator);
		// Zapsani vystupu jako SVG za pouziti kodovani UTF-8

	    Writer out;
		try {
			out = new FileWriter("F:\\vystup.svg");		
			svgGenerator.stream(out, true); // true - chceme pouzivat css znacky
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

}
Předmět Autor Datum
Jde o nějaký impor java -classpath...? poslední
MašinkaTomáš 28.03.2013 20:03
MašinkaTomáš

Zpět do poradny Odpovědět na původní otázku Nahoru