명령줄의 레이아웃을 사용하여 텍스트 파일을 이미지로 "인쇄"

명령줄의 레이아웃을 사용하여 텍스트 파일을 이미지로 "인쇄"

이미지로 보고 싶은 매우 긴 로그 파일이 있습니다. 텍스트 편집기의 스크린샷을 찍고 싶지 않습니다. LibreOffice를 사용하여 jpg로 내보내는데 모든 작업을 다시 수행해야 합니다. 단계. 존재하다. 시간. 나는 표면적으로 다음과 같은 일종의 명령줄 레이아웃 프로그램을 찾고 있습니다.

$ txt2jpg -i myfile.txt -o mynewfile --format=jpg --height=872 \
--width=600 --margins=40px --font=monospace

이는 입력으로 사용되며 출력이라는 myfile.txt일련의 파일을 생성합니다 . mynewfile01.jpg, mynewfile02.jpg, ..., mynewfileNN.jpg이미지는 높이 872픽셀, 너비 600픽셀, 여백 40픽셀이며 모노스페이스라는 글꼴을 사용합니다. 분명히 실제 프로그램은 세부적으로 다양하지만 텍스트 파일을 가져와 일련의 jpg(또는 png, bmp 등)를 출력으로 출력할 수 있어야 하며 출력 이미지 글꼴 크기 등의 형식을 지정할 수 있어야 합니다.

답변1

간단한 텍스트 파일을 인쇄하는 전통적인 도구는 enscriptPostScript 출력을 생성합니다. 다양한 방법으로 이미지로 변환할 수 있습니다. 좋은 결과를 제공하는 한 가지 접근 방식은 pdftopngPostScript를 입력으로 pdf로 패키징하고(예: 사용 ps2pdf) png 이미지 파일을 생성해야 한다는 것입니다. 따라서 convertImageMagick을 사용하여 jpg로 변환하면 다음과 같이 됩니다.

enscript < myfile.txt --media A4 -f CourierBold10 -o - |
ps2pdf - >out.pdf
pdftopng -mono out.pdf out # creates files out-000001.png etc
for f in out-*.png
do convert -resize 600x872 "$f" "${f/png/jpg}"
   rm "$f"
done
rm out.pdf

출력은 files 에 있습니다 out*jpg.

관련 정보