Greasy Fork is available in English.

Wyszukiwanie obrazów Google - Pokaż wymiary obrazu

Wyświetla wymiary obrazu (np. "1920 × 1080") dla każdej miniaturki na stronie wyników wyszukiwania obrazów Google.

Stan na 26-04-2020. Zobacz najnowsza wersja.

// ==UserScript==
// @namespace       https://openuserjs.org/users/Taddiboy
// @name            Google Image Search - Show Image Dimensions
// @name:de         Google Bildersuche - Bildabmessungen anzeigen
// @name:fr         Google Image Search - Afficher les dimensions de l'image
// @name:es         Búsqueda de imágenes de Google - Mostrar las dimensiones de la imagen
// @name:it         Ricerca immagini su Google - Mostra le dimensioni delle immagini
// @name:pl         Wyszukiwanie obrazów Google - Pokaż wymiary obrazu
// @name:ru         Поиск изображений Google - Показать размеры изображений
// @description     Displays image dimensions (eg. "1920 × 1080") for each thumbnail on the Google Image Search results page.
// @description:de  Zeigt die Bildabmessungen (z. B. "1920 × 1080") für jedes Vorschaubild auf der Ergebnisseite der Google-Bildsuche an.
// @description:fr  Affiche les dimensions de l'image (par exemple, "1920 × 1080") pour chaque miniature sur la page de résultats de Google Image Search.
// @description:es  Muestra las dimensiones de la imagen (p. ej., "1920 × 1080") para cada miniatura de la página de resultados de Google Image Search.
// @description:it  Visualizza le dimensioni dell'immagine (ad es. "1920 × 1080") per ogni miniatura nella pagina dei risultati della ricerca immagini di Google.
// @description:pl  Wyświetla wymiary obrazu (np. "1920 × 1080") dla każdej miniaturki na stronie wyników wyszukiwania obrazów Google.
// @description:ru  Отображает размеры изображения (например, "1920 × 1080") для каждой миниатюры на странице результатов поиска изображений Google.
// @copyright       2020, Taddiboy (https://openuserjs.org/users/Taddiboy)
// @license         MIT
// @author          Taddiboy
// @version         1.2.0
// @icon            https://i.imgur.com/7OeXVaf.png
// @include         https://*.google.tld/*tbm=isch*
// @grant           GM_addStyle
// ==/UserScript==

(function () {
  'use strict';

  // Add Google's own CSS used for image dimensions
  GM_addStyle(`
  .img-dims p {
    position: absolute;
    bottom: 0;
    right: 0;
    margin: 0;
    padding: 4px;
    color: #f1f3f4;
    background-color: rgba(0,0,0,.5);
    border-radius: 2px 0 0 0;
    font-family: Roboto-Medium,Roboto,Arial,sans-serif;
    font-size: 10px;
    line-height: 12px;
  }
  `);

  function showDims() {
    // Find all thumbnails & exclude the "already handled" class we set below
    const images = document.querySelectorAll('[data-ow]:not(.img-dims)');

    // Loop through all thumbnails
    for (let i = 0; i < images.length; i++) {
      const image = images[i];

      // Get original width from 'data-ow' attribute
      const width = image.getAttribute('data-ow');

      // Get original height from 'data-oh' attribute
      const height = image.getAttribute('data-oh');

      // Create P Tag and insert text
      const dimensionsDiv = document.createElement("p");
      const dimensionsContent = document.createTextNode(width + " × " + height);
      dimensionsDiv.appendChild(dimensionsContent);

      // Append everything to thumbnail
      image.firstChild.appendChild(dimensionsDiv);

      // Add CSS class to the thumbnail
      image.classList.add("img-dims");
    }
  }

  // Run script once on document ready
  showDims();

  // Initialize new MutationObserver
  const mutationObserver = new MutationObserver(showDims);

  // Let MutationObserver target the grid containing all thumbnails
  const targetNode = document.querySelector('div[data-id="GRID_STATE0"]');

  // Run MutationObserver
  mutationObserver.observe(targetNode, {childList: true,subtree: true});
})();