Webtoons.com for Desktop

Resizes and downloads higher quality versions of the images on LINE (m.webtoons.com) to improve usability on Desktops and Laptops.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey, Greasemonkey किंवा Violentmonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey किंवा Violentmonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल..

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey किंवा Violentmonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल..

You will need to install an extension such as Tampermonkey or Userscripts to install this script.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल..

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्क्रिप्ट व्यवस्थापक एक्स्टेंशन इंस्टॉल करावे लागेल.

(माझ्याकडे आधीच युझर स्क्रिप्ट व्यवस्थापक आहे, मला इंस्टॉल करू द्या!)

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

(माझ्याकडे आधीच युझर स्टाईल व्यवस्थापक आहे, मला इंस्टॉल करू द्या!)

// ==UserScript==
// @name        Webtoons.com for Desktop
// @description Resizes and downloads higher quality versions of the images on LINE (m.webtoons.com) to improve usability on Desktops and Laptops.
// @author      Gendalph
// @namespace   https://greasyfork.org/users/3807
// @include     http://*webtoons.com/viewer?*
// @version     2
// @grant       none
// @license     MIT
// ==/UserScript==

function main() {
	var img = document.createElement("img"),
		imgUrl = document.querySelector('._checkVisible').src;
	img.src = imgUrl;

	img.onload = function() {
		var heightResizeFactor = img.height / document.querySelector('._checkVisible').height;

		img.style.visibility = 'hidden';
		document.body.appendChild(img);

		console.log("Detected frame width: " + img.clientWidth + "px");
		resizeFrames(img.clientWidth);
		resizeViewer(heightResizeFactor);
	};
}

function resizeFrames(width) {
	var imageList = document.querySelectorAll('._checkVisible'),
		containerDivs = document.querySelectorAll('.flick-ct'),
		imageWidth = width,
		containerMargin = (document.body.clientWidth - imageWidth) / 2;
	containerMargin = "0px " + containerMargin + "px";

	for (var i = 0; i < imageList.length; i++) {
		var image = imageList[i],
			container = containerDivs[i];

		container.style.width = width + "px";
		container.style.margin = containerMargin;
		image.src = image.src.replace("?type=q70", "");
	}
}

function resizeViewer(factor) {
	var viewer = document.querySelector('#_viewer'),
		height = Number(viewer.style.height.replace('px', '')) * factor;
	viewer.style.height = height + "px";
}

main();