ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Tomas Hala <tomas.hala@mendelu.cz>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: Float positioning
Date: Mon, 6 Apr 2020 16:53:33 +0200	[thread overview]
Message-ID: <20200406145333.GC13171@akela.mendelu.cz> (raw)
In-Reply-To: <20200406151504.5d031b194e7201b246936aae@yandex.ru>

Hi Alexey,

# Yes, I tried leftpage/rightpage: this removes the blank page, but may
# cause images to be reordered (so that e. g. 3 goes before 2), which is
# completely unacceptable IMO.

Yes, you are right. 
But -- I do not know why -- your code you attached gives on my computer (TL2019)
the 1-3-2 order, too.
 
# Also, this doesn't help with the text flow at the page where the first
# image is positioned (still no text below the image).

Is it one or two problems? I do know how to solve by some system way...

You can try the work around below, it is based on computation of additional measures for special instance of figure.

Best wishes,

Tomáš 

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\showframe
\setupexternalfigures[location={local,default}]

\definefloat[figpage][figure]

\newdimen\myxx
\newdimen\myht 
\newcount\mysp

\def\myfig#1#2#3{%
  \myht=\makeupheight
  \setbox0=\hbox{{\externalfigure[#2][#3]}}
  \advance\myht by -\wd0 
  \myht=.5\myht
  \myxx=\myht
  \divide\myxx by \lineheight
  \mysp=\myxx 
  \advance\mysp by 1

  \setupfloat[figpage][toffset=\myht]
  \setupcaption[figpage][spaceafter=\the\mysp*big]
  \startplacefigpage[location={here},title=#1]
    {\externalfigure[#2][#3]}
  \stopplacefigpage
}

\starttext

\dorecurse{3}{\input{knuth}}
  \startplacefigure[location={here},title=cow]
    {\externalfigure[cow][width=150mm]}
  \stopplacefigure
\dorecurse{1}{{\blue\input{knuth}}}
\myfig{cow again}{cow}{width=150mm}
\myfig{one more cow}{cow}{width=100mm}
\myfig{one more cow}{cow}{width=50mm}
\myfig{one more cow}{cow}{width=150mm}

\dorecurse{10}{{\green\input{knuth}}}

\stoptext
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%



# 
# -- 
# Regards,
# Alexey Kryukov <anagnost at yandex dot ru>
# 
# Moscow State University
# Faculty of History
# 
# On Mon, 6 Apr 2020 13:58:57 +0200
# Tomas Hala wrote:
# 
# > Hi Alexey,
# > 
# > I do not how free are you in decision where figures should be located
# > but I tried with "leftpage" and "rightpage" instead of "page" and
# > it seems to be ok.
# > 
# > \placefigure[rightpage]{one more cow}{\externalfigure[cow]
# > [width=150mm]} \placefigure[leftpage]{cow again}{\externalfigure[cow]
# > [width=150mm]}
# > 
# > Best wishes,
# > 
# > Tomáš
# > 
# > 
# > Mon, Apr 06, 2020 ve 02:15:50PM +0300 Alexey Kryukov napsal(a):
# > # Hi all,
# > # 
# > # Suppose I have the following document:
# > # 
# > # \setupexternalfigures[location={local,default}]
# > # \starttext
# > # 
# > # \dorecurse{3}{\input{knuth}}
# > # \placefigure[top]{cow}{\externalfigure[cow][width=150mm]}
# > # \input{knuth}
# > # \placefigure[page]{one more cow}{\externalfigure[cow][width=150mm]}
# > # \placefigure[page]{cow again}{\externalfigure[cow][width=150mm]}
# > # \dorecurse{10}{\input{knuth}}
# > # \stoptext
# > # 
# > # Here I would expect the text flow to continue below the first image,
# > # and then two more images to be positioned on separate pages.
# > # Instead I get no text at all at the page with the Figure 1 and one
# > # more blank page after it. Only after the last image the text flow
# > # continues.
# > # 
# > # Since similar situations are very common for documents which contain
# > # several large illustrations, I would like to know if there are any
# > # workarounds for the problem.
# > # 
# > # -- 
# > # Regards,
# > # Alexey Kryukov <anagnost at yandex dot ru>
# > # 
# > # Moscow State University
# > # Faculty of History
# > # ___________________________________________________________________________________
# > # If your question is of interest to others as well, please add an
# > # entry to the Wiki!
# > # 
# > # maillist : ntg-context@ntg.nl /
# > # http://www.ntg.nl/mailman/listinfo/ntg-context webpage  :
# > # http://www.pragma-ade.nl / http://context.aanhet.net archive  :
# > # https://bitbucket.org/phg/context-mirror/commits/ wiki     :
# > # http://contextgarden.net
# > # ___________________________________________________________________________________
# > 
# >                                          Tomáš Hála
# > --------------------------------------------------------------------
# > Mendelova univerzita, Provozně ekonomická fakulta, ústav informatiky
# > Zemědělská 1, CZ-613 00 Brno,  tel. +420 545 13 22 28
# > --------------------------------------------------------------------
# > http://akela.mendelu.cz/~thala
# > ___________________________________________________________________________________
# > If your question is of interest to others as well, please add an
# > entry to the Wiki!
# > 
# > maillist : ntg-context@ntg.nl /
# > http://www.ntg.nl/mailman/listinfo/ntg-context webpage  :
# > http://www.pragma-ade.nl / http://context.aanhet.net archive  :
# > https://bitbucket.org/phg/context-mirror/commits/ wiki     :
# > http://contextgarden.net
# > ___________________________________________________________________________________
# 
# 
# ___________________________________________________________________________________
# If your question is of interest to others as well, please add an entry to the Wiki!
# 
# maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
# webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
# archive  : https://bitbucket.org/phg/context-mirror/commits/
# wiki     : http://contextgarden.net
# ___________________________________________________________________________________

                                         Tomáš Hála
--------------------------------------------------------------------
Mendelova univerzita, Provozně ekonomická fakulta, ústav informatiky
Zemědělská 1, CZ-613 00 Brno,  tel. +420 545 13 22 28
--------------------------------------------------------------------
http://akela.mendelu.cz/~thala
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

  reply	other threads:[~2020-04-06 14:53 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-06 11:15 Alexey Kryukov
2020-04-06 11:58 ` Tomas Hala
2020-04-06 12:15   ` Alexey Kryukov
2020-04-06 14:53     ` Tomas Hala [this message]
2020-04-08 14:53       ` Alexey Kryukov
2020-04-09 18:44 ` Geert Dobbels
2020-04-10  2:48   ` Alexey Kryukov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200406145333.GC13171@akela.mendelu.cz \
    --to=tomas.hala@mendelu.cz \
    --cc=ntg-context@ntg.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).