您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Allows to rotate uploaded image
// ==UserScript== // @name Visvaris rotate image // @namespace Visvaris // @match https://visvaris.zzdats.lv/Card/EditUser/* // @grant none // @version 0.11 // @author Zigmars // @description Allows to rotate uploaded image // @license MIT // ==/UserScript== var pievienot_foto_objekts,imgtag; setTimeout(pievienot_foto_poga, 100); //aizvietojam pogu "Pievienot fotogrāfiju" ar savu, kas papildus izsauks rotēšanas pogas izveidi function pievienot_foto_poga(){ var dom_object = document.getElementById('userEditContent'); dom_object = dom_object.children.item(0).children.item(2); dom_object = dom_object.getElementsByTagName('a')[0]; dom_object = dom_object.parentNode; dom_object.children.item(0).style.display = "none"; pievienot_foto_objekts = dom_object; var new_a = document.createElement('a'); new_a.setAttribute('href', "#"); new_a.innerHTML = "Pievienot fotogrāfiju"; new_a.className = "link"; new_a.onclick = pievienot_foto_poga_click; dom_object.appendChild(new_a); addGlobalStyle('.fa-rotate:before {content: "\\f01e";color: blue;}'); } //simulējam klikšķi uz vecās pogas "Pievienot fotogrāfiju" un pēc 3 sekundēm uzsāksim rotēšanas pogas izveidi function pievienot_foto_poga_click(){ pievienot_foto_objekts.children.item(0).click(); setTimeout(rotet_poga, 3000); } //izveidojam rotēšanas pogu ar identisku stilu jau esošajām 2 pogām function rotet_poga(){ var dom_object = document.getElementById('filesystPanel'); dom_object=dom_object.getElementsByClassName('editButtonDiv')[0]; dom_object = dom_object.getElementsByTagName('ul')[0]; var new_li = document.createElement('li'); dom_object.appendChild(new_li); var new_a = document.createElement('a'); new_a.setAttribute('href', ""); new_a.className = "link"; new_a.title = "Rotēt"; new_a.onclick = rotet_poga_click; new_li.appendChild(new_a); var new_i = document.createElement('i'); new_i.className = "fa fa-rotate"; new_a.appendChild(new_i); } //nolasām attēla datus un rotējam function rotet_poga_click(){ var dom_object = document.getElementById('uploadedPhotoEdit'); imgtag = dom_object.getElementsByTagName('img')[1]; var base64source = imgtag.src; rotet_attelu(base64source,90); return false; } //funkcija, kas pievieno "head" daļā stilu priekš jaunās pogas function addGlobalStyle(css) { var head = document.getElementsByTagName('head')[0]; var style = document.createElement('style'); style.type = 'text/css'; style.innerHTML = css; head.appendChild(style); } //rotējam attēlu ap tā viduspunktu un pēc tam simulējam "drag" notikumu, lai attēls tiktu pārzīmēts function rotet_attelu(srcBase64, degrees) { var image = new Image(); image.onload = function (){ var canvas = document.createElement('canvas'); var ctx = canvas.getContext("2d"); canvas.width = image.width; canvas.height = image.height; ctx.translate(canvas.width / 2, canvas.height / 2); ctx.rotate(degrees * Math.PI / 180); ctx.drawImage(image, image.width / -2, image.height / -2); imgtag.onload = function (){ var dom_object=imgtag.parentNode.children.item(2); mouse_down_event=new Event('mousedown'); mouse_down_event.clientX = 0; mouse_down_event.clientY = 0; dom_object.dispatchEvent(mouse_down_event); mouse_move_event=new Event('mousemove'); mouse_move_event.clientX = 0; mouse_move_event.clientY = 0; document.dispatchEvent(mouse_move_event); mouse_up_event=new Event('mouseup'); mouse_up_event.clientX = 0; mouse_up_event.clientY = 0; document.dispatchEvent(mouse_up_event); }; imgtag.src = canvas.toDataURL(); }; image.src = srcBase64; }