Sie sind nicht angemeldet.

1

Dienstag, 3. Juli 2012, 11:13

krpano in Website einbinden

Hi,
ich habe folgendes Problem:
Alle Panoramen auf meiner Homepage werden mit krpano dargestellt. Eingebunden werden sie mit swfkrpano.js wie hier beschrieben. http://krpano.com/docu/html/

Das funktioniert prima. Auch auf unseren Android-Handies laufen die Panoramen flüssig. Nur auf dem Galaxy-Tab 10.1N ruckelt es. Man kann sich die Panos nicht vernünftig ansehen. Habe auch schon verschiedene Browser getestet, aber alles ohne Erfolg.
Jetzt ist mir aufgefallen, dass die Panoramen, die hier im Forum direkt in die Beiträge eingebunden sind, super flüssig auf dem Tablet laufen. Jetzt zu meiner Frage. Woran liegt das? Sind sie vielleicht anders eingebunden, oder liegt es daran, dass die Auflösung einfach viel geringer ist? Meine Panos sind in der Regel 6000x3000 Pixel groß. Die Beispiele auf der krpano-Seite laufen auch nicht flüssig auf dem Pad.

Gruß
Uli

2

Dienstag, 3. Juli 2012, 12:27

6000x3000 Pixel sind für die Präsentation auf Desktop-Systemen schon eher das unterste Ende der Fahnenstange. Auf mobilen Endgeräten ist das hingegen viel zu groß.
Die Lösung für dich lautet: Je nach aufrufender Plattform (Mobile 512x512 Px oder Tablet 1024x1024 Px). die entsprechenden CUBEs auszuliefern.
Wenn du die Standard-Droplets der krpano-Tools verwendest, werden diese Größen automatisch berücksichtigt.

$this->cacheCode('[php]','
<image type="CUBE" multires="true" tilesize="728" progressive="false">
<level tiledimagewidth="2546" tiledimageheight="2546">
<cube url="panos/pano.tiles/l2_%s_%0v_%0h.jpg" />
</level>
<level tiledimagewidth="1273" tiledimageheight="1273">
<cube url="panos/pano.tiles/l1_%s_%0v_%0h.jpg" />
</level>
<mobile>
<cube url="panos/pano.tiles/mobile_%s.jpg" />
</mobile>
<tablet>
<cube url="panos/pano.tiles/tablet_%s.jpg" />
</tablet>
</image>')

Sofern du Retina-Displays unterstützen möchtest, kannst du auch folgendes kombinieren:

$this->cacheCode('[php]','<display usedesktopimages="true" hardwarelimit="2048" devices="iPad+Retina" />')

Bei Unterstützung des Retina-Displays entspricht 1 virtuelles Pixel = 4 reale Pixel. Technisch limitiert bedeutet das für das iPad 1/2 eine maximale Kantenlänge von 1448x1448 Px und für das "neue iPad" 2048x2048 Px.

3

Dienstag, 3. Juli 2012, 13:40

Mein Xml sieht so aus:

<image type="CUBE" multires="true" tilesize="678" progressive="false">
<level tiledimagewidth="3729" tiledimageheight="3729">
<left url="aussen1a.tiles/l3_l_%0v_%0h.jpg"/>
<front url="aussen1a.tiles/l3_f_%0v_%0h.jpg"/>
<right url="aussen1a.tiles/l3_r_%0v_%0h.jpg"/>
<back url="aussen1a.tiles/l3_b_%0v_%0h.jpg"/>
<up url="aussen1a.tiles/l3_u_%0v_%0h.jpg"/>
<down url="aussen1a.tiles/l3_d_%0v_%0h.jpg"/>
</level>
<level tiledimagewidth="1865" tiledimageheight="1865">
<left url="aussen1a.tiles/l2_l_%0v_%0h.jpg"/>
<front url="aussen1a.tiles/l2_f_%0v_%0h.jpg"/>
<right url="aussen1a.tiles/l2_r_%0v_%0h.jpg"/>
<back url="aussen1a.tiles/l2_b_%0v_%0h.jpg"/>
<up url="aussen1a.tiles/l2_u_%0v_%0h.jpg"/>
<down url="aussen1a.tiles/l2_d_%0v_%0h.jpg"/>
</level>
<level tiledimagewidth="933" tiledimageheight="933">
<left url="aussen1a.tiles/l1_l_%0v_%0h.jpg"/>
<front url="aussen1a.tiles/l1_f_%0v_%0h.jpg"/>
<right url="aussen1a.tiles/l1_r_%0v_%0h.jpg"/>
<back url="aussen1a.tiles/l1_b_%0v_%0h.jpg"/>
<up url="aussen1a.tiles/l1_u_%0v_%0h.jpg"/>
<down url="aussen1a.tiles/l1_d_%0v_%0h.jpg"/>
</level>
</image>

Das kommt bei Make_Pano_multires_droplet.bat heraus. Welches Droplet meinst du?

Außerdem ist es schon merkwürdig, dass es auf dem Handy funktioniert.

Gruß
Uli

4

Dienstag, 3. Juli 2012, 14:51

Du bindest in deinem XML lediglich die CUBEs als Multires ein, ohne auf mobile und tablets zu reagieren. Benutzt du eine Browser-Weiche?
Ich beziehe mich übrigens auf das MAKE PANO (MULTIRES) droplet der aktuellen Tools.