pdf - 将 LaTex PDF 从矢量转换为光栅
问题描述
在我与作弊的斗争中(我是一名教师),我想将我的 LaTex PDF 转换为图像,这样学生就无法剪切和粘贴文件。我目前正在使用 ImageMagick 来执行此操作:
转换-密度 300 mwe.pdf mwe_convert.pdf
虽然这可行,但当 PDF 别名缩放不足时会导致不幸的问题。我的理解是默认情况下在转换中启用抗锯齿(https://legacy.imagemagick.org/Usage/antialiasing/)
如果我改为使用以下命令,情况会更好:
转换-密度 800 -重新采样 300 mwe.pdf mwe_convert.pdf
使用此 PDF,当我放大和缩小时,它可以更好地保留文件中的细线。我猜我会通过这样做获得一些不同类型的有效抗锯齿,但转换选项比我聪明。
问题是使用密度和重采样导致 mwe_convert.pdf 中的纸张尺寸为 3.19 × 4.12 英寸(根据识别)。这意味着查看文件会导致它在屏幕上打开得很小,并且您需要疯狂的放大倍率才能使其在屏幕上可读。
所以我对人群的问题是,是否有(a)一种方法来进行密度/重新采样并最终获得正确的纸张尺寸,或者(b)一种更好的方法来实现我的目标。
我不能在此处包含 PDF 作为 MWE。我可以展示我所看到的。这是原始 LaTex PDF 的屏幕截图。
这是没有重新采样的 -density 300 的屏幕截图:
这是 -density 800 -resample 300 的屏幕截图。请注意,PDF 在屏幕上更小,等号仍然可见。
解决方案
这是一种返回字母大小页面的方法:
pdfjam --outfile converted_pdf_file.pdf --letterpaper letter_sized_pages.pdf
所述pdfjam
命令可在texlive-extra-utils软件包(对于 Debian)中找到。
推荐阅读
- regex - 需要一个不接受第二个点的十进制数的正则表达式
- azure - 不支持关键字:@microsoft.keyvault
- javascript - 在 Node.js 模块中使用函数
- java - 如何修复 Talend 中的“日期格式”问题
- c# - 如何在 UWP(通用 Windows 编程)应用程序中进行简单的用户登录
- curl - 无法从托管它的服务器内部 curl 到站点,它返回 403 Forbidden,但是从外部到站点使用 curl 很好
- c++ - 如何将参数 -fvisibility=default 添加到 CMAKE?
- c++ - 使用相同的参数集分离内部和外部构造函数
- extjs - 在 ExtJs 中支持单个构建下的多个主题
- javascript - Nodejs:获取从前端传递的对象的名称和值