ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
* Itemize columns with MPgraphics: another vertical spacing puzzle
@ 2022-01-14 15:16 Gavin via ntg-context
  2022-01-14 19:10 ` Solved! " Gavin via ntg-context
  0 siblings, 1 reply; 4+ messages in thread
From: Gavin via ntg-context @ 2022-01-14 15:16 UTC (permalink / raw)
  To: mailing list for ConTeXt users; +Cc: Gavin

[-- Attachment #1: Type: text/plain, Size: 2059 bytes --]

Hi List,

I need to itemize graphics when I use those graphics as the choices in a multiple choice question. When I do that in columns, I am getting excess space below the graphics. See example code and output below. Any suggestions for how I get rid of this space?

I’m not sure if this is related to the itemize column spacing in my previous comment.

Thanks, again!
Gavin


\starttext

\defineitemgroup[choices]
\setupchoices [each] [A,joinedup] [left=(, right=), width=1.7em, stopper=,]
\define\choice{\item}

\def\mycolor{.625red}

\startuseMPgraphic{name}
  fill fullcircle scaled 40pt withcolor \mycolor;
\stopuseMPgraphic

\define[1]\mycolordot{\def\mycolor{#1}\framed[location=top,offset=0pt,frame=off]{\useMPgraphic{name}}}

What is your favorite color? (There is too much space after these choices.)
\startchoices[columns,four]
  \choice \mycolordot{.625red}
  \choice \mycolordot{.625blue}
  \choice \mycolordot{.625green}
  \choice \mycolordot{.625magenta}
\stopchoices

A ruledhboxs show the extra space is in the itemize, but not in the item contents.

\ruledhbox{\startchoices[columns, four]
  \choice \ruledhbox{\mycolordot{.625red}}
  \choice \mycolordot{.625blue}
  \choice \mycolordot{.625green}
  \choice \mycolordot{.625magenta}
\stopchoices}

Putting a ruledhbox around the first item shows that each item has extra space that is not part of the item contents. (The ruledhbox also messes with the horizontal alignment, but I don't care about that.)
\startchoices[columns]
  \ruledhbox{\choice \mycolordot{.625red}}
  \choice \mycolordot{.625blue}
  \choice \mycolordot{.625green}
  \choice \mycolordot{.625magenta}
\stopchoices

The extra space is not present without columns.
\startchoices
  \choice \mycolordot{.625red}
  \choice \mycolordot{.625blue}
  \choice \mycolordot{.625green}
  \choice \mycolordot{.625magenta}
\stopchoices

\ruledhbox{My favorite color is:\def\mycolor{.625blue}
    \framed[location=top,offset=0pt,frame=on] {\useMPgraphic{name}}}

\stoptext


[-- Attachment #2: PastedGraphic-1.pdf --]
[-- Type: application/pdf, Size: 17270 bytes --]

[-- Attachment #3: Type: text/plain, Size: 493 bytes --]

___________________________________________________________________________________
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
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Solved! Itemize columns with MPgraphics: another vertical spacing puzzle
  2022-01-14 15:16 Itemize columns with MPgraphics: another vertical spacing puzzle Gavin via ntg-context
@ 2022-01-14 19:10 ` Gavin via ntg-context
  2022-01-14 22:18   ` Hans Hagen via ntg-context
  0 siblings, 1 reply; 4+ messages in thread
From: Gavin via ntg-context @ 2022-01-14 19:10 UTC (permalink / raw)
  To: mailing list for ConTeXt users; +Cc: Gavin

[-- Attachment #1: Type: text/plain, Size: 2084 bytes --]

Hi List,

I solved this problem, but the solution is a bit mysterious to me. I was trying to solve another problem – removing the small space underneath the graphic in the framed box. I did this by adding boffset=-\strutdepth to the framed command. That not only got rid of the space inside the frame, it also removed the excess space between the rows in the itemize columns!

I don’t know why this fix solved both problems, but I’m happy with the result. Now I can use options for the choices – like packed and joinedup – with consistent results for any number of columns. I’ve put the fixed code and output below, for anyone who is interested.

Even when I’m a bit confused, I’m glad to be working with ConTeXt rather than any other system!

Best,
Gavin


\starttext

\defineitemgroup[questions]
\setupquestions [1] [n]
\define\question{\item}

\defineitemgroup[choices]
\setupchoices [each] [A,columns] [left=(, right=), width=1.7em, stopper=,]
\define\choice{\item}

\def\mycolor{.625red}

\startuseMPgraphic{name}
  fill fullcircle scaled 40pt withcolor \mycolor;
\stopuseMPgraphic

\define[1]\mycolordot{\def\mycolor{#1}\framed[location=top,offset=0pt,boffset=-\strutdepth,frame=off]{\useMPgraphic{name}}}

Here are a few great looking multiple choice questions about colors.
\startquestions
\question What is your favorite color?
\startchoices[columns,four]
  \choice \mycolordot{.625red}
  \choice \mycolordot{.625blue}
  \choice \mycolordot{.625green}
  \choice \mycolordot{.625magenta}
\stopchoices

\question What is your least favorite color?
\startchoices[columns]
  \choice \mycolordot{.625red}
  \choice \mycolordot{.625blue}
  \choice \mycolordot{.625green}
  \choice \mycolordot{.625magenta}
\stopchoices

\question Toward which colors do you feel indifferent?
\startchoices[one]
  \choice \mycolordot{.625red}
  \choice \mycolordot{.625blue}
  \choice \mycolordot{.625green}
  \choice \mycolordot{.625magenta}
\stopchoices
\stopquestions

That's it for questions about colors!

\stoptext


[-- Attachment #2: PastedGraphic-2.pdf --]
[-- Type: application/pdf, Size: 15622 bytes --]

[-- Attachment #3: Type: text/plain, Size: 3 bytes --]





[-- Attachment #4: Type: text/plain, Size: 493 bytes --]

___________________________________________________________________________________
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
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Solved! Itemize columns with MPgraphics: another vertical spacing puzzle
  2022-01-14 19:10 ` Solved! " Gavin via ntg-context
