From b2bd94f898c1cc2c060cc69bb72f32a4b188a666 Mon Sep 17 00:00:00 2001 From: Carl Kittelberger Date: Thu, 15 Mar 2018 09:38:41 +0100 Subject: [PATCH] Set up PNG/SVG generation from LibreOffice Draw documents. --- .gitignore | 4 ++++ Makefile | 31 +++++++++++++++++++++++++++---- 2 files changed, 31 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 4d6823f..bf1caff 100644 --- a/.gitignore +++ b/.gitignore @@ -97,6 +97,10 @@ sympy-plots-for-*.tex/ sheets #!AA_*.pdf +# Lock files +.~lock* +*# + # Vim/Nano session files [._]*.s[a-w][a-z] [._]s[a-w][a-z] diff --git a/Makefile b/Makefile index 1fe4d6c..3207c0a 100644 --- a/Makefile +++ b/Makefile @@ -11,23 +11,37 @@ PANDOC_TEX_FLAGS = --template=template.tex PANDOC_TEX_DEPENDENCIES = template.tex SOFFICE = soffice SOFFICE_FLAGS = --headless +INKSCAPE = inkscape +INKSCAPE_FLAGS = MARKDOWN_INPUTS = $(wildcard *.md) -.PHONY: all build clean clean-pdf clean-tex clean-odt clean-docx default +ODG_INPUTS = $(wildcard img/*/*.odg) + +.PHONY: all clean clean-pdf clean-tex clean-svg clean-png all-pdf all-tex all-svg all-png default TEXINPUTS := .:./pkg/:$(TEXINPUTS) export TEXINPUTS default: all -all: all-tex all-pdf +all: all-tex all-svg all-png all-pdf + +all-svg: $(addsuffix .svg,$(basename $(ODG_INPUTS))) + +all-png: $(addsuffix .png,$(basename $(ODG_INPUTS))) all-tex: $(addsuffix .tex,$(basename $(MARKDOWN_INPUTS))) all-pdf: $(addsuffix .pdf,$(basename $(MARKDOWN_INPUTS))) -clean: clean-pdf clean-tex +clean: clean-pdf clean-tex clean-svg clean-png + +clean-svg: + rm -f $(addsuffix .svg,$(basename $(ODG_INPUTS))) + +clean-png: + rm -f $(addsuffix .png,$(basename $(ODG_INPUTS))) clean-tex: rm -f $(addsuffix .tex,$(basename $(MARKDOWN_INPUTS))) @@ -42,7 +56,16 @@ clean-pdf: $(addsuffix .toc,$(basename $(MARKDOWN_INPUTS))) \ missfont.log -%.pdf: %.tex $(PANDOC_TEX_DEPENDENCIES) +%.svg: %.odg + @echo $< "->" $@ + $(SOFFICE) $(SOFFICE_FLAGS) --draw --convert-to svg:draw_svg_Export \ + --outdir $(dir $<) $< + +%.png: %.svg + @echo $< "->" $@ + $(INKSCAPE) $(INKSCAPE_FLAGS) -D -z -e $@ -d 720 $< + +%.pdf: %.tex all-svg $(PANDOC_TEX_DEPENDENCIES) @echo $< "->" $@ $(LATEX) $(LATEX_FLAGS) $(LATEX_PDF_FLAGS) $< 1>/dev/null $(LATEX) $(LATEX_FLAGS) $(LATEX_PDF_FLAGS) $< 1>/dev/null