Changeset 115809 in spip-zone


Ignore:
Timestamp:
Jun 27, 2019, 2:18:15 PM (2 months ago)
Author:
cedric@…
Message:

Up lib, renommage variable, et mise a jour de la config pour permettre de configurer la largeur des miniatures

Location:
_plugins_/adaptive_images/trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/adaptive_images/trunk/adaptive_images_options.php

    r115805 r115809  
    5050        if (isset($settings['lowsrc_jpg_bg_color']) AND $settings['lowsrc_jpg_bg_color'])
    5151                $AdaptiveImages->lowsrcJpgBgColor = $settings['lowsrc_jpg_bg_color'];
    52         // qualite des images lowsrc
    53         if (isset($settings['lowsrc_jpg_quality']) AND $q=intval($settings['lowsrc_jpg_quality']))
    54                 $AdaptiveImages->lowsrcJpgQuality= $q;
    5552        // qualite de compression JPG pour les images 1x
    5653        if (isset($settings['10x_jpg_quality']) AND $q=intval($settings['10x_jpg_quality']))
     
    7269                $AdaptiveImages->maxWidthMobileVersion = $v;
    7370
    74         // fine tuning : on genere une miniature toute petite en ameliorant un peu la qualite de sortie,
    75         // ce qui donne une taille beaucoup plus reduite
    76         $AdaptiveImages->maxWidthFallbackVersion = $AdaptiveImages->maxWidthMobileVersion / 4;
    77         $AdaptiveImages->lowsrcJpgQuality = min($AdaptiveImages->lowsrcJpgQuality + 30, 90);
     71
     72        // qualite des images lowsrc
     73        if (isset($settings['lowsrc_jpg_quality']) AND $q=intval($settings['lowsrc_jpg_quality']))
     74                $AdaptiveImages->lowsrcJpgQuality= $q;
     75        if (isset($settings['lowsrc_width']) AND $v=intval($settings['lowsrc_width'])){
     76                $AdaptiveImages->lowsrcWidth = $v;
     77        }
     78        else {
     79                // fine tuning automatique si pas de config (up depuis une version existante) :
     80                // on genere une miniature toute petite en ameliorant un peu la qualite de sortie,
     81                // ce qui donne une taille beaucoup plus reduite
     82                $AdaptiveImages->lowsrcWidth = 128;
     83                $AdaptiveImages->lowsrcJpgQuality = min($AdaptiveImages->lowsrcJpgQuality + 30, 90);
     84        }
    7885
    7986        // on ne traite pas les images de largeur inferieure a min_width_1x px
  • _plugins_/adaptive_images/trunk/formulaires/configurer_adaptive_images.html

    r80437 r115809  
    88                #ACTION_FORMULAIRE
    99                #SET{fl,adaptive_images}
    10                 <ul>
     10                <ul class="editer-groupe">
    1111                        #SET{name,lowsrc_jpg_bg_color}#SET{obli,''}#SET{defaut,'#ffffff'}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
    1212                        <li class="editer long_label editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
     
    7575                                        <legend><:adaptive_images:legend_compression_jpg:></legend>
    7676                                        <p class="explication"><:adaptive_images:explication_compression_jpg:></p>
    77                                         <ul>
    78                                                 #SET{name,lowsrc_jpg_quality}#SET{obli,''}#SET{defaut,'10'}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
    79                                                 <li class="editer long_label editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
    80                                                         <label for="#GET{name}">[(#GET{fl}|concat{':label_',#GET{name}}|_T)]</label>[
    81                                                         <span class='erreur_message'>(#GET{erreurs})</span>
    82                                                         ]<input type="text" name="#GET{name}" class="text" value="#ENV*{#GET{name},#GET{defaut}}" id="#GET{name}" [(#HTML5|et{#GET{obli}})required='required']/>
    83                                                 </li>
     77                                        <ul class="editer-groupe">
    8478                                                #SET{name,10x_jpg_quality}#SET{obli,''}#SET{defaut,'75'}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
    8579                                                <li class="editer long_label editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
     
    10498                        </li>
    10599
     100                        <li class="fieldset">
     101                                <fieldset>
     102                                        <legend><:adaptive_images:legend_miniature_basse_def:></legend>
     103                                        <p class="explication"><:adaptive_images:explication_miniature_basse_def:></p>
     104                                        <ul class="editer-groupe">
     105                                                #SET{name,lowsrc_width}#SET{obli,''}#SET{defaut,'128'}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
     106                                                <li class="editer long_label editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
     107                                                        <label for="#GET{name}">[(#GET{fl}|concat{':label_',#GET{name}}|_T)]</label>[
     108                                                        <span class='erreur_message'>(#GET{erreurs})</span>
     109                                                        ]<input type="text" name="#GET{name}" class="text" value="#ENV*{#GET{name},#GET{defaut}}" id="#GET{name}" [(#HTML5|et{#GET{obli}})required='required']/>
     110                                                </li>
     111                                                #SET{name,lowsrc_jpg_quality}#SET{obli,''}#SET{defaut,'40'}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
     112                                                <li class="editer long_label editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
     113                                                        <label for="#GET{name}">[(#GET{fl}|concat{':label_',#GET{name}}|_T)]</label>[
     114                                                        <span class='erreur_message'>(#GET{erreurs})</span>
     115                                                        ]<input type="text" name="#GET{name}" class="text" value="#ENV*{#GET{name},#GET{defaut}}" id="#GET{name}" [(#HTML5|et{#GET{obli}})required='required']/>
     116                                                </li>
     117                                        </ul>
     118                                </fieldset>
     119                        </li>
     120
    106121                </ul>
    107122
  • _plugins_/adaptive_images/trunk/lang/adaptive_images_fr.php

    r103864 r115809  
    2929Evite de générer toutes les images d\'un coup ce qui peut produire des erreurs sur les pages avec beaucoup d\'images.',
    3030        'legend_compression_jpg' => 'Compression JPG',
     31        'legend_miniature_basse_def' => 'Génération de l\'aperçu basse définition',
    3132        'explication_compression_jpg' => 'Indiquez la qualité des images produites : de 0 (compression maximale, poids minimum) à 100 (pas de compression, poids maximum).',
    32         'label_lowsrc_jpg_quality' => 'Image basse définition',
     33        'explication_miniature_basse_def' => 'L\'image d\'aperçu basse définition est envoyée dans le html de la page, pour proposer un aperçu (flouté) pendant que les vrais images chargent. Elle doit donc être aussi légère que possible.<br />
     34 Un bon compromis de reglage est : Largeur 128px/Qualité 40.',
     35        'label_lowsrc_width' => 'Largeur de l\'aperçu (px)',
     36        'label_lowsrc_jpg_quality' => 'Qualité de l\'aperçu',
    3337        'label_10x_jpg_quality' => 'Image 1x',
    3438        'label_15x_jpg_quality' => 'Image 1.5x',
  • _plugins_/adaptive_images/trunk/lib/AdaptiveImages/AdaptiveImages.php

    r115808 r115809  
    33 * AdaptiveImages
    44 *
    5  * @version    1.11.1
     5 * @version    1.11.2
    66 * @copyright  2013-2019
    77 * @author     Nursit
     
    8686
    8787        /**
    88          * Maximum width for fallback when maxWidth1x is very large
     88         * target width for fallback thumbnail
    8989         * @var int
    9090         */
    91         protected $maxWidthFallbackVersion = 160;
     91        protected $lowsrcWidth = 160;
    9292
    9393        /**
     
    641641                        }
    642642                        if ($wk<=$maxWidth1x
    643                                 AND ($wk<=$this->maxWidthFallbackVersion)
     643                                AND ($wk<=$this->lowsrcWidth)
    644644                                AND ($is_mobile OR !$srcMobile)){
    645645                                $fallback = $images[$wk]['10x'];
     
    655655                                'src' => $src,
    656656                                'srcMobile' => $srcMobile,
    657                                 'maxWidthFallbackVersion' => $this->maxWidthFallbackVersion,
     657                                'lowsrcWidth' => $this->lowsrcWidth,
    658658                                'lowsrcJpgQuality' => $this->lowsrcJpgQuality,
    659659                        ];
     
    673673                        if ($wk>$w
    674674                                AND $w<$maxWidth1x
    675                                 AND $w<$this->maxWidthFallbackVersion){
     675                                AND $w<$this->lowsrcWidth){
    676676                                $fallback = $images[$w]['10x'];
    677677                                $wfallback = $w;
     
    679679
    680680                        $process_fallback = true;
    681                         if ($wfallback > $this->maxWidthFallbackVersion) {
     681                        if ($wfallback > $this->lowsrcWidth) {
    682682
    683683                                $bigger_mistake = $h;
    684                                 $best_width = $this->maxWidthFallbackVersion;
     684                                $best_width = $this->lowsrcWidth;
    685685                                // optimise this $wfallback to avoid a too big rounding mistake in the height thumbnail resizing
    686686                                foreach ([1,1.25,1.333,1.5,1.666,1.75,2] as $x) {
    687                                         $wfallback = round($x * $this->maxWidthFallbackVersion);
     687                                        $wfallback = round($x * $this->lowsrcWidth);
    688688                                        list($fw,$fh) = $this->computeImageSize($w, $h, $wfallback,10000);
    689689                                        $mistake = abs(($h - ($fh * $w / $fw)) * $maxWidth1x / $w);
Note: See TracChangeset for help on using the changeset viewer.