Carl: Maximalgröße einer Grafik

Hallo

ist es möglich für eine Grafik eine Maximalgröße anzugeben.
Ich habe das Problem, dass ich die URL zu verschiedenen Grafiken in einer Datenbank speichere. Die URL wird dann auf einer Seite abgerufen und die Grafik soll angezeigt werden. Allerdings sollte dabei eine bestimmte Größe nicht überschritten werden. Wenn allerdings die Grafik kleiner ist, als die maximalgröße, soll sie in ihrer normalen Größe angezeigt werden.

Ist sowas möglich?

Gruss
Carl

  1. Hallo Carl,

    ja, serverseitig. Welche Sprache verwendest Du für das Lesen aus der Datenbank, bzw. Übergabe der Grafik an den Browser?

    Gruß,
    Danny

    1. Hi Danny

      ich lese die URL mit PHP aus der Datenbank raus und habe dann eine variable die so aussieht:

      $verknuepfung = "<a href="$link"><img src="$logo_url" width="300" height="100"></a>";

      $link gibt dabei die URL zur Seite des anderen an (auch in der DB gespeichert) und $logo_url die URl zur Grafik (die vorerst wohl auf einem anderen Server liegen wird)

      Und dann hae ich einfach in meine Seite ein <? echo "$verknuepfung" ?> eingefügt.

      Gruss
      Carl

      1. Moin!

        ich lese die URL mit PHP aus der Datenbank raus

        Na bestens. Mit getimagesize() kriegst du die Dimensionen der Grafik raus und kannst dann entsprechend reagieren. Wenn die Dimensionen eine gewisse Grenze überschreiten, gibst du den Maximalwert in width und height vom <img> aus, ansonsten den realen Wert.

        Dumm ist nur eines: Du mußt für getimagesize() die Grafik lokal gespeichert haben.

        Unter http://www.php.net/manual/de/function.getimagesize.php gibts in den User-Anmerkungen diverse Ansätze, die Datei mit einer selbstgebauten Funktion zu öffnen - da kann man dann auch per HTTP zugreifen. Allerdings dauert all dies wesentlich länger, als ein schneller Zugriff auf die Datei lokal. Deshalb ist es schlauer, wenn du eine Datei hochladen läßt bzw. die Grafik-URL schon beim Speichern in der Datenbank lokal kopierst bzw. die Größe der Grafik mit in die Datenbank schreibst.

        Eine andere Möglichkeit existiert nicht.

        - Sven Rautenberg

        --
        "Bei einer Geschichte gibt es immer vier Seiten: Deine Seite, ihre Seite, die Wahrheit und das, was wirklich passiert ist." (Rousseau)
  2. HI,

    ich denke, das es sich mit einem ausgefeilten Java-Script bewerkstelligen lassen müsste. Man kann ja Bilder vorladen (werden dann noch nicht angezeigt) und die Properties erfragen. Dann müsste man die Werte dynamsch ändern. Von der Logik her ungefähr so:

    bildgroesse
    if x.widthvonbild > xyz
    dann --> document.speziellesbild.x.width = xyz

    mit der breite dann  genauso

    Ich bin in Javascript leider nicht sehr fit, doch hilft dir vielleicht die Idee!

    gruß
    ZAB