图片格式转换
7/22/2024 图片处理
# 图片格式转换
# 图片、pdf 互相转换
eps 转 pdf:
- ps2pdf,Linux 自带,将 ps/eps 格式转成 pdf
- epstopdf,Tex Live 中的 tool(生成的 pdf 文件相比 ps2pdf 生成的空白较少)
pdf 转 jpg/png 等格式:GitHub - Belval/pdf2image: A python module that wraps the pdftoppm utility to convert PDF to PIL Image object (opens new window)
brew install poppler
pip install -U pdf2image
- svg 转 pdf:GitHub - typst/svg2pdf: Converts SVG files to PDF. (opens new window)(没有 convert 效果好)
cargo install svg2pdf-cli
svg2pdf file.svg
- jpg/png 转 svg:PNG to SVG - FreeConvert.com (opens new window)
# ImageMagick 使用
ImageMagick 中的 convert 命令行工具,可实现多种图片格式转换
- 图片格式包括:tiff png jpg svg pdf 等
- pdf 转 png 的图片质量没有 pdf2image 高
- tiff 图片转换,会将 tiff 的所有图层输出出来(只要编号最小的即可)
pdftk M1 芯片安装:pdftk MacOs M1 · GitHub (opens new window)
# 下载链接
https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/pdftk_server-2.02-mac_osx-10.11-setup.pkg
# ImageMagick V7 版本 magick 或 magick convert 替换 convert
# 格式转换
convert input.* output.*
# pdf 转图片;添加 -density 参数不使其变糊
convert -density 1000 input.pdf -quality 100 output.png
# TIFF 格式压缩
convert input.tif -compress LZW -quality 75 output.tif
# 创建 ImageMagick 默认 logo 图片
convert logo: logo.png
# 裁切图片白边
convert -trim input.png output.png
# 左右堆叠图片 +
convert image1.png image2.png +append stack.png
# 上下堆叠图片 -
convert image1.png image2.png -append stack.png
# pdf 合并
# 方式 1;会变模糊
convert input1.pdf input2.pdf merged.pdf
# 方式 2;不会变模糊
pdfunite input1.pdf input2.pdf merged.pdf
# pdf 抽取
pdftk input.pdf cat 5-10 output out.pdf
# pdf 压缩
ps2pdf input.pdf output.pdf
ps2pdf -dPDFSETTINGS=/screen input.pdf output.pdf
# -dPDFSETTINGS 参数有 /screen, /ebook, /prepress, /printer
# /screen 压缩效果最好
# -dPDFSETTINGS=/ebook -dColorImageResolution=250 组合使用 可产生介于/ebook和/prepress的效果
# https://www.ghostscript.com/doc/current/VectorDevices.htm#distillerparams