阿不思的落胤 发表于 2024-2-16 13:07:51

【龙腾九霄】【你画我猜】成图上传V2 之 整合进入油猴插件

本帖最后由 阿不思的落胤 于 2024-2-16 17:59 编辑

编辑之后格式乱了,非常抱歉,全力抢救了@Name

这是大佬user_login的成图上传代码原帖[教学] 【你画我猜】成图上传V2,一键简化操作

大佬帖子中是采用书签的方式来在画猜创作界面每次运行代码,然后.....人家不想创建书签嘛~~{:4_105:}我就想办法把原帖中v2.2的代码整进了油猴插件中,在打开画猜创作界面时自己执行(不是搞前端的,js学得不多,想办法整进油猴脚本弄得我头快炸了)


改动内容:
我将原代码格式化后,将其中的这一句
inputObj.setAttribute('onchange','selectImage(this)');
换成了

inputObj.addEventListener('change', function() {
    selectImage(this);
});
最终在油猴中成功

在油猴插件中的操作方式:
1.打开油猴插件"管理面板"
2.点击"已安装脚本"左侧的"+"按钮

3.复制以下代码
// ==UserScript==
//@name         gamemale你画我猜成图工具
// @namespace    https://www.gamemale.com
// @version 2.2
// @description一键上传成图
// @author       You
// @match      https://www.gamemale.com/plugin.php?id=viewui_draw&mod=list&ac=draw
// @grant      none
// ==/UserScript==

window.onload = (function() {
    'use strict';

    // Your code here...
    var padding=30;
    var par=document.getElementsByClassName("btn");
    var ct=document.getElementsByClassName("canvas").childNodes;
    var ctx=ct.getContext("2d");
    var devicePixelRatio=window.devicePixelRatio||1;
    var backingStoreRatio=ctx.webkitBackingStorePixelRatio||1;
    var ratio=devicePixelRatio/backingStoreRatio;ctx.scale(ratio,ratio);
    padding=padding*ratio;ct.style.borderWidth='1px';
    ct.style.borderStyle='solid';
    var img=new Image();
    img.onload=function(){
      var sh=347*ratio;
      var sw=500*ratio;
      var h=img.height;
      var w=img.width;
      var ph=sh-padding*2;
      var pw=sw-padding*2;
      ct.height=sh;
      ct.width=sw;
      ct.style.height=sh;
      ct.style.width=sw;
      ctx.clearRect(0,0,ct.width,ct.height);
      if(w/h>=pw/ph){
            h=h*(pw/w);
            w=pw;
            ctx.drawImage(img,padding,padding+(ph-h)/2,w,h)
      }else{
            w=w*(ph/h);
            h=ph;
            ctx.drawImage(img,padding+(pw-w)/2,padding,w,h)
      }
    };
    function selectImage(file){
      if(!file.files||!file.files){
      return
      };
      var reader=new FileReader();
      reader.onload=function(evt){
            img.src=evt.target.result
      };
      reader.readAsDataURL(file.files)
    };
    var inputObj=document.createElement('input');
    inputObj.setAttribute('id','imgInput');
    inputObj.setAttribute('type','file');
    //inputObj.setAttribute('onchange','selectImage(this)');
    inputObj.addEventListener('change', function() {
      selectImage(this);
    });
    par.appendChild(inputObj);
})();

4.去油猴"新建用户脚本"界面,按下Ctrl+A,再按下Ctrl+V,全部粘贴进去,然后Ctrl+S保存即可

5.打开你画我猜创作界面 建议右击新开标签页直接跳转创作界面

6.剩下的就和user_login大佬原帖操作方式一样了,直接上传图片就行




凯诺斯 发表于 2024-2-16 13:17:19

感谢楼主的代码惹,非常的实用呀:lol

SM_GL 发表于 2024-2-16 13:19:10

居然更新了,虽然看不懂代码

suowo 发表于 2024-2-16 13:20:17

好耶更新了,感谢楼主分享捏owo

WitchOL 发表于 2024-2-16 13:22:45

感谢楼主的努力,很喜欢玩你画我猜

tenfu 发表于 2024-2-16 13:24:54

还没有玩过你画我猜,不过竟然也需要插件来处理一些繁琐步骤是没想到的{:6_170:}

娱乐法师火布偶 发表于 2024-2-16 13:29:50

这个工具脚本非常实用了,很方便画猜

miniQ 发表于 2024-2-16 13:31:19

:shutup:就我一个看不懂吗,油猴又是啥玩意

万籁春声 发表于 2024-2-16 13:31:51

你画我猜区域我只是偶尔看看,感觉有了脚本又能方便不少

MewHuk 发表于 2024-2-16 13:32:11

感謝分享~ 變得更方便
改天來試試看:lol

沉澈流风 发表于 2024-2-16 13:34:16

又有新的实用工具了,太棒了

ditto 发表于 2024-2-16 13:34:20

好棒的一个工具,你画我猜用起来方便很多惹

白鸟探 发表于 2024-2-16 13:34:55

日常在泥潭学习一些有用的操作+1

毛茸茸兽兽 发表于 2024-2-16 13:40:23

哎呀(´×ω×`)不知道手机浏览器能不能操作咧~懒得开电脑的

轮回2L 发表于 2024-2-16 13:43:49

上传图片很方便惹,画猜神器{:6_184:}

Burry 发表于 2024-2-16 13:49:17

你猜我画很久没玩了,但是代码很实用呢。

不是卖萌的基佬 发表于 2024-2-16 13:53:17

{:6_188:}画猜玩家很喜欢这个功能啊,谢谢大佬的脚本!

深暗幽狼 发表于 2024-2-16 13:53:25

直接往代码前面艾特name,然后代码这边的就不会识别出来了,每二次编辑需要删除并再次手动艾特name即可。

南墙暖 发表于 2024-2-16 14:10:17

这一次更新了( •̀ ω •́ )y变得更方便了:loveliness:

除却巫山不是云 发表于 2024-2-16 14:35:27

感谢大佬的进一步改进更新!
页: [1] 2 3
查看完整版本: 【龙腾九霄】【你画我猜】成图上传V2 之 整合进入油猴插件