텍스트 버퍼를 pdf 파일로 변환 하시겠습니까?


15

현재 텍스트 버퍼를 pdf 파일로 변환하는 방법은 *로 시작하는 제목을 pdf 파일의 책갈피로 바꾸는 것이 좋습니다. 예를 들어, Emacs 통합 튜토리얼 (Ch t로 표시)을 북마크 된 pdf 파일로 변환합니다. 감사.



2
구체적으로org-latex-export-to-pdf
casey

6
다양성 C-u M-x ps-print-buffer을 위해, 결과 PostScript 파일을 PDF로 변환 한 다음 변환 할 수 있습니다 (파일이 조직 파일이 아니고 일반 텍스트 종류의 PDF를 원할 경우). 마찬가지로, ps-print-buffer-with-faces그것은 소리입니다.
wvxvw

@PythonNut :C-c C-e is undefined
Tim

@casey : 명령을 찾을 수 없음
Tim

답변:


13

아래에 당신을 넣고 init.el기능을 원하는 바인딩에 바인딩 할 수 있습니다.

이 기능은 현재 버퍼의 파일을 기본적으로 동일한 폴더에 PDF로 인쇄합니다.

여기서 함수는 ps2pdf로 변환 .ps하기 위해 이진이 필요합니다 .pdf. 그러나 시스템에서 사용 가능한 PDF 생성기로 바꿀 수 있습니다.

(require 'ps-print)
(when (executable-find "ps2pdf")
  (defun modi/pdf-print-buffer-with-faces (&optional filename)
    "Print file in the current buffer as pdf, including font, color, and
underline information.  This command works only if you are using a window system,
so it has a way to determine color values.

C-u COMMAND prompts user where to save the Postscript file (which is then
converted to PDF at the same location."
    (interactive (list (if current-prefix-arg
                           (ps-print-preprint 4)
                         (concat (file-name-sans-extension (buffer-file-name))
                                 ".ps"))))
    (ps-print-with-faces (point-min) (point-max) filename)
    (shell-command (concat "ps2pdf " filename))
    (delete-file filename)
    (message "Deleted %s" filename)
    (message "Wrote %s" (concat (file-name-sans-extension filename) ".pdf"))))

2

이것은 PDF에서 책갈피의 특정 문제를 다루지는 않지만 버퍼를 PDF로 변환하는 일반적인 문제를 해결합니다.

숨겨진 텍스트를 표시하지 않고 실제로 버퍼의 PDF "스크린 샷" 을 얻으 려면 버퍼 를 htmlize 하고 결과를 HTML에서 PDF로 변환 하는 것이 좋습니다 . 예를 들어,이를 사용하여 조직 아젠다의 PDF 버전을 작성할 수 있습니다. ( ps-printKaushal Modi 의 기반 답변은 숨겨진 버퍼 내용을 보여줍니다 .)

레시피

M-x htmlize-buffer RET, C-x C-w buf.html RET; 그런 다음 명령 행에서 실행하십시오.

pandoc --from=html --to=latex --variable geometry="landscape" -o buf.pdf buf.html

예 (스크린 샷)

여기에 이미지 설명을 입력하십시오

또한보십시오

"벡터 스크린 샷"에 대한 흥미로운 토론이 있습니다 : Emacs의 벡터 (SVG) 스크린 샷을 찍을 수 있습니까? (내가 설명한 것은 "벡터 스크린 샷"의 매우 제한된 예 라고 볼 수 있습니다 .)


2

당신은 할 수 C-u M-x ps-print-buffer는 PS 파일을 통해 다음 파이프를에 현재의 버퍼를 인쇄합니다 ps2pdf.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.