On Tue, Oct 26, 2010 at 6:01 PM, Eric Schulte <schulte.eric@gmail.com> wrote:
Hi,

First my previously pasted :exports code will throw errors on
interactive evaluation (i.e. when not exporting), this alternative
should be more robust.

 :exports (if (and (boundp 'latexp) latexp) "code" "results")

As for placing latex headers in a latex code block, I don't believe that
is currently possible.  I do agree it would be nice for latex code
blocks to inherit latex headers from the containing Org-mode buffer but
that would be a non-trivial piece of development, which I just don't
have time for at the moment.

I've just added a :headers argument which should allow changing things
like fonts that need to take place in the headers portion of the latex
file.  See the following examples, passing both a single header and a
list of headers.
 --8<---------------cut here---------------start------------->8---
#+begin_src latex :headers \usepackage{lmodern} :file name1.pdf
 Eric Schulte
#+end_src

#+results:
[[file:name1.pdf]]

#+begin_src latex :headers '("\\usepackage{mathpazo}" "\\usepackage{fullpage}") :file name2.pdf
 Eric Schulte
#+end_src

#+results:
[[file:name2.pdf]]
--8<---------------cut here---------------end--------------->8---

Please pull this down and let me know if it works for you.


Just pulled, make clean && make && make doc && make install. Tried it and I get the default font for the first and Palatino for the second, but the lmodern is not appearing to change what's going on. I tried what usually works for me:

\renewcommand{\rmdefault}{cmss}

and this did not work to make it sans serif. Am I doing something wrong?


Thanks,
John

 
Best -- Eric

John Hendy <jw.hendy@gmail.com> writes:

> Maybe it would just be easier if someone attached a .org file that functions
> as you think would work well -- with both the document and the babel/TikZ
> export having the same sans-serif font. Perhaps then I could simply C-e p
> the document and C-c C-c the babel block myself to examine how it behaves?
>
> I was not able to get the conditional :export code provided to work.
>
> Thanks,
> John
>
> On Tue, Oct 26, 2010 at 9:34 AM, John Hendy <jw.hendy@gmail.com> wrote:
>
>> On Tue, Oct 26, 2010 at 3:17 AM, Eric S Fraga <ucecesf@ucl.ac.uk> wrote:
>>
>>> On Mon, 25 Oct 2010 13:58:41 -0500, John Hendy <jw.hendy@gmail.com>
>>> wrote:
>>> >
>>> > [1  <text/plain; ISO-8859-1 (7bit)>]
>>> >
>>> > [2  <text/html; ISO-8859-1 (quoted-printable)>]
>>> > On Mon, Oct 25, 2010 at 1:53 PM, Eric Schulte <schulte.eric@gmail.com>
>>> wrote:
>>> >
>>> >     Hi John,
>>> >
>>> >     In the case you describe I would export the *code* of the tikz latex
>>> >     block rather than the file resulting from evaluating the block.
>>> >
>>> > Code = raw LaTeX/TikZ code? If so, I don't really care about that. i
>>> just want the graphic.
>>>
>>> Yes but the point is that, if I understand the processes involved
>>> correctly, the export and babel routes each generate different latex
>>> code.  Babel does *not* look at the document wide settings whereas
>>> export does.  This is why Eric is suggesting you export the babel code
>>> so that it is interpreted by the latex document that results from
>>> exporting the whole org document.  Otherwise, make sure the settings
>>> you want are within the latex source code block?
>>>
>>
>> That makes more sense, though if I export the code into the larger LaTeX
>> document, I'm left where I started, I believe. An 8.5x11 exported PDF with
>> my diagram in the middle of it.
>>
>> If it's just getting the right code into the babel block, that's helpful to
>> know. Perhaps the easiest way to put it is this: what is the best path to
>> obtain the following:
>>
>> - a single pdf output of my TikZ diagram, cropped to fit the diagram
>> - the font used in the TikZ diagram that I desire (preferably from the doc)
>>
>> Again, my use-case is one in which I have daily notes or a paper with a
>> diagram but also would like to preserve the diagram for reuse. With babel,
>> it appears this should be possible -- I can both export normally and have
>> the graphic in the paper or send the TikZ section alone to export and use
>> the graphic in a presentation or elsewhere.
>>
>> I wondered about what you said re. putting the settings in the latex source
>> code block, and I was actually fiddling around with that yesterday. My font
>> is simply set like so (present in the examples I posted earlier):
>>
>> #+latex_header: \usepackage{lmodern}
>> #+latex_header: \renewcommand{\rmdefault}{cmss}
>>
>> But I tried putting variations of this in the babel block (without the
>> #+latex_header part, of course) with no success.
>>
>> These didn't work for me:
>>
>> #+begin_src latex :file flow-chart.pdf :packages '(("" "tikz")) :border 1em
>> \usepackage{lmodern}
>> \renewcommand{\rmdefault}{cmss}
>>
>> or
>>
>> #+begin_src latex :file flow-chart.pdf :packages '(("" "tikz" "lmodern"))
>> :border 1em
>> \renewcommand{\rmdefault}{cmss}
>>
>> or
>>
>> #+begin_src latex :file flow-chart.pdf :packages '(("" "tikz lmodern"))
>> :border 1em
>> \renewcommand{\rmdefault}{cmss}
>>
>> I haven't found anything at ob-doc-latex covering how to pass package
>> arguments or include LaTeX settings directly in the babel block. My attempts
>> at the renewcommand end up with "cmss" ending up in my TIkZ graphic
>> somewhere...
>>
>>
>> Thanks for persisting with me!
>> John
>>
>>
>>
>>
>>
>>> --
>>> Eric S Fraga
>>> GnuPG: 8F5C 279D 3907 E14A 5C29  570D C891 93D8 FFFC F67D
>>>
>>>
>>