GithubHelp home page GithubHelp logo

hymbz / comicreadscript Goto Github PK

View Code? Open in Web Editor NEW
562.0 5.0 26.0 58.3 MB

为漫画站增加双页阅读模式及优化使用体验。

Home Page: https://comic-read.pages.dev/

License: GNU Affero General Public License v3.0

HTML 0.19% JavaScript 48.43% TypeScript 47.81% CSS 3.57%
comics e-hentai manga userscripts

comicreadscript's Introduction

页面填充示例

Translation status

简介

这是一个因为目前大部分漫画站都不支持双页显示,所以每次遇到 漫画中的跨页大图被分割成两页 就很不爽的人为了有更好的漫画阅读体验而写的油猴脚本,为主流漫画站增加了双页阅读模式和各种优化体验的增强功能。

脚本会在网页右下角弹出用于 进入阅读模式 的悬浮按钮,其上的快捷按钮用于切换站点增强功能的开启与否。默认会开启自动进入阅读模式的功能,也可在这里关闭。脚本没有全局设置,所有修改都只会在当前站点生效保存。反正平时也就只上那几个站点。

对于支持站点以外的网站,脚本也提供了「简易阅读模式」,除了得手动跳转上/下一话外,和支持站点的使用体验没有区别。

如果喜欢这种阅读模式,也想用来看本地漫画的话,欢迎使用「ComicRead PWA」,只要打开网页拖入本地漫画即可获得完全一致的体验

对你有帮助的话就点个⭐Star吧

安装

  1. 首先需要在浏览器上装好 ViolentmonkeyTampermonkey 之类的油猴扩展
  2. 然后通过 GreasyFork 安装脚本:点我

快捷键

操作 快捷键
翻页 滚轮 空格 wasd 方向键 ,. PageUp/PageDown
进入缩放模式 鼠标双击 Alt + 滚轮
跳到漫画首尾 Home / End
切换页面填充 / m z 鼠标中键
退出阅读模式 Esc
进入阅读模式 v

可在设置中修改

页面填充

省流:当跨页大图没有正确合并显示时,切换一下页面填充的开启状态即可

这个功能会在图片流中增加或删除空白页,以便在双页模式下调节图片左右页位置。

如果你在用双页模式阅读漫画时完全没有违和感,也不追求漫画左右页位置正确,那不需要了解也完全没事。反倒是在了解后可能会因为意识到违和感的存在,并在阅读少部分漫画时因为不管怎么调整都觉得不对而浑身难受。

但如果你追求接近翻阅实体书的体验,并且不是强迫症敏感体质,那还是非常推荐了解一下《如何判断漫画左右页位置是否正确?

卷轴模式

针对条漫,脚本设置了卷轴模式来阅读,在卷轴模式下可以通过缩放功能 Alt + 滚轮 来调节图片缩放。

脚本会自动通过图片的长宽比来识别当前漫画是否是条漫,并自动开启卷轴模式。但如果汉化组将条漫分割得太多太细的话就只能手动切换了。

在卷轴模式下可以使用向上翻页/向下翻页的快捷键进行类似空格PageUp/PageDown的滚动,只是滚动距离会更短。

原生用于滚动的按键在卷轴模式下不会触发快捷键,例如↑↓←→方向键、空格键等

简易阅读模式

通过油猴扩展菜单里脚本下的「使用简易阅读模式」菜单项开启。

用于在支持站点以外的网站阅读漫画。开启后,将把当前网页中显示的所有宽高均大于 500 像素的图片作为图源加载,并且会自动触发图片的懒加载,不需要手动滚动页面来加载图片

如果站点本身不需要翻页,能够在一个页面内显示所有漫画图片一屏到底的话,可以直接使用「简易阅读模式」阅读。

如果需要翻页的话,可以安装:

  1. 能够自动识别大部分网页的「东方永页机」(注意不能启用 contentVisibility 功能)
  2. 手动支持了超多图站、漫画网站的「圖片全載
  3. 等其他带有自动翻页、聚图功能的脚本

用其他脚本将多页图片聚合到一起作为图源。期间不需要手动操作,脚本会自动触发翻页脚本加载至最后一页。

默认会开启「记住当前站点」功能,在之后再次打开站点时自动使用「简易阅读模式」,可通过右下角悬浮按钮上的快捷按钮关闭

