我創建使用最簡單的pandoc
命令從降價文檔的PDF文檔:Pandoc禁用數字從減價拉伸到PDF轉換
pandoc my.md -o my.pdf
的PDF內的數字都被拉伸,即:100%的寬度。
對於pandoc
,我應該給出哪種配置來保持原樣而不改變圖形尺寸。
我創建使用最簡單的pandoc
命令從降價文檔的PDF文檔:Pandoc禁用數字從減價拉伸到PDF轉換
pandoc my.md -o my.pdf
的PDF內的數字都被拉伸,即:100%的寬度。
對於pandoc
,我應該給出哪種配置來保持原樣而不改變圖形尺寸。
目前您無法直接從Markdown控制該功能。
在最近幾個月出現了一些討論,在Pandoc開發+用戶社區如何最好地實現它,並創建一個易於使用的語法事情,例如
![Image Caption](./path/to/image.jpg "Image Comment"){width="60%", height="150px"}
(警告:僅供舉例,由我自己製作並由空氣中抽出 - 無法記住討論的最新狀態......)這是設計然後轉移到全部支持的輸出格式可以包含圖像,而不僅僅是PDF。
因此,這是計劃成爲Pandoc下一個主要版本的主要新功能。
正如你可能會或可能不知道,Pandoc不會創建PDF文件本身。它生成LaTeX並使用LaTeX技術(默認爲pdflatex
命令)將LaTeX轉換爲PDF(然後刪除中間LaTeX文件)。
要對LaTeX/PDF頁面(或其他輸出)的外觀進行一些(有限)控制,Pandoc使用模板文件。你可以看一下自己Pandoc版本使用的乳膠/ PDF輸出的確切模板定義運行
pandoc -D latex
所以,如果你是一個LaTeX的黑客(或知道一個),你可以修改或創建自己的從頭開始模板。
在Pandoc(v1.13.2.1)的當前版本中,有在LaTeX的模板此代碼段:
\makeatletter
\def\maxwidth{\ifdim\[email protected]@width>\linewidth\linewidth\else\[email protected]@width\fi}
\def\maxheight{\ifdim\[email protected]@height>\textheight\textheight\else\[email protected]@height\fi}
\makeatother
% Scale images if necessary, so that they will not overflow the page
% margins by default, and it is still possible to overwrite the defaults
% using explicit options in \includegraphics[width, height, ...]{}
\setkeys{Gin}{width=\maxwidth,height=\maxheight,keepaspectratio}
這應該保持原始圖像的大小,如果他們到合適的頁面寬度,如果它們不是,則將它們縮小到頁面寬度。
如果這不是您使用PDF輸出的行爲,我懷疑您是Pandoc的一個相當老的版本。
對於使用自己的模板代替內置的內部一個,你可以添加
--template=/path/to/myown-template.latex
到Pandoc命令行。
我相信你提到的第一部分是可能的:https://github.com/jgm/pandoc-templates/blob/master/default.latex#L93「和它仍然可以使用\ includegraphics [width,height,...] {}中的顯式選項覆蓋默認值 %@ – bugdayci
@bugdayci:抱歉,我不理解您的評論*「您提到的第一部分是可能的」* 。哪個第一部分? - 另外,你爲什麼要鏈接到GitHub上的那條註釋行93,它與我的代碼塊中給出的註釋行相同? –
我已經在我的模板中獲得了這個,但它縮放了圖像。我怎樣才能保持較小的圖像? – Simon
@KurtPfeifle感謝您的幫助。我更新了膠乳,爲使用提示的圖像設置靜態寬度和高度。
在我乳膠的模板,我有:
\setkeys{Gin}{width=128pt,height=192pt,keepaspectratio}
這對於移動圖像的偉大工程。但我也有一個封面,封面圖現在很小。
我嘗試創建2個不同的乳膠文件並將它們組合但身材尺寸都回被拉伸:
pandoc _cover_page.md -o _cover_page.tex
pandoc ... -template=mobile_images.latex -o remaining.tex
pandoc _cover_page.tex remaining.tex -o out.pdf
有一種簡單的方法來whicih服從Pandoc模板乳膠結合文件?
我可以創建2個pdf文件:cover.pdf和remaining.pdf,並將它們結合起來。你知道有一個簡單的工具嗎?
最後,我使用gs將它們組合在一起:http://askubuntu.com/questions/2799/how-to-merge-several-pdf-files#answer-257170 – bugdayci
您的創建TeX的Pandoc命令(前兩個)生成通用的TeX-snippets,沒有任何TeX序言。生成PDF的第三個Pandoc命令會隱式激活'--self-contained',而後者又包含一個TeX前導碼。這個前導碼對於所有*連續的TeX代碼是有效的,並且涵蓋了兩個部分,'_cover_page.tex'和'remaining.tex'。這就是爲什麼*「圖形大小恢復到拉伸狀態」* ... - 組合兩個PDF的最簡單方法是:'pdftk 1.pdf 2.pdf cat output combined.pdf'。 –
您正在使用哪個版本的'pandoc'?在哪個OS平臺上? –
「拉伸」的意思是:他們沒有保持其長寬比?還是他們,他們只是放大? –
@KurtPfeifle pandoc 1.12.2.1 Kubuntu 14.04:Linux bor-asus4 3.8.0-39-generic#57〜precise1-Ubuntu SMP Tue Apr 1 20:04:50 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux – bugdayci