在MacBook上实现免费的PDF文件编辑
之前我想对PDF文件进行简单处理(比如删页面、添空白页、调整页面顺序),要么是开wps会员【花钱贵】,下载(盗版)Adobe Acrobat【macOS不好下载】,要么用福昕阅览器登陆学生账号(学校买过正版的话)。
今天看CVPR模版的时候,发现官方很贴心地给了免费调整PDF文件的方法,如图是Mac官方文档。

原来MacOS自带的“预览器”可以实现PDF文件的删页面、添加空白页、调整页面顺序以及!将PDF页面移动到另一个PDF中,所以相当于也能实现PDF的合并功能!

具体操作很简单,打开左侧的缩略图中,用键盘的删除键进行页面删除,用鼠标拖动进行页面移动,点击左下角的小加号进行页面添加。


最后,我感觉美中不足的就是不支持修改PDF内容了。
至于Windows上如何修改PDF,可以下载Adobe Acrobat进行处理,其实还有一种我从未设想过的“黑科技”——用命令行(command line)实现PDF的页面处理,丢个链接在这里,之后研究研究:
https://superuser.com/questions/517986/is-it-possible-to-delete-some-pages-of-a-pdf-document
相关文章:
在MacBook上实现免费的PDF文件编辑
之前我想对PDF文件进行简单处理(比如删页面、添空白页、调整页面顺序),要么是开wps会员【花钱贵】,下载(盗版)Adobe Acrobat【macOS不好下载】,要么用福昕阅览器登陆学生账号(学校买…...
QT第2课-GUI程序实例分析
GUI程序开发概述 不同的操作系统GUI开发原理相同不同的操作系统GUI SDK 不同 GUI 程序开发原理 GUI程序在运行时会创建一个消息队列系统内核将用户的键盘鼠标操作翻译成对应的程序消息程序在运行过程中需要实时处理队列中的消息当队列中没有消息时,程序将处于停滞…...
Android修行手册 - POI操作Excel常用样式(字体,背景,颜色,Style)
点击跳转>Unity3D特效百例点击跳转>案例项目实战源码点击跳转>游戏脚本-辅助自动化点击跳转>Android控件全解手册点击跳转>Scratch编程案例点击跳转>软考全系列 👉关于作者 专注于Android/Unity和各种游戏开发技巧,以及各种资源分享&…...
Sprint Boot 学习路线 5
Spring MVC Spring MVC是Spring框架的一部分,是一个Web应用程序框架。它旨在使用Model-View-Controller(MVC)设计模式轻松构建Web应用程序。 在Spring MVC中,应用程序被分为三个主要组件:Model、View和Controller。M…...
git02->gui图形化界面使用,ssh协议,idea集成GIT
gui图形化界面使用ssh协议idea集成GIT 1.gui图形化界面使用 2.ssh协议 git/github生成密钥并通过 操作分为本地电脑配置和github网站配置 第一步:本地电脑配置 右键空白处,选择Git Bash Here打开相关命令窗口 1.配置用户名和邮箱(如果已经配…...
面向对象 元类 gil log 协程 垃圾回收 描述符 property
封装、继承、多态 当谈到封装、继承和多态时,通常是在面向对象编程 (OOP) 的上下文中讨论的。 封装 (Encapsulation) 示例: class Person: def __init__(self, name, age): self.__name = name # 使用双下划线前缀将属性变为私有 self.__age = age de…...
bibitem格式 添加参考文献
这次写论文时遇到一种bibitem格式的参考文献,latex中没有bib文件 分三步走 找到这篇文章的Bib Tex的引用,然后新建bib文件,命名为下图: 然后把Bib Tex引用的内容复制到上图的文件中,新建tex文件 内容为 \document…...
Leetcode 2934. Minimum Operations to Maximize Last Elements in Arrays
Leetcode 2934. Minimum Operations to Maximize Last Elements in Arrays 1. 解题思路2. 代码实现 题目链接:2934. Minimum Operations to Maximize Last Elements in Arrays 1. 解题思路 这一题思路上其实很简单,直接分情况考察一下最后一个元素交换…...
02:2440---时钟体系
目录 一:时钟控制 1:基本概念 2:时钟结构图 3:结构图分析 4:总线 5:寄存器 A:FCLK--MPLLCON B:HCLK和PCLK--CLKDIVN C:注意 二:上电复位 1:上电复位 2:时钟选择 三:代码 一:时钟控制 1:基本概念 S3C2440A中的时钟控制逻辑可以产生所需的时钟信号,包括C…...
SOEM源码解析——ecx_siiSM(读取SII的SM信息)
0 工具准备 1.SOEM-master-1.4.0源码1 ecx_siiSM函数总览 /** Get SM data from SII SM section in slave EEPROM.从SII的SM段获取SM信息* @param[in] context = context struct 句柄* @param[in] slave = slave number 从站序号* @param[out] SM = first SM str…...
【见缝插针】射击类游戏-微信小程序项目开发流程详解
还记得小时候玩过的见缝插针游戏吗,比一比看谁插得针比较多,可有趣了,当然了,通过它可以训练自己的手速反应,以及射击水平,把握时机,得分越高就越有成就感,相信小朋友们会喜欢它的&a…...
flutter开发实战-TweenSequence实现动画序列
flutter开发实战-TweenSequence实现动画序列 一、TweenSequence TweenSequence是允许创建一个Animation由一系列补间动画来确定值,每个TweenSequenceItem都有定义在动画的持续时间的权重确定动画间隔。 TweenSequence 动画组类TweenSequenceItem 用来定义每一个动…...
Flowable 外部表单
内置表单需要在每个节点中去配置,当如果多个节点使用同一套表单属性就要配置多次比较麻烦,修改的时候也要修改多次,外部表单可以定义一次,然后其它节点都去引用同一个表单属性。 外部表单需要定义一个.form后缀的文件。 外部表单…...
[mysql]索引优化-2
目录 一、分页查询优化1.根据自增且连续的主键排序的分页查询2.根据非主键字段排序的分页查询 二、Join关联查询优化1.嵌套循环连接 Nested-Loop Join(NLJ) 算法2.基于块的嵌套循环连接 Block Nested-Loop Join(BNL)算法 三、count(*)查询优化1.查询mysql自己维护的总行数2.sho…...
数据分析实战 | 泊松回归——航班数据分析
目录 一、数据及分析对象 二、目的及分析任务 三、方法及工具 四、数据读入 五、数据理解 六、数据准备 七、模型训练 八、模型评价 一、数据及分析对象 CSV文件:o-ring-erosion-only.csv 数据集链接:https://download.csdn.net/download/m0_7…...
Fliki AI:让视频创作更简单、更高效
在当今的数字时代,视频已经成为人们获取信息和娱乐的重要方式。无论是企业宣传、教育培训还是个人创作,视频都发挥着越来越重要的作用。然而,视频制作是一项复杂的工作,需要掌握一定的技能和经验。这对于初学者或没有专业视频制作…...
webGL编程指南 第五章 MultiTexture.html
我会持续更新关于wegl的编程指南中的代码。 当前的代码不会使用书中的缩写,每一步都是会展开写。希望能给后来学习的一些帮助 git代码地址 :空 上一章节中我们学习texParameteri的使用,这一章节中我们两个图片进行混合 <!DOCTYPE html> <htm…...
mysql8安装和驱动jar包下载
方式一:基于docker安装 下拉镜像 docker pull mysql:8.0.21 启动镜像 docker run -p 3307:3306 --name mysql -e MYSQL_ROOT_PASSWORDhadoop -d mysql:8.0.21 启动成功后,进入容器内部拷贝配置文件,到宿主主机 docker cp mysql:/etc/mysql…...
(SpringBoot)第五章:SpringBoot创建和使用
文章目录 一:Spring和SpringBoot(1)Spring已解决和未解决的问题(2)SpringBoot 二:Spring项目的创建(1)IDEA创建(2)网页端创建 三:项目目录介绍及运…...
Linux重定向
文章目录 1. 文件描述符分配规则2. 重定向接口dup2自定义shell重定向(补充) 3. 标准输出和标准错误4. 如何理解一切接文件 本章代码gitee地址:文件重定向 1. 文件描述符分配规则 文件描述符的分配规则是从0下标开始,寻址最小的没有使用的数组位置&#…...
(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)
题目:3442. 奇偶频次间的最大差值 I 思路 :哈希,时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况,哈希表这里用数组即可实现。 C版本: class Solution { public:int maxDifference(string s) {int a[26]…...
观成科技:隐蔽隧道工具Ligolo-ng加密流量分析
1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具,该工具基于TUN接口实现其功能,利用反向TCP/TLS连接建立一条隐蔽的通信信道,支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式,适应复杂网…...
基于服务器使用 apt 安装、配置 Nginx
🧾 一、查看可安装的 Nginx 版本 首先,你可以运行以下命令查看可用版本: apt-cache madison nginx-core输出示例: nginx-core | 1.18.0-6ubuntu14.6 | http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages ng…...
【大模型RAG】Docker 一键部署 Milvus 完整攻略
本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装;只需暴露 19530(gRPC)与 9091(HTTP/WebUI)两个端口,即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...
深入理解JavaScript设计模式之单例模式
目录 什么是单例模式为什么需要单例模式常见应用场景包括 单例模式实现透明单例模式实现不透明单例模式用代理实现单例模式javaScript中的单例模式使用命名空间使用闭包封装私有变量 惰性单例通用的惰性单例 结语 什么是单例模式 单例模式(Singleton Pattern&#…...
vue3 字体颜色设置的多种方式
在Vue 3中设置字体颜色可以通过多种方式实现,这取决于你是想在组件内部直接设置,还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法: 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用
1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...
Map相关知识
数据结构 二叉树 二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子 节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只 有左子节点,有的节点只有…...
C# 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
网站指纹识别
网站指纹识别 网站的最基本组成:服务器(操作系统)、中间件(web容器)、脚本语言、数据厍 为什么要了解这些?举个例子:发现了一个文件读取漏洞,我们需要读/etc/passwd,如…...
