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

    resize al volo png e problemi ie6

    Salve a tutti,

    Utilizzo una classe php per fare il resize al volo di immagini png trasparenti, in IE6 ho il solito problema della trasparenza che risolvo utilizzando pngfix.
    Ovviamente facendo il resize al volo dell'immagine il pngfix serve a poco.
    Esiste un metodo per ovviare a questo problema utilizzando comunque il resize a video?

    Grazie.
    Non sono esperto, sono solo curioso.

  2. #2

    Re: resize al volo png e problemi ie6

    Originariamente inviato da jartiello
    Ovviamente facendo il resize al volo dell'immagine il pngfix serve a poco.
    E perchè mai?

  3. #3
    perchè faccio il resize utilizzando un'altra pagina, es:

    [img]show_image.php?filename=mia_immagine.png&r=60[/img]

    e il pngfix non viene applicato a queste immagini.
    Non sono esperto, sono solo curioso.

  4. #4
    O modifichi il codice di pngfix per farlo funzionare con quell'URL, oppure utilizzi mod_rewrite per far si che l'url sia adatto a pngfix.

    In entrambi i modi risolvi il problema.

  5. #5
    Potrei utilizzare il mod_rewrite ma non saprei da dove iniziare.
    Non sono esperto, sono solo curioso.

  6. #6
    Ok ci sono riuscito utilizzando il mod_rewrite:

    RewriteRule ^img-small/([A-Za-z0-9/_-]+).(jpg|gif|png)$ show_image.php?filename=$1.$2&r=60

    Ora mi chiedo, questa soluzione in termini generali è più conveniente dell'altra che hai consigliato (quella di modifcare il pngfix)?

    riporto il codice del pngfix che utilizzo (sono curioso di capire come modificarlo):


    var arVersion = navigator.appVersion.split("MSIE")
    var version = parseFloat(arVersion[1])

    if ((version >= 5.5) && (document.body.filters))
    {
    for(var i=0; i<document.images.length; i++)
    {
    var img = document.images[i]
    var imgName = img.src.toUpperCase()
    if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
    {
    var imgID = (img.id) ? "id='" + img.id + "' " : ""
    var imgClass = (img.className) ? "class='" + img.className + "' " : ""
    var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
    var imgStyle = "display:inline-block;" + img.style.cssText
    if (img.align == "left") imgStyle = "float:left;" + imgStyle
    if (img.align == "right") imgStyle = "float:right;" + imgStyle
    if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle
    var strNewHTML = "<span " + imgID + imgClass + imgTitle
    + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
    + "filterrogidXImageTransform.Microsoft.AlphaImageLoader"
    + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>"
    img.outerHTML = strNewHTML
    i = i-1
    }
    }
    }
    Non sono esperto, sono solo curioso.

  7. #7
    Visto il codice che hai postato, probabilmente era sufficiente scrivere il tag IMG come segue:

    Codice PHP:
    [img]show_image.php?r=60&filename=mia_immagine.png[/img

  8. #8
    Intendi questo?

    var strNewHTML = "<span " + imgID + imgClass + imgTitle
    + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
    + "filterrogidXImageTransform.Microsoft.AlphaImageLoader"
    + "(src=\'show_image.php?filename=" + img.src + "&r=100\', sizingMethod='scale');\"></span>"
    img.outerHTML = strNewHTML

    Ma cmq in questo modo applico il resize a tutte le immagini del sito sotto IE6, cosa che non devo.
    Non sono esperto, sono solo curioso.

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.