Annonce

Écrire une réponse

Veuillez écrire votre message et l'envoyer

Cliquez dans la zone sombre de l'image pour envoyer votre message.

Retour

Résumé de la discussion (messages les plus récents en premier)

Eric
2011-09-04 02:24:07

plg a écrit:

Est-ce que cela répond à ta question ? :-)

Tout à fait ! Merci pour ces explications. Cet algo est pas mal du tout et donne une excellent appréciation des limites selon l'hébergeur. J'ai testé chez e-clicking et le résultat est très proche.

Bravo encore pour cette trouvaille ;-)

Yannick45
2011-09-04 01:54:58

Je comprends pas encore grand chose à toutes ces données informatiques, mais je suis content que vous ayez privilégié le format 3/2 (24x36) plutôt que le 4/3.

plg
2011-09-03 23:34:47

Voilà l'algorithme :

Code:

  $fudge_factor = 1.7;
  $available_memory = get_ini_size('memory_limit') - memory_get_usage();
  $max_upload_width = round(sqrt($available_memory/(2 * $fudge_factor)));
  $max_upload_height = round(2 * $max_upload_width / 3);
  
  // we don't want dimensions like 2995x1992 but 3000x2000
  $max_upload_width = round($max_upload_width/100)*100;
  $max_upload_height = round($max_upload_height/100)*100;
  
  $max_upload_resolution = floor($max_upload_width * $max_upload_height / (1000000));

En gros, je connais de manière approximative le nombre de pixels que GD peut gérer pour une quantité de mémoire donnée, moyenne un coefficient "flou", le $fudge_factor. J'ai trouvé cet algorithme sur le web :

memoryNeeded = largeur x hauteur x profondeur_en_bits x (nombre de canaux / 8) * fudge_factor;

J'ai simplifié en considérant que profondeur = 8 et nombre de canaux = 3.

Mes tests ont montré un $fudge factor de 1.6+e donc j'ai arrondi à 1.7 de manière pessimiste. De plus, pour ne pas donner qu'un nombre de pixels qui n'est pas toujours très parlant, j'ai voulu donné des dimensions largeur*hauteur et j'ai considéré un format 3/2 (j'aurais pu prendre 4/3 comme sur un tas d'appareils compacts, mais j'ai choisi 3/2 comme sur les reflex)

Est-ce que cela répond à ta question ? :-)

Eric
2011-09-03 14:55:12

Le nouveau système d'upload est tout simplement génial. Et cela fonctionne même chez Free ^^

Juste pour savoir, comment est réalisé le calcul des paramètres maximum acceptables pour l'upload ? Chez Free, par exemple, je ne suis pas parvenu à dépasser les 2700 x 2025 px alors que la limite annoncée est de 3000 x 2000 px.
Il est bien précisé qu'il s'agit d'une estimation qui ne devrait pas faire autorité mais on a souvent tendance à flirter avec les limites ;-)

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2024 · Contact