@ 2022-01-14 22:18   ` Hans Hagen via ntg-context
  2022-01-14 23:25     ` Gavin via ntg-context
  0 siblings, 1 reply; 4+ messages in thread
From: Hans Hagen via ntg-context @ 2022-01-14 22:18 UTC (permalink / raw)
  To: mailing list for ConTeXt users; +Cc: Hans Hagen

On 1/14/2022 8:10 PM, Gavin via ntg-context wrote:
> Hi List,
> 
> I solved this problem, but the solution is a bit mysterious to me. I was trying to solve another problem – removing the small space underneath the graphic in the framed box. I did this by adding boffset=-\strutdepth to the framed command. That not only got rid of the space inside the frame, it also removed the excess space between the rows in the itemize columns!
> 
> I don’t know why this fix solved both problems, but I’m happy with the result. Now I can use options for the choices – like packed and joinedup – with consistent results for any number of columns. I’ve put the fixed code and output below, for anyone who is interested.
> 
> Even when I’m a bit confused, I’m glad to be working with ConTeXt rather than any other system!

% your hack:

\define[1]\mycolordot{\def\mycolor{#1}\framed[location=top,offset=0pt,boffset=-\strutdepth,xframe=off]{\useMPgraphic{name}}}

% but ... you just don't want struts

\define[1]\mycolordot{\def\mycolor{#1}\framed[location=top,offset=0pt,strut=no,frame=off]{\useMPgraphic{name}}}

% and no offset but also no invisible frame

\define[1]\mycolordot{\def\mycolor{#1}\framed[location=top,offset=overlay,frame=off]{\useMPgraphic{name}}}

playing with framed for a while alway spays back

Hans


-----------------------------------------------------------------
                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
        tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
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
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Solved! Itemize columns with MPgraphics: another vertical spacing puzzle
  2022-01-14 22:18   ` Hans Hagen via ntg-context
@ 2022-01-14 23:25     ` Gavin via ntg-context
  0 siblings, 0 replies; 4+ messages in thread
From: Gavin via ntg-context @ 2022-01-14 23:25 UTC (permalink / raw)
  To: Hans Hagen; +Cc: Gavin, mailing list for ConTeXt users

Thanks, Hans!

That works, and it makes sense. Playing with frames always pays, indeed.

-Gavin


> On Jan 14, 2022, at 3:18 PM, Hans Hagen <j.hagen@xs4all.nl> wrote:
> 
> On 1/14/2022 8:10 PM, Gavin via ntg-context wrote:
>> Hi List,
>> I solved this problem, but the solution is a bit mysterious to me. I was trying to solve another problem – removing the small space underneath the graphic in the framed box. I did this by adding boffset=-\strutdepth to the framed command. That not only got rid of the space inside the frame, it also removed the excess space between the rows in the itemize columns!
>> I don’t know why this fix solved both problems, but I’m happy with the result. Now I can use options for the choices – like packed and joinedup – with consistent results for any number of columns. I’ve put the fixed code and output below, for anyone who is interested.
>> Even when I’m a bit confused, I’m glad to be working with ConTeXt rather than any other system!
> 
> % your hack:
> 
> \define[1]\mycolordot{\def\mycolor{#1}\framed[location=top,offset=0pt,boffset=-\strutdepth,xframe=off]{\useMPgraphic{name}}}
> 
> % but ... you just don't want struts
> 
> \define[1]\mycolordot{\def\mycolor{#1}\framed[location=top,offset=0pt,strut=no,frame=off]{\useMPgraphic{name}}}
> 
> % and no offset but also no invisible frame
> 
> \define[1]\mycolordot{\def\mycolor{#1}\framed[location=top,offset=overlay,frame=off]{\useMPgraphic{name}}}
> 
> playing with framed for a while alway spays back
> 
> Hans
> 
> 
> -----------------------------------------------------------------
>                                          Hans Hagen | PRAGMA ADE
>              Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
>       tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
> -----------------------------------------------------------------

___________________________________________________________________________________
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
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-01-14 23:25 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-14 15:16 Itemize columns with MPgraphics: another vertical spacing puzzle Gavin via ntg-context
2022-01-14 19:10 ` Solved! " Gavin via ntg-context
2022-01-14 22:18   ` Hans Hagen via ntg-context
2022-01-14 23:25     ` Gavin via ntg-context

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).