From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/16012 Path: main.gmane.org!not-for-mail From: Brooks Moses Newsgroups: gmane.comp.tex.context Subject: Blank figure hack: is there a better way? Date: Tue, 10 Aug 2004 10:47:39 -0700 Sender: ntg-context-bounces@ntg.nl Message-ID: <4.3.1.2.20040810103020.00b32668@cits1.stanford.edu> Reply-To: mailing list for ConTeXt users NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed X-Trace: sea.gmane.org 1092160221 16083 80.91.224.253 (10 Aug 2004 17:50:21 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Tue, 10 Aug 2004 17:50:21 +0000 (UTC) Original-X-From: ntg-context-bounces@ntg.nl Tue Aug 10 19:49:59 2004 Return-path: Original-Received: from ronja.vet.uu.nl ([131.211.172.88] helo=ronja.ntg.nl) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1Bual4-0006IO-00 for ; Tue, 10 Aug 2004 19:49:58 +0200 Original-Received: from localhost (localhost.localdomain [127.0.0.1]) by ronja.ntg.nl (Postfix) with ESMTP id 01A841277A; Tue, 10 Aug 2004 19:49:58 +0200 (CEST) Original-Received: from ronja.ntg.nl ([127.0.0.1]) by localhost (ronja.vet.uu.nl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 04644-03; Tue, 10 Aug 2004 19:49:57 +0200 (CEST) Original-Received: from ronja.vet.uu.nl (localhost.localdomain [127.0.0.1]) by ronja.ntg.nl (Postfix) with ESMTP id C253F12771; Tue, 10 Aug 2004 19:47:37 +0200 (CEST) Original-Received: from localhost (localhost.localdomain [127.0.0.1]) by ronja.ntg.nl (Postfix) with ESMTP id 35B0512771 for ; Tue, 10 Aug 2004 19:47:36 +0200 (CEST) Original-Received: from ronja.ntg.nl ([127.0.0.1]) by localhost (ronja.vet.uu.nl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 04644-02 for ; Tue, 10 Aug 2004 19:47:35 +0200 (CEST) Original-Received: from smtp1.Stanford.EDU (unknown [171.67.16.123]) by ronja.ntg.nl (Postfix) with ESMTP id 487151276D for ; Tue, 10 Aug 2004 19:47:35 +0200 (CEST) Original-Received: from Brooks1.stanford.edu (DNab42a61c.Stanford.EDU [171.66.166.28]) by smtp1.Stanford.EDU (8.12.11/8.12.11) with ESMTP id i7AHlWih003142 for ; Tue, 10 Aug 2004 10:47:33 -0700 X-Sender: brooks@cits1.stanford.edu X-Mailer: QUALCOMM Windows Eudora Version 4.3.1 Original-To: ConTeXt users list X-Virus-Scanned: by amavisd-new at ntg.nl X-BeenThere: ntg-context@ntg.nl X-Mailman-Version: 2.1.5 Precedence: list List-Id: mailing list for ConTeXt users List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: ntg-context-bounces@ntg.nl X-Virus-Scanned: by amavisd-new at ntg.nl Xref: main.gmane.org gmane.comp.tex.context:16012 X-Report-Spam: http://spam.gmane.org/gmane.comp.tex.context:16012 I'm doing a document which has a large logo in the upper right corner of the page. The logo (which is on a background layer) intrudes into the text area by a small amount, and so it would be nice to have the text wrap around it rather than having to do the wrapping by manual spacers and line-breaks. The "obvious" solution that I came up with for this is to put a blank right-aligned float at the top of each page (it's a presentation where all the page breaks are hand-coded, so that's easy to do), of about the size of the part of the logo that intrudes into the text. I defined a class of floats just for this: \definefloat[logospacer][logospacer] (Using the same name for the singular and plural was a hack to get around the fact that the manual doesn't indicate which of the two the \setupfloat command uses. Which is it?) So far, so good. Except that it's exceptionally hard to _get_ a blank float in ConTeXt, particularly one of a specified size. If I do this (and specify the size in a \setupfloat command): \placelogospacer[right, force]{none}{} I get a nice float exactly the size I want, but with a frame around it and the word "undefined" in the middle. If I put something in the float -- say, a letter, or a non-breaking space: \placelogospacer[right, force]{none}{~} The float suddenly becomes \textwidth wide, which is of course all wrong, but at least I have a blank float that's not undefined. If I put an \hbox in the float, with a fixed width, it stops stretching to fill the pagewidth, but unless I put something that actually makes a mark on the page, it still comes up with "undefined". (The "~" that worked earlier doesn't work if it's in an \hbox.) I tried a number of tricks -- hiding the nothing in a macro, using a zero-height rule, and so forth -- and ConTeXt was sufficiently clever to see through them all. There's also the annoyance that I have to specify the size of the float by the size of the \hbox, rather than in a convenient [width=...,height=...] fashion. Eventually, what I came up with was putting the mark somewhere off the page, with the following command: \placelogospacer[right, force]{none}{\hbox to 1cm{\hskip 5cm x}} This of course gives "overfull \hbox" errors, and is a really ugly hack, but the results are acceptable -- a float of size 1cm by 1 x-height, which doesn't put marks on the physical page. How can I do this better? Better yet, how can I do this properly? Thanks, - Brooks