为防止在漫画页外的其他页面——比如首页、介绍页——自动进入阅读模式,脚本会记录漫画页的部分网页特征,之后只有在匹配到特征时才会自动使用「简易阅读模式」。所以在网站改版、更换自动翻页脚本后,就可能因识别不到特征而没有自动使用「简易阅读模式」,这时候只要重新手动开启下就行了。

翻译

manga-image-translator」是一个实现了自动翻译并嵌字的项目,本身开源并且有 docker 可以很方便的部署到本地,同时也有即开即用的在线演示站「Cotrans」可供试用。

为方便啃生肉,脚本通过调用其接口实现了一键汉化,并且同时支持本地部署的版本和 Cotrans。在设置中选择好翻译服务器后,就能通过侧边栏中的翻译按钮开启/关闭当前显示页图片的汉化。

但是!Cotrans 是由维护者用爱发电自费维护的,多人同时使用时需要排队等待,等待队列达到上限后再上传新图片会报错,需要过段时间再试,所以还请大家 注意用量

也正因如此,更推荐大家使用本地部署的项目,不抢服务器资源也不需要排队。一键翻译全部图片的功能开关只会在使用本地版时可用,脚本的维护重心也是本地版,无法保证 Cotrans 相关 bug 的修复。具体部署方法可参考 我的笔记

脚本默认本地服务器的 url 是 http://127.0.0.1:5003,如果你点开这个链接后没见到 manga-image-translator,就得在自定义服务器 URL设置项中输入正确的 url,否则翻译服务的菜单项将始终为空。

Cotrans 也有自己的油猴脚本 —— 「Cotrans 漫画/图片翻译器」,支持 Pixiv、Twitter、Misskey、Calckey,欢迎有相关需求的人安装。

翻译功能示例

如果需要翻译本地漫画,可以使用「ComicRead PWA

支持网站

部分网站除阅读模式外,还添加了一些增强功能,具体可点击跳转查看详情

百合会

虽然可能没多少人会用上,但脚本也支持移动版

除了右下角的悬浮按钮外,将鼠标移动到帖子一楼的顶端也能看到一个新增的「漫画阅读」按钮

百合会入口

记录阅读进度

这个功能是用来快速回到帖子上次阅读进度的。开启后,每个帖子后面都会跟着一个跳转至上次阅读位置的TAG,点击即可跳转至上次阅读进度(阅读进度不仅包括了页数也包括了楼层数),后面跟着的数字是上次阅读后新增的回复数。

百合会记录阅读进度功能

关闭快捷导航的跳转

顶部导航条的快捷导航可以方便地在各个板块之间跳转,但默认情况下只能通过鼠标悬浮的方式显示其板块菜单,直接点击的话会跳转至论坛主页,这在平板上很不方便,所以有了这个功能。功能很简单,就是关掉快捷导航的点击跳转,只保留悬浮显示菜单的功能。

固定导航条

快捷导航的跳转是很方便,但每次跳转都要把网页滚到顶部去就有点麻烦了。开启这个功能可以将顶部的导航条固定住,不管怎么滚动都始终保持在页面顶部。

修正点击页数时的跳转判定

明明在板块顶部有个“新窗”的选项来选择帖子的默认打开位置,但即使勾上了新窗,通过点击帖子后面的页数打开的页面还是会在当前页打开。开启这个功能可以补上这个缺漏。

ehentai

ehentai例图

除悬浮按钮外,也会在右侧边栏会增加一个「Load comic」按钮,功能和悬浮按钮一样。

关联 nhentai

根据漫画标题关联匹配 nhentai 的本子,结果会以标签的形式显示在标签栏中,标签内容为 nhentai 上的漫画 ID ,鼠标悬停在标签上可以看到漫画标题。

点击标签后,标签菜单有两个选项:

  1. Jump to nhentai:跳转至对应的 nhentai 网页
  2. Load comic:直接加载使用 nhentai 的图源。相比 ehentai,nhentai 的资源加载更快,而且不会消耗配额

也可以直接右键标签点击「在新标签页中打开」跳至 nhentai。

不过目前因为 nhentai 加了 CloudFlare 的反爬风控,所以大部分情况下该功能会直接失败,需要手动进入一次 nhentai 页面刷新一下缓存才行。体感缓存很快就会失效,但目前也找不到什么好办法

快捷键翻页

在漫画列表页和详情页增加通过左右方向键翻页的功能。

nhentai

除悬浮按钮外,也会在右侧边栏会增加一个「Load comic」按钮,功能和悬浮按钮一样。

彻底屏蔽漫画

