PDF文档工具箱Stirling-PDF

在这里插入图片描述

什么是 Stirling-PDF ?

Stirling-PDF 是一个本地托管的 Web 应用程序,允许您对 PDF 文件执行各种操作,例如拆分和添加图像。

软件的功能特点:

  • PDF 拆分为指定页码的多个文件,或将所有页面提取为单个文件;
  • 将多个 PDF 合并为一个结果文件;
  • PDF 与图像相互转换;
  • PDF 页面重新组织成不同的顺序;
  • 在指定位置将图像添加到 PDF
  • 90 度为增量旋转 PDF
  • 压缩 PDF 以减小文件大小;
  • 深色模式支持;

按作者的说法,最特别之处在于,目前 Stirling-PDF 还是 100% 基于 ChatGPT 制作的应用程序,随着更多功能的添加,才会慢慢地远离 ChatGPT

作者计划在未来添加更多功能和修复程序,并将添加人们要求的任何内容。所以如果你有什么想法,可以去跟作者提,也许采纳了呢?

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 s-pdf ,选择第一个 frooodle/s-pdf,版本选择 latest

在这里插入图片描述

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
本地端口容器端口
80778080

在这里插入图片描述

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 运行容器
docker run -d \
   --restart unless-stopped \
   --name spdf \
   -p 8077:8080 \
   frooodle/s-pdf

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'

services:
  s-pdf:
    image: frooodle/s-pdf
    container_name: spdf
    restart: unless-stopped
    ports:
      - 8077:8080

然后执行下面的命令

# 新建文件夹 spdf
mkdir -p /volume2/docker/spdf

# 进入 spdf 目录
cd /volume2/docker/spdf

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:8077 就能看到主界面

老苏试了一下 Split PDFs,上传了一个 8 页的文档,按 4 页分割

在这里插入图片描述

Submit 之后,过一会儿会自动下载 split_documents.zip 文件,打开看得到被分割成了 2 个文件

如果要分割成每个文件 2页,可以输入 2,4,6

在这里插入图片描述

打开下载的 split_documents (1).zip

在这里插入图片描述

老苏把 4 个分割的 pdf 又测试了 Merge PDFs

在这里插入图片描述

拖拽比较方便,但是还需要调整好顺序

在这里插入图片描述

开始 Merge,完成之后会自动打开

在这里插入图片描述

有需要的可以自己装个试试

参考文档

Frooodle/Stirling-PDF: locally hosted web application that allows you to perform various operations on PDF files
地址:https://github.com/Frooodle/Stirling-PDF

frooodle/s-pdf - Docker 图像 | 泊坞枢纽
地址:https://hub.docker.com/r/frooodle/s-pdf

New Browser-based PDF Editor (github link) : selfhosted
地址:https://www.reddit.com/r/selfhosted/comments/10pexhn/new_browserbased_pdf_editor_github_link/

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
Stirling插值积分是一种数值积分方法,用于近似计算函数的积分值。在Matlab中,可以通过以下步骤实现Stirling插值积分: 1. 首先,定义需要积分的函数。假设我们要计算函数 f(x) 的积分,可以在Matlab中定义一个函数句柄,例如:f = @(x) x.^2; 2. 然后,确定积分区间的起始点 a 和终点 b,并指定插值节点的个数 n。 3. 接下来,根据Stirling插值公式计算插值节点的 x 值和对应的 f(x) 值。可以使用 linspace 函数生成等间距的插值节点,例如:x_nodes = linspace(a, b, n); 然后通过 f(x_nodes) 计算对应的 f(x) 值。 4. 利用Stirling插值公式计算积分近似值。Stirling插值积分公式如下: integral_value = h/6 * (f(a) + 4*sum(f(x_nodes(2:end-1))) + f(b)); 其中,h = (b-a)/(n-1) 是插值节点之间的间距。 5. 最后,输出近似的积分值 integral_value。 以下是一个完整的Matlab代码示例: ```matlab f = @(x) x.^2; % 定义需要积分的函数 a = 0; % 积分起始点 b = 1; % 积分终点 n = 5; % 插值节点个数 x_nodes = linspace(a, b, n); % 生成插值节点 f_values = f(x_nodes); % 计算插值节点对应的函数值 h = (b - a) / (n - 1); % 插值节点间距 integral_value = h / 6 * (f(a) + 4 * sum(f_values(2:end-1)) + f(b)); % Stirling插值积分公式 disp(integral_value); % 输出积分近似值 ``` 请注意,这只是Stirling插值积分的一种实现方式,具体的实现方法还可以根据需要进行调整和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨浦老苏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值