思源笔记怎么批量调整图片大小

在网上复制了多张大小不一的图片,插入思源笔记后,怎么批量调整图片为统一尺寸

  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    25118 引用 • 103555 回帖 • 1 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • langxin

    同问。或者文章内统一大小。

  • penpen
    该回帖仅作者和楼主可见
  • syuer9528

    +1, MARK.

  • xnyshu via macOS

    并且可以非批量单张图片可改大小。

  • GodJie

    同问,一个个点拉到一样大小太累了

  • emlamp via macOS

    还需要有压缩啊啊啊,Mac 电脑复制到笔记中的文件统统都是 png 格式的,文件很大 😳 ,希望能统一调整图片大小的同时再压缩一下 😄

    1 回复
  • 批量调整还没有办法,但可以设置一个默认的高度:

    .protyle-wysiwyg [data-node-id] .img:not([style]) img:not([style~="height:"]):not([style~="width:"]) { height: 200px; }
    1 回复
  • xnyshu via macOS

    这是统一高度,还是设置限高?

    1 回复
  • 给没有设置宽度或高度的图片设置一个默认的高度

    1 回复
  • coco2

    +1

  • MisakaImouto

    我之前也有这个需求,写了个中键单击图片自动缩放的代码片段。不过不能调整像素,只能调整宽度百分比,把开头的 "10%" 调成自己需要的。只能说提升缩放的效率,但是还是一个一个图片中键点击才行。

    document.body.addEventListener('mousedown', function (event) { if (event.button != 1) return; // 图片宽度,百分比。 let targetImageWidthValue = "10%"; let clickElement = event.target; // 检查点击的元素是否是图片 if (!clickElement.matches('.protyle-wysiwyg div[data-node-id] span.img[data-type="img"] img')) { return; } let imageSpanElement = clickElement.parentElement.parentElement; // 判断是否设置过宽度,设置过就不能覆盖 if (imageSpanElement.style.width) { //return; } // 如果图片在表格中,也不进行设置 if (imageSpanElement.parentElement.tagName.toLowerCase() === "td") { return; } let layoutTabContainerElement = clickElement.parentElement; // 循环查找当前点击的文档元素 while (layoutTabContainerElement) { if (layoutTabContainerElement.tagName.toLowerCase() === 'div' && layoutTabContainerElement.classList.contains('protyle') && layoutTabContainerElement.classList.contains('fn__flex-1')) { break; } layoutTabContainerElement = layoutTabContainerElement.parentNode; } // 默认只读模式 let isReadonly = true; if (layoutTabContainerElement) { let readonlyButton = layoutTabContainerElement.querySelector('[data-type="readonly"]'); if (readonlyButton) { isReadonly = readonlyButton.querySelector("use").getAttribute("xlink:href") !== "#iconUnlock"; } } if (isReadonly) { console.log("点击自动设置图片宽度失败!当前是只读模式。图片地址:" + clickElement.src); return; } // 创建一个鼠标右键点击事件 let contextMenuEvent = new MouseEvent('contextmenu', { bubbles: true, cancelable: true, view: window }); // 模拟触发右键点击事件 clickElement.dispatchEvent(contextMenuEvent); let menuLabelNodes = document.getElementById("commonMenu").querySelectorAll(".b3-menu__label"); let widthMenuButtonElement = null; for (let i = 0; i < menuLabelNodes.length; i++) { let currentNode = menuLabelNodes[i]; // 检查文本内容是否包含 "宽度" if (currentNode.nodeType === 1 && currentNode.textContent === "宽度") { widthMenuButtonElement = currentNode.parentElement; break; } } if (!widthMenuButtonElement) { return; } // 选中“宽度”菜单项 widthMenuButtonElement.classList.add("b3-menu__item--show", "b3-menu__item--current"); const defaultWidths = ["25%", "33%", "50%", "67%", "75%"]; if (defaultWidths.includes(targetImageWidthValue)) { let subMenuLabelNodes = widthMenuButtonElement.querySelectorAll(".b3-menu__label"); let subMenuButtonElement = null; for (let i = 0; i < subMenuLabelNodes.length; i++) { let currentNode = subMenuLabelNodes[i]; if (currentNode.nodeType === 1 && currentNode.textContent === targetImageWidthValue) { subMenuButtonElement = currentNode.parentElement; break; } } if (!subMenuButtonElement) { return; } subMenuButtonElement.click(); } else { const widthCustomButtonElement = widthMenuButtonElement.querySelectorAll('button .b3-menu__item.b3-menu__item--readonly.b3-menu__item--custom')[1]; if (!widthCustomButtonElement) { return; } const rangeElement = widthCustomButtonElement.querySelector("input"); rangeElement.value = targetImageWidthValue.replace("%", ""); // 触发 input 事件,会修改图片样式 let inputEvent = new Event('input', { bubbles: true }); rangeElement.dispatchEvent(inputEvent); // 触发 change 事件,会调用接口刷新 let changeEvent = new Event('change', { bubbles: true }); rangeElement.dispatchEvent(changeEvent); } console.log("点击自动设置图片宽度成功!图片地址:" + clickElement.src); });
    1 回复
  • openAI 1 评论 via Android

    把 10% 改成 100px 这样,不行吗?

    不行,百分比的控件和像素的控件不是同一个,不过可以在这个基础上改动。
    MisakaImouto
  • xnyshu via macOS

    如果要设置一个最大高度,应该怎样改代码?这个代码会不等比缩放图片。

    1 回复
  • 为什么会需要最大高度呢?默认高度不是更灵活吗?

    这个代码会不等比缩放图片

    我这里不知道怎么复现

    2 回复
  • xnyshu via macOS
    /* 图片最大显示高度 */ .protyle-wysiwyg [data-node-id] .img:not([style]) img:not([style~="height:"]):not([style~="width:"]) { max-height: 666px; height: auto; width: auto; }
  • xnyshu via macOS

    有的图片超出了屏幕高度,所以需要限高。

    1 回复
  • 前面是设置默认高度为 200px,后面是限制最大高度为窗口高度的 90%:

    /* 编辑器图片设置默认高度、限制最大高度 CSS片段 */ .protyle-wysiwyg [data-node-id] .img:not([style]) img:not([style~="height:"]):not([style~="width:"]) { height: 200px; } .protyle-wysiwyg [data-node-id] .img img { max-height: 90vh; max-width: min-content; /* 保证长宽比例 */ }
  • jiangliaofeng via macOS
    作者

    还是希望能出个插件什么的,能批量或者能多选图片批量调整

  • 7803 1 赞同

    确实应该增加这个功能

  • syuer9528

    压缩选项应当做成可选,毕竟有大量用户使用的笔记中的图是需要保持原样的,特别是在数字创意等领域工作的人,他们的图片是不能草率压缩的。

    如果对批量压缩有需求,我想到的一个方法,是不是可以对 ASSET 目录中的附件通过外部程序进行批量压缩,例如脚本或各类小工具。

  • jiangliaofeng 1 评论 via macOS
    作者

    思源笔记的这个社区,能不能设置个微信群,请几位大神,这样才能推动笔记的发展呀。

    1 回复
    论坛社区和 QQ 群各有所长吧,QQ 群人多了消息容易过载。
    emlamp
  • QQ 群大概有几千人

    1 回复
  • jiangliaofeng via macOS
    作者

    有没有群号啊,我加下

    1 回复
  • 三群是 538155062

    1 回复
  • jiangliaofeng via macOS
    作者

    多谢呀

请输入回帖内容 ...

推荐标签 标签

  • Ubuntu

    Ubuntu(友帮拓、优般图、乌班图)是一个以桌面应用为主的 Linux 操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu”一词,意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观,类似华人社会的“仁爱”思想。Ubuntu 的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。

    127 引用 • 169 回帖
  • Dubbo

    Dubbo 是一个分布式服务框架,致力于提供高性能和透明化的 RPC 远程服务调用方案,是 [阿里巴巴] SOA 服务化治理方案的核心框架,每天为 2,000+ 个服务提供 3,000,000,000+ 次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。

    60 引用 • 82 回帖 • 608 关注
  • Google

    Google(Google Inc.,NASDAQ:GOOG)是一家美国上市公司(公有股份公司),于 1998 年 9 月 7 日以私有股份公司的形式创立,设计并管理一个互联网搜索引擎。Google 公司的总部称作“Googleplex”,它位于加利福尼亚山景城。Google 目前被公认为是全球规模最大的搜索引擎,它提供了简单易用的免费服务。不作恶(Don't be evil)是谷歌公司的一项非正式的公司口号。

    49 引用 • 192 回帖 • 2 关注
  • Tomcat

    Tomcat 最早是由 Sun Microsystems 开发的一个 Servlet 容器,在 1999 年被捐献给 ASF(Apache Software Foundation),隶属于 Jakarta 项目,现在已经独立为一个顶级项目。Tomcat 主要实现了 JavaEE 中的 Servlet、JSP 规范,同时也提供 HTTP 服务,是市场上非常流行的 Java Web 容器。

    162 引用 • 529 回帖 • 4 关注
  • Kotlin

    Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,由 JetBrains 设计开发并开源。Kotlin 可以编译成 Java 字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。在 Google I/O 2017 中,Google 宣布 Kotlin 成为 Android 官方开发语言。

    19 引用 • 33 回帖 • 79 关注
  • Vditor

    Vditor 是一款浏览器端的 Markdown 编辑器,支持所见即所得、即时渲染(类似 Typora)和分屏预览模式。它使用 TypeScript 实现,支持原生 JavaScript、Vue、React 和 Angular。

    367 引用 • 1842 回帖
  • DevOps

    DevOps(Development 和 Operations 的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。

    57 引用 • 25 回帖 • 2 关注
  • 面试

    面试造航母,上班拧螺丝。多面试,少加班。

    325 引用 • 1395 回帖
  • Oracle

    Oracle(甲骨文)公司,全称甲骨文股份有限公司(甲骨文软件系统有限公司),是全球最大的企业级软件公司,总部位于美国加利福尼亚州的红木滩。1989 年正式进入中国市场。2013 年,甲骨文已超越 IBM,成为继 Microsoft 后全球第二大软件公司。

    107 引用 • 127 回帖 • 343 关注
  • OpenCV
    15 引用 • 36 回帖 • 1 关注
  • RabbitMQ

    RabbitMQ 是一个开源的 AMQP 实现,服务器端用 Erlang 语言编写,支持多种语言客户端,如:Python、Ruby、.NET、Java、C、PHP、ActionScript 等。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。

    49 引用 • 60 回帖 • 341 关注
  • 支付宝

    支付宝是全球领先的独立第三方支付平台,致力于为广大用户提供安全快速的电子支付/网上支付/安全支付/手机支付体验,及转账收款/水电煤缴费/信用卡还款/AA 收款等生活服务应用。

    29 引用 • 347 回帖
  • V2Ray
    1 引用 • 15 回帖
  • SpaceVim

    SpaceVim 是一个社区驱动的模块化 vim/neovim 配置集合,以模块的方式组织管理插件以
    及相关配置,为不同的语言开发量身定制了相关的开发模块,该模块提供代码自动补全,
    语法检查、格式化、调试、REPL 等特性。用户仅需载入相关语言的模块即可得到一个开箱
    即用的 Vim-IDE。

    3 引用 • 31 回帖 • 119 关注
  • C++

    C++ 是在 C 语言的基础上开发的一种通用编程语言,应用广泛。C++ 支持多种编程范式,面向对象编程、泛型编程和过程化编程。

    107 引用 • 153 回帖 • 3 关注
  • Angular

    AngularAngularJS 的新版本。

    26 引用 • 66 回帖 • 545 关注
  • Love2D

    Love2D 是一个开源的, 跨平台的 2D 游戏引擎。使用纯 Lua 脚本来进行游戏开发。目前支持的平台有 Windows, Mac OS X, Linux, Android 和 iOS。

    14 引用 • 53 回帖 • 554 关注
  • Flume

    Flume 是一套分布式的、可靠的,可用于有效地收集、聚合和搬运大量日志数据的服务架构。

    9 引用 • 6 回帖 • 653 关注
  • Unity

    Unity 是由 Unity Technologies 开发的一个让开发者可以轻松创建诸如 2D、3D 多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。

    25 引用 • 7 回帖 • 133 关注
  • 小说

    小说是以刻画人物形象为中心,通过完整的故事情节和环境描写来反映社会生活的文学体裁。

    31 引用 • 108 回帖 • 1 关注
  • 生活

    生活是指人类生存过程中的各项活动的总和,范畴较广,一般指为幸福的意义而存在。生活实际上是对人生的一种诠释。生活包括人类在社会中与自己息息相关的日常活动和心理影射。

    230 引用 • 1454 回帖
  • Rust

    Rust 是一门赋予每个人构建可靠且高效软件能力的语言。Rust 由 Mozilla 开发,最早发布于 2014 年 9 月。

    58 引用 • 22 回帖 • 10 关注
  • 互联网

    互联网(Internet),又称网际网络,或音译因特网、英特网。互联网始于 1969 年美国的阿帕网,是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一巨大国际网络。

    99 引用 • 367 回帖 • 1 关注
  • 招聘

    哪里都缺人,哪里都不缺人。

    189 引用 • 1057 回帖 • 1 关注
  • wolai

    我来 wolai:不仅仅是未来的云端笔记!

    2 引用 • 14 回帖 • 2 关注
  • 大数据

    大数据(big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。

    93 引用 • 113 回帖
  • Logseq

    Logseq 是一个隐私优先、开源的知识库工具。

    Logseq is a joyful, open-source outliner that works on top of local plain-text Markdown and Org-mode files. Use it to write, organize and share your thoughts, keep your to-do list, and build your own digital garden.

    7 引用 • 69 回帖