Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    ridimensionamento condizionato di un'immagine

    ho realizzato una galleria fotografica in cui l'amministratore può aggiungere nuove foto.
    Facciamo che la foto si chiami foto.jpg io avrò il seguente tag img:

    codice:
     
    [img]foto.jpg[/img]
    questo fatto provoca un problema: se l'amministratore inserisce una foto troppo larga, mi rovina tutto il layout provocando un bruttissimo scroll orizzontale
    Allora ho provato a scrivere:

    codice:
    [img]foto.jpg[/img]
    quest'altro codice va ben per foto troppo grosse, ma mi storpia le foto più piccole di 500px di larghezza.

    Come posso fare per ridimensionare a 500 solo le foto con larghezza maggiore di 500px e lasciare invariate quelle più piccole?
    Lo posso fare senza dover "editare" l'immagine?

    per i moderatori: se dovete chiudere un 3d chiudete quello precedente a questo nella sezione html perchè lì nessuno aveva una risposta

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    12
    mi viene in mente un ridimensionamento dell'immagine lato server con il linguaggio di programmazione che usi. Solo usando i css non ci sono mai riuscito....
    ----------
    Never say never!

  3. #3
    forse scrivendo qualcosa del tipo:

    <img ... style="Width:condition(...?...)">

    ma cosa ci devo scrivere nello style? nessuno ha un'idea?

  4. #4
    devi usare uno script lato server: al caricamento dell' immagine viene ridimensionata opportunamente e ottimizzata (ad esempio con le GD library),
    in questo modo eviti poi di dover usare strani e inopportuni sistemi per "forzare" a 500px l' immagine.

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Si puo` fare anche lato client, pero` servono i JS. Con i CSS da soli non credo sia possibile.

    Pero` se puoi fare un ridimensionamento dell'immagine lato server, la cosa e` sicuramente meglio.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  6. #6
    Utente di HTML.it L'avatar di Marcolino's
    Registrato dal
    May 2003
    residenza
    Udine
    Messaggi
    3,606
    Originariamente inviato da Insaponata
    forse scrivendo qualcosa del tipo:

    <img ... style="Width:condition(...?...)">

    ma cosa ci devo scrivere nello style? nessuno ha un'idea?
    Sconsigliato perché non tutti i browser supportano le condizioni nei fogli di stile.
    Come ti sconsiglio il suggerimento sul javascript, perché per fregarti, basterebbe disabilitare il suo supporto nel browser.

    Visto che usate il PHP, basta metere questa clausola:
    codice:
    list($width, $height, $type, $attr) = getimagesize("img/flag.jpg");
    if (($type >= 1) and ($type <= 3))
        if ($width < 500) $img = "[img]img/flag.jpg[/img]"; 
    else $img = "[img]img/flag.jpg[/img]";
    In pratica se l'immagine è più grande di 500pixel imposti width a 500 pixel, se più piccola, la imposti alla dimensione reale.
    $type corrisponde al tipo di immagine, io ho fatto in modo che passino solo quelle che corrispondono a 1, 2, 3, ovvero a GIF, JPG e PNG, altro non passa.

    Se dai un'occhiata al manuale del PHP online ne vedi tante altri di esempi, e le GD non servono.
    http://it2.php.net/manual/it/function.getimagesize.php

    M.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.