in reply to •Re: Forcing a string with no spaces to wrap to fit on the screen
in thread Forcing a string with no spaces to wrap to fit on the screen

Thanks for the suggestions, i've tried each and with varying success. I like the ­. The main problem with that is that i'm using Mason, and Mason has a handy |h thing which strips out HTML and things like &anything before displaying the string to the screen, so I can't really make any substitutions and add HTML code in... even escaped HTML code. So i'm a little bit stuck. I can of course just not use the Mason |h flag, but ideally I would like to just put everything in a table cell and FORCE that cell not to be more than x pixels wide. However if there are no line breaks or spaces in the string I don't think there is a HTML construct that will allow me to do this.

I hope I am making sense here.

I suppose i'm looking for a HTML solution to wrap around the string to force it to fit into the space I want, rather than actually changing the string itself.

Is this possible?

Thanks,

Tom

Replies are listed 'Best First'.
Re^2: •Re: Forcing a string with no spaces to wrap to fit on the screen
by andyf (Pilgrim) on Jun 09, 2004 at 21:26 UTC
    Tom, maybe I'm missing something important, but HTML table cells will wrap automatically. Setting width=50% for a cell should force wrapping to a maximum of half the current total column span.

    I just tried it and I see the problem about spaces. Hmm. Afaik, somehow spaces are gonna have to go in there somehow. ..
    #!/usr/bin/perl my $bigstring = 'qawsedrftgyhujikolplokijuhygtfrdeswaqawsedrftgyhujiko +lp'; my $width = 10; print padit($bigstring,$width,"\n"); sub padit { my $padme = shift; my $width = shift; my $separator = shift; my $position = 0; my $padded; while ($position < length $padme) { $padded .= substr $padme, $position, 1; $position++; if ($position % $width == 0) { $padded .= $separator; } } return $padded; }
    best of luck
    Andy