Hello,
I'm forwarding the author's answer back to the mailing list. If anyone
has some nice idea about possible solutions, let us/him know ...
I don't remember how I was solving such problems so far, but I know
that I have always been missing:
% maybe even some external file with extremely long code
\starttikzpicture{picture name}
...
\stoptikzpicture
\placefigure{some figure}{\usetikzpicture{picture name}}
If that was implemented, maybe \usetikzpicture could be inside an hbox?
Mojca
On Mon, Sep 29, 2008 at 3:12 PM, Till Tantau wrote:
> Hi!
>
> the problem is caused by the fact that a tikz/pgf picture is a \hbox, but
> with \leavevmode before it. This turned out to be necessary to ensure that
> tikzpictures behave the same way for all backend drivers.
>
> Certainly the added \hbox is a correct solution to this problem since it
> gets tex back into the right "mode"...
>
> I don't really know how to change this in an elegant manner since existing
> code will now assume that tikzpictures are always set in horizontal mode, so
> any change could have desastrous consequences for existing documents.
>
> Sorry,
> Till
>
>
> Am 22.09.2008 um 20:13 schrieb Mojca Miklavec:
>
>> On Mon, Sep 22, 2008 at 8:03 PM, Marcin Borkowski
>> <mbork(a)atos.wmid.amu.edu.pl> wrote:
>>>
>>> Hi again;),
>>>
>>> this won't work:
>>>
>>> \placefigure[right]{none}{\starttikzpicture
>>> \draw (0,0) -| (2,2) -| (0,0) -- (2,2)
>>> (2,0) -- (0,2)
>>> (1,1) circle(1);
>>> \stoptikzpicture}
>>> (some text...)
>>>
>>> The tikzpicture apparently extends to the whole text width, resulting in
>>> an overfull box (and nasty paragraph formatting). Putting it into an
>>> \hbox helps, so I know what to do; the question is, _why_ this works
>>> that way?