您的位置:首页技术文章
文章详情页

Linux中如何将txt文件转为png格式

日期:2023-09-26浏览:111作者:猪猪【字号:
导读:这篇文章主要介绍了Linux中如何将txt文件转为png格式问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
目录Linux将txt文件转为png格式如果文本中没有中文,使用enscript如果文本包含中文,使用paps解决方法Linux下PNG、JEPG、JPG、Webp图片格式互转环境webp使用说明批量转换总结Linux将txt文件转为png格式

Linux中将txt文本内容转为png格式步骤:

① 首先将txt转为ps格式

如果文本中没有中文,使用enscript

可以使用Linux下工具enscript,安装enscript

sudo apt install enscript

txt转ps

enscript -p test.ps -B test.txt-p后面接输出的文件名-B表示不将文件的页码、文件名等文件信息转到图片中如果文本包含中文,使用paps

安装paps

sudo apt install paps

txt转paps

paps test.txt > test.ps

② ps转pdf格式

使用Linux工具ps2pdf,安装ps2pdf

sudo apt install ps2pdf

ps转pdf

ps2pdf test.ps test.pdf

③ pdf 转 png

使用ImageMagick中的convert命令,安装ImageMagick

sudo apt install ImageMagick

使用convert进行转换

convert test.pdf test.png

或者直接在Linux中使用管道

enscript -B -p - test.txt | ps2pdf - | convert -density 300 - test.png

-density 300 代表像素300

注:使用convert进行pdf转png过程中报错

convert-im6.q16: not authorized `Appendix-A.pdf' @ error/constitute.c/ReadImage/412.convert-im6.q16: no images defined `output.png' @ error/convert.c/ConvertImageCommand/3258.

解决方法

修改配置文件

vim /etc/ImageMagick-6/policy.xml

找到这一行:

<policy domain='coder' rights='none' pattern='PDF' /> 

修改为:

<policy domain='coder' rights='read|write' pattern='PDF' /> 

在下面再增加一行:

<policy domain='coder' rights='read|write' pattern='LABEL' />

如果在修改配置文件时显示该文件为只读文件,无法进行修改,则通过执行命令

sudo chmod 777 /etc/ImageMagick-6/policy.xml

先修改配置文件的权限

Linux下PNG、JEPG、JPG、Webp图片格式互转

最近写文章的时候,发现PNG格式的图片太大了,加载比较慢,不知道从哪里听来说WebP格式,听说这种格式有更优的图像数据压缩算法,能带来更小的图片体积,而且拥有肉眼识别无差异的图像质量。于是就想把这个图片转换成webp格式。

环境

系统:ubuntu Ukylin20.04(基于ubuntu20.04)

要做格式转换,需要安装webp

sudo apt-get install webpwebp使用说明

使用格式:

cwebp 原文件 -o 输出文件 

如:

cwebp 1.jpg -o 1.webp

这样就是把1.jpg图片转换到1.webp文件,-o是输出的意思,即output

批量转换

利用Shell脚本执行格式的批量转换。

思路很简单,就是用一个for循环,对每个文件分别进行格式转换。

#!/bin/bash# 把当前文件夹下.png文件名写入images.txt文件,作为一个遍历列表ls *.png > images.txt# 遍历images.txt文件的每一行for ImageFile in `cat images.txt`do    # 执行格式转换    cwebp 100 $ImageFile -o $ImageFile.webp done# 对转换后的格式进行重命名rename 's/.png.webp/.webp/' *.webp # 最后删除多余的垃圾文件rm *.txt 

如果没有rename,需要先安装rename使用sudo apt install rename命令安装。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持好吧啦网。

标签: Linux