小知识:MAC上使用预览功能来减小PDF大小
工作中有些流程会用到PDF电子扫描件,当身边没有扫描设备时,通常会用手机拍照然后合成PDF。
有一个问题是:合成的PDF文件很大,甚至远大于照片本身大小。比如照片是4M的,合成的PDF文件就基本要30M的样子。
之前我尝试使用自带的功能,另存为时选择“Quartz滤镜”中的“缩小文件大小”选项,缩小的倍率很喜人,直接变成500KB左右的样子。但是照片里的文字变的很模糊,如果要求不高可以使用这种方式。
具体方法参考Apple的支持网站:
引用内容如下:
在 Mac 上的“预览”中压缩 PDF
若要节省储存空间,您可以在“预览”中压缩 PDF。【注】压缩后,PDF 质量可能低于其原始质量。
在 Mac 上的“预览” App 中,打开想要压缩的 PDF。
选取“文件”>“导出”。(不要选取“导出为 PDF”。)
点按“Quartz 滤镜”弹出式菜单,然后选取“减小文件大小”。
可是这个质量太差了,还不能调整清晰度,无法满足很多场景的需求。
继续网上搜索一番,除了付费的一些软件外,还有人提到可以使用预览来减小PDF大小,尝试将PDF文件预览打开,然后再另存为新的PDF文件,还是一样的大小,不过排版上更规范了,每一页都统一铺满了页面,比较舒适。
可大小这个问题究竟咋弄呢?
一时没好的方案,就尝试了下在线体验缩小PDF文件的,结果发现免费只提供较小的压缩率供体验清晰度,声称付费就可以提供清晰度一致但大小更小的文件。
而拿到这个免费的尺寸依然较大的文件,同样再用上面的两种方式处理,结果惊奇的发现:
- “Quartz滤镜”中的“缩小文件大小”选项,依然会变模糊;
- 将PDF文件预览打开,然后再另存为新的PDF文件,文件也变小了,而且肉眼可见的清晰度没啥变化,非常意外_
不过这着实是有些甩小聪明了,而且这种方法一是麻烦,二是很可能将来也就不再可用了,更希望的MAC原生支持的“压缩PDF”能达到这个肉眼可见没大差别的效果。
作为外行,不晓得这个技术的实现难度系数有多少?
小知识:MAC上使用预览功能来减小PDF大小的更多相关文章
- JavaScript实现本地图片上传预览功能(兼容IE、chrome、FF)
需要解决的问题有:本地图片如何在上传前预览.编辑:最近发现这个功能很多是基于flash实现的,很多JavaScript实现的代码兼容性都很差,特别是在IE和firefox和chrome三个浏览器上不兼 ...
- JQ实现图片上传预览功能
<input type="file" name="img" id="test1"> <img src="&quo ...
- js实现图片上传预览功能,使用base64编码来实现
实现图片上传的方法有很多,这里我们介绍比较简单的一种,使用base64对图片信息进行编码,然后直接将图片的base64信息存到数据库. 但是对于系统中需要上传的图片较多时并不建议采用这种方式,我们一般 ...
- React + js-xlsx构建Excel文件上传预览功能
首先要准备react开发环境以及js-xlsx插件 1. 此处省略安装react安装步骤 2.下载js-xlsx插件 yarn add xlsx 或者 npm install xlsx 在项目中引入 ...
- HTML+Jquery实现多图片上传预览功能
HTML:使用input的onchange事件,它一改变就触发事件 <p id="p3"> <input name="File" onchan ...
- 使用ajax,结合jquery,php实现图片上传预览功能
大致逻辑:点击页面的file,上传图片到指定的php处理图片的文件,处理完成以后,将图片的连接地址返回,JS控制返回的数据,然后将图片动态的展示出来html代码<label> <im ...
- js实现图片上传预览功能,使用base64编码来实现
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- jQuery插件ImgAreaSelect 实例讲解一(头像上传预览和裁剪功能)
上一节随笔中,我们已经知道了关于jQuery插件ImgAreaSelect基本的知识:那么现在看一下实例: 首先,要知道我们应该实现什么功能? (1)图片能够实现上传预览功能 (2)拖拽裁剪图片,使其 ...
- 分离与继承的思想实现图片上传后的预览功能:ImageUploadView
本文要介绍的是网页中常见的图片上传后直接在页面生成小图预览的实现思路,考虑到该功能有一定的适用性,于是把相关的逻辑封装成了一个ImageUploadView组件,实际使用效果可查看下一段的git效果图 ...
- 用原生JS实现多张图片上传及预览功能(兼容IE8)
最近需要做一个图片上传预览的功能(兼容IE8-11.chrome.firefox等浏览器),网上现有的文件上传组件(如webuploader)总是会遇到一些兼容性问题.于是我参考了一些博文(链接找不到 ...
随机推荐
- 关于 uintptr_t和intptr_t 类型
简介 最近在看代码时,发现了两个之前没见过的数据类型:intptr_t,uintptr_t.这两个数据类型是ISO C99定义的,具体代码在linux平台的/usr/include/stdint.h头 ...
- Vue第一篇 ES6的常用语法
01-变量的定义 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- Apache ShardingSphere 实现分库分表及读写分离
本文为博主原创,未经允许不得转载: 项目demo 源码地址:https://gitee.com/xiangbaxiang/apache-shardingjdbc 1. 创建Maven项目,并配置 po ...
- React报错之Property does not exist on type 'JSX.IntrinsicElements'
正文从这开始~ 总览 当组件名称以小写字母开头时,会导致"Property does not exist on type 'JSX.IntrinsicElements'"错误.为了 ...
- 使用Amber计算单点能三步走
技术背景 Amber是一个在分子动力学中非常常用的一个软件,可以用于进行分子动力学模拟计算,可以与一些软件配合进行增强采样.这里我们简单介绍一下如何使用Amber去计算一个分子构象的单点势能值,及其对 ...
- Manjaro Linux永久修改主机名
技术背景 Linux系统中默认的主机名可以通过hostname指令进行查询,一般默认的是一串的随机字符串: [dechin@dechin-20n2s01200 numba]$ hostname dec ...
- Latex常用数学符号输入方法
引用CSDN博文 https://blog.csdn.net/qq_25368751/article/details/87888974
- 00.Oracle 11g安装
通过Docker安装Oracle 1.搜索镜像 先使用指令搜素远程仓库中的Oracle镜像 sudo docker search docker-oracle-xe-11g 2.拉取镜像 选择一个sta ...
- Shell-获取终端输入-read
- 理解Asp.net MVC模式
MVC是模型(Model).视图(View).控制器(Controller)的缩写,它是Web应用程序中一种常用的架构模式.这种模式将应用程序大体上分为3层,即Model层.View层和Control ...