# Bilder zuscheiden - Werte von php übergeben



## sanktusm (9. Mai 2008)

Hallo,
ich weiss zwar, wie ich Bilder in php zuscheiden kann. Leider ist aber die Qualität nicht besonders wenn man größere Bilder kleinschneiden will.

Ich hoffe, das ein entsprechendes Programm oder eine Funktion in Java bessere Qualität versprechen kann.

Wie ist es möglich Bilder zuzuscheiden und Werte von PHP an ein JAVAAPPLET zu übergeben? Kenn jemand vielleicht ein Script das erhältlich ist?


----------



## dajos7 (9. Mai 2008)

Hallo,

also zum Thema Applet einbinden hab ich das hier für Dich java.sun.com/j2se/1.4.2/docs/guide/misc/applet.html

Man sollte aber auch das Object Tag in Browsern beachten. Dazu ließ das java.sun.com/j2se/1.5.0/docs/guide/plugin/developer_guide/using_tags.html
Du musst bedenken, dass php auf Serverseite ausgeführt wird und ein Applet auf der Clientseite. Du kannst mit javascript, Funktionen im Applet aufrufen. Das geht zB indem Du dem Applet-Tag eine Id verpasst und dann die Id wie in java direkt mit der im Applet implementierten Funktion aufrufst. Das klappt normal mit einfachen Properties wie String und Integer ganz gut, Bilder und ähnliches kann man da meines Wissens nicht übergeben, wie sollte man die mit Javascript auch darstellen.

Bilder ohne Qualitätsverlust is bei JPG glaube ich nicht möglich. Das Bild muss ja entpackt und nochmals abgespeichert werden, was wieder zu einer Codierung führt. Man korrigiere mich bitte, wenn ich hier falsch liege. Bei verlustloser Komprimierung ist das aber denke ich ohne weiteres machbar. Bei PNG und BMP liegt glaube ich verlustlose Komprimierung vor.

Das Bild aus dem applet raus zu bekommen wird glaube ich nicht einfach, es sei denn man zeigt es im Applet direkt selbst an 

Ein Beispiel werde ich noch machen, wenn nicht jmd anderes schon schneller ist.

Parameter kannst Du so übergeben:

```
<html>
  <head>
    <title>Applets</title>
  </head>

  <body>
    <applet code="Parameter.class" width="300" height="100">
      <param name="benutzername" value="Bill" />
    </applet>
  </body>
</html>
```

Im Applet dann so auslesen, das Bild wird über eine URL bezogen. Hier ist zu beachten, dass das Applet signiert sein muss, um auf einen anderen Server zugreifen zu können. Greift es allerdings auf den gleichen Server zu, von dem es geladen wurde, kann es ohne weiteres auch ohne signiert zu sein von dort Dinge laden.

```
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.net.URL;

import javax.imageio.ImageIO;
import javax.swing.JApplet;

public class Parameter extends JApplet {


	private static final long serialVersionUID = 9065574589317716675L;
	private static String name = "default";
	private BufferedImage bi = null;
	
	
    public void init() {
        name = getParameter("benutzername");
        try {
        	bi = ImageIO.read(new URL("http://lewk.org/bodhi.png"));
        	
        	
        } catch (Exception e) {
			System.out.println("Fehler beim Lesen : "+e);
		}
    }

    public void paint(Graphics g) {
        g.drawString("hi, " + name, 10,70);
        g.drawImage(bi,10,10,this);
    }
}
```


----------



## EgonOlsen (10. Mai 2008)

Es wäre vermutlich sinnvoller, die Bilder mittels Java auf dem Server zu bearbeiten und nicht im Applet. Allerdings braucht man dazu halt einen Server, der zumindest eine VM laufen hat, besser noch sowas wie Tomcat.


----------



## Janus (12. Mai 2008)

ob das sinnvoller ist, hängt vom server und der art der anwendung ab. bildverarbeitung kann schnell verdammt viele resourcen fressen. die berechnung dann dem client zu überlassen (sprich: applet) kann da durchaus eine überlegung wert sein.


----------



## dajos7 (12. Mai 2008)

Wie EgonOlsen schon schrieb:

Schreib doch mit C++ oder java eine simple Anwendung und binde es dann mit einem CGI ein... geht das nicht?

ich nem mal an, da Du php verwendest sollte ein CGI kein Problem sein.


----------



## newcron (12. Mai 2008)

Wieso so mühsam? PHP bringt bereits eine Schnittstelle zu Java mit - man kann also Java Objekte aus PHP erzeugen und Methoden aufrufen.

Allerdings solltest du vorsichtig sein, da diese Bibliothek noch nicht Stabil ist: 
http://www.php.net/manual/de/book.java.php


----------



## DjDogy (19. Mai 2008)

java


----------



## EgonOlsen (19. Mai 2008)

DjDogy hat gesagt.:
			
		

> java


Astrein!


----------

