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

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

  • 思源笔记

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

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

    24873 引用 • 102357 回帖

相关帖子

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • 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
    作者

    多谢呀

请输入回帖内容 ...

推荐标签 标签

  • Eclipse

    Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。

    76 引用 • 258 回帖 • 630 关注
  • InfluxDB

    InfluxDB 是一个开源的没有外部依赖的时间序列数据库。适用于记录度量,事件及实时分析。

    2 引用 • 88 关注
  • 旅游

    希望你我能在旅途中找到人生的下一站。

    93 引用 • 901 回帖
  • Shell

    Shell 脚本与 Windows/Dos 下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。但是它比 Windows 下的批处理更强大,比用其他编程程序编辑的程序效率更高,因为它使用了 Linux/Unix 下的命令。

    124 引用 • 74 回帖 • 1 关注
  • sts
    2 引用 • 2 回帖 • 224 关注
  • WordPress

    WordPress 是一个使用 PHP 语言开发的博客平台,用户可以在支持 PHP 和 MySQL 数据库的服务器上架设自己的博客。也可以把 WordPress 当作一个内容管理系统(CMS)来使用。WordPress 是一个免费的开源项目,在 GNU 通用公共许可证(GPLv2)下授权发布。

    66 引用 • 114 回帖 • 197 关注
  • 程序员

    程序员是从事程序开发、程序维护的专业人员。

    586 引用 • 3538 回帖
  • 外包

    有空闲时间是接外包好呢还是学习好呢?

    26 引用 • 233 回帖 • 2 关注
  • RIP

    愿逝者安息!

    8 引用 • 92 回帖 • 393 关注
  • 快应用

    快应用 是基于手机硬件平台的新型应用形态;标准是由主流手机厂商组成的快应用联盟联合制定;快应用标准的诞生将在研发接口、能力接入、开发者服务等层面建设标准平台;以平台化的生态模式对个人开发者和企业开发者全品类开放。

    15 引用 • 127 回帖
  • Caddy

    Caddy 是一款默认自动启用 HTTPS 的 HTTP/2 Web 服务器。

    12 引用 • 54 回帖 • 162 关注
  • JSON

    JSON (JavaScript Object Notation)是一种轻量级的数据交换格式。易于人类阅读和编写。同时也易于机器解析和生成。

    52 引用 • 190 回帖
  • 强迫症

    强迫症(OCD)属于焦虑障碍的一种类型,是一组以强迫思维和强迫行为为主要临床表现的神经精神疾病,其特点为有意识的强迫和反强迫并存,一些毫无意义、甚至违背自己意愿的想法或冲动反反复复侵入患者的日常生活。

    15 引用 • 161 回帖
  • Hexo

    Hexo 是一款快速、简洁且高效的博客框架,使用 Node.js 编写。

    22 引用 • 148 回帖 • 7 关注
  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    556 引用 • 675 回帖 • 1 关注
  • 开源中国

    开源中国是目前中国最大的开源技术社区。传播开源的理念,推广开源项目,为 IT 开发者提供了一个发现、使用、并交流开源技术的平台。目前开源中国社区已收录超过两万款开源软件。

    7 引用 • 86 回帖
  • 黑曜石

    黑曜石是一款强大的知识库工具,支持本地 Markdown 文件编辑,支持双向链接和关系图。

    A second brain, for you, forever.

    21 引用 • 204 回帖
  • etcd

    etcd 是一个分布式、高可用的 key-value 数据存储,专门用于在分布式系统中保存关键数据。

    6 引用 • 26 回帖 • 547 关注
  • 职场

    找到自己的位置,萌新烦恼少。

    127 引用 • 1708 回帖
  • 自由行
    1 关注
  • 禅道

    禅道是一款国产的开源项目管理软件,她的核心管理思想基于敏捷方法 scrum,内置了产品管理和项目管理,同时又根据国内研发现状补充了测试管理、计划管理、发布管理、文档管理、事务管理等功能,在一个软件中就可以将软件研发中的需求、任务、bug、用例、计划、发布等要素有序的跟踪管理起来,完整地覆盖了项目管理的核心流程。

    6 引用 • 15 回帖 • 32 关注
  • BAE

    百度应用引擎(Baidu App Engine)提供了 PHP、Java、Python 的执行环境,以及云存储、消息服务、云数据库等全面的云服务。它可以让开发者实现自动地部署和管理应用,并且提供动态扩容和负载均衡的运行环境,让开发者不用考虑高成本的运维工作,只需专注于业务逻辑,大大降低了开发者学习和迁移的成本。

    19 引用 • 75 回帖 • 662 关注
  • Swagger

    Swagger 是一款非常流行的 API 开发工具,它遵循 OpenAPI Specification(这是一种通用的、和编程语言无关的 API 描述规范)。Swagger 贯穿整个 API 生命周期,如 API 的设计、编写文档、测试和部署。

    26 引用 • 35 回帖 • 3 关注
  • Android

    Android 是一种以 Linux 为基础的开放源码操作系统,主要使用于便携设备。2005 年由 Google 收购注资,并拉拢多家制造商组成开放手机联盟开发改良,逐渐扩展到到平板电脑及其他领域上。

    335 引用 • 324 回帖
  • CAP

    CAP 指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。

    12 引用 • 5 回帖 • 639 关注
  • RESTful

    一种软件架构设计风格而不是标准,提供了一组设计原则和约束条件,主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。

    30 引用 • 114 回帖 • 7 关注
  • 区块链

    区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法 。

    92 引用 • 752 回帖 • 1 关注