nhentai 的屏蔽机制是在被屏蔽漫画封面加上一层半透明遮罩,所以对于那些屏蔽范围比较大的人来说,在首页或搜索结果里连续翻上几页都是满屏的被屏蔽漫画完全是家常便饭。开启此功能后,被屏蔽漫画将被彻底屏蔽,不会再出现在首页或搜索结果里了。

开启此功能后可能出现一整页的漫画都被屏蔽的情况,为此有了自动翻页功能

自动翻页

当网页滚动至底部时将自动在底部加载下一页的内容,加载时底部会有加载条表示正在加载,当加载条停止时表示已到最后页。

如果同时开启了「彻底屏蔽漫画」功能,将自动跳过没有结果的页面。

识别广告

简单识别下广告页并自动排除,只会在有extraneous ads(外部广告)标签时生效。如果你有用 Hath Perks 购买了 More Thumbs(更多缩略图) 的话,可以通过调大缩略图行数来略微加快一点识别速度。

如有误杀还请先反馈,然后可以先在右下角的悬浮按钮菜单里关闭该功能,等脚本更新修复后再开启。

i18n

为了方便中文圈外的用户使用,脚本借助 Weblate 实现了多语言的翻译。欢迎好心人通过 Weblate 提供新语言翻译或帮忙改进现有翻译质量。

同时非常感谢以下已经为脚本提供了翻译的贡献者

翻译状态 翻译状态

comicreadscript's People

Contributors

anettkaac avatar bgenia avatar comradekingu avatar energostalin avatar hiyochi avatar hymbz avatar pengdingkang avatar weblate avatar xfoxfu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

comicreadscript's Issues

放大功能异常以及漫画柜的异常

浏览器: 火狐最新版 76.0.1 (64 位)
脚本扩展: tampermonkey
异常网站: dmzj (http://manhua.dmzj.com/wulimofashimaxiu/100205.shtml ) 随便哪个漫画都行
异常的功能: 放大
具体异常: 加载完成进入观看之后, 双击图片任意部分都可以打开放大功能,但是放大出来的有问题, 放大框里显示出来的不是虚线方框指向的图片部分, 基本上是黑色, 左右移动的话能调整到放大框显示出图片的一部分,但是也不是放大的,而是跟图片某个部分完全一样大小的.

异常网站: manhuagui , 随便哪个漫画
异常功能: 加载进入观看时, 加载时没问题.但是加载完成后,一定是加载所有图片完成之后,偶尔出现图片卡在该话的最后一个图片.并且本应该出现的观看模式也没了.(就是没开脚本进去的那样子), 观看模式没了也没办法上下滚动或者点击或右击 . 如果用键盘的方向键上下按一下的又重新显示观看模式.

两个问题都是从之前好几个版本就一直如此.一直忘了来反馈.ε=(´ο`*)))

呃,请问一下现在脚本是怎么用?

忘了怎么安装上的脚本了,总之现在的脚本怎么用有点懵,点开 DMZJScript 然后点.js进去直接点RAW把内容都复制到暴力猴里面新建脚本提示出错。请问一下现在是怎么用....?

nhentai.net的loadcomic失效

点击loadcomic。图片无法加载。控制台打印
https://i.nhentai.net/galleries/1658890/4.undefined
推测是图片类型获取失败。
gallery.images.pages 没有 t 字段的样子。
我改成
1592 const fileType = {
jpg: 'jpg',
png: 'png',
gif: 'gif',
};
1619 const src = https://i.nhentai.net/galleries/${gallery.media_id}/${i + 1}.${fileType[gallery.images.pages[i].extension]};
就能顺利运行

卷轴模式下使用空格会直接跳到下一话

但是我还没看完呢😂,并且连按两下上键就跳到上一话对我这种经常上下微调的人来说就难受了,请问开发者能做成上下键就在本话微调,左右键跳到上一话和下一话,空格键翻页这种模式吗?

能否加入图片不缩放选项?

有的漫画图片本身足够清晰,但是在双页阅读模式中,被缩放之后,常规ppi显示器上显示反而会变得模糊
例如800高的图片被拉伸到1080高,1200高的图片被拉伸到1440高
希望可以增加“不缩放”选项,不论浏览器窗口是否大于图片尺寸,均不对图片进行缩放,让图片以原尺寸显示

copymanga支持

dmzj开了个屏蔽日本IP的海外站,目前虽然可以用简易模式,但加载图片不全。有没有机会优化支持?

dmzj1的下一章跟上一章按钮不存在? 我又来了_(:з」∠)_

#36
还是跟上次的一样,域名改成了DMZJ1.COM....
为什么还来汇报这个呢?
因为dmzj.com 的域名直接403了. 带个1的反而还活着.大佬是不是考虑一下下? (。﹏。)

另外dmzj1.com还有个问题, 读页会有异常, 只显示几页然后就是 读取中的那个图片 在跳, 不过点了END退出脚本的漫画框模式之后.发现 网页上的全图都在.没有问题.

外加....现在dmzj.com的总是会出现 IP LIMIT导致打不开.测试了一下dmzj1.com反而不会.也是搞不清楚大妈之家在干嘛.

空格键翻页问题

最新版本按下空格键后是翻到上一页,因为一直按空格看所以很不习惯,希望改成翻到下一页...

功能请求:记忆用户在侧边栏选项的选择

感谢您抽空制作的脚本,看五等分的新娘十分好用。

能否在脚本中记忆用户设置的选择呢?即每次是否启用页面填充/双页模式都继承自上一次的选择,这样用户就不需要每次打开漫画都设置一次。

Chrome Version 71.0.3578.98 (Official Build) (64-bit)
Tampermonkey 4.7.54
Windows 10 1803

全局脚本会影响某些网站功能(last.fm)

要重现首先得有个last.fm的账号并且有播放记录。所以不知道作者是否方便。

然后,在个人主页对任何歌曲点“喜欢”(心),会发送一个XHR请求 POST "https://www.last.fm/user/[你的用户名]/loved"。但是开启此脚本之后,这个请求会失效的感觉(虽然无报错),导致无法标记喜欢成功。

不知道是不是作者的实现方式的关系,其实这不是我碰到的第一个和Ajax有关的bug了,感觉在YouTube也有冲突(会导致字幕(CC)按钮失效),但是那个我还没有仔细验证。

卷軸模式仍會觸發翻頁模式的下一話

今日在copymanga卷軸模式下,仍然按space或pagedown等翻頁動作數次後會直接跳下一話。
剛剛反覆測試翻頁和卷軸後,發現是因為,即使在卷軸模式下仍會觸發翻頁模式的閱讀進度,造成卷軸在往下跳,實際上會觸發翻頁的最後出現的[上一話 ENd 下一話]
EX:雙頁有8頁,在末頁翻頁後會出現[上一話 ENd 下一話],然後翻頁按鍵pagedown,space,→ 就會執行下一話,而如果在卷軸模式下一樣會執行此項操作,造成還沒看完就跳下一話

令請教,更改哪裡可以設定最大圖片上限呢?
https://copymanga.org/comic/buxingzhiyedexingyun
卷軸下原圖有點大,想要限制最大顯示寬度

loveheaven的图片地址问题

现在提取的data-src是源地址base64字符串,会导致漫画模式无法加载图片
src应是源地址,您看下是否应该更改

dmzj 切换章节方向错误

dmzj在非卷轴模式下到最后一页后,如果点击方向下键或者方向右键,会跳转到上一章节而不是下一章节;内页中按方向左键无论是否第一页,都会提示跳转到上一章节。

nhentai上将脚本运用在单行本上效果不好

目前发现脚本在nhentai上加载页数较多的单行本每次只能加载40页左右,刷新后才能继续加载,且在一百多页时无法继续加载。还有nhentai上阅读页数较多的漫画,右边会显示大量选页圆点,影响阅读体验

e-hentai UI溢出

image

https://e-hentai.org/g/1342223/d2617cd9f5/

另外,那个”ehentai、nhentai 加载过程中可以点击按钮,不等待全部图片加载完毕就直接进入阅读模式。“的功能能否也支持下exhentai?我这里测试e-hentai有效,但是exhentai无效。 e-hentai也经常失效……

多谢了

从 ehentai 调用nhentai 完全加载后无法进入阅读模式

环境:Win10+Chrome 75+Tampermonkey 4.8.41

  1. 打开任意ehentai画廊,例如 https://e-hentai.org/g/1271496/19ce3455ed/
  2. 找到下方的nhentai编码,点击,然后之后点下面出现的“Load comic”
  3. 等待load完成,点read

应该发生:进入阅读模式
实际发生:点击read无反应,控制台无报错。

其他补充:奇怪的是,在仍在加载时反而可以正常进入阅读模式,但是load完了则不行。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.