r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[!REBOL3 Host Kit]

BrianH
19-Oct-2010
[203x2]
AdrianS, according to the diagrams it looks like origin is doubling 
as the alley, not indent.
The vertical portion of the indent is the intracolumn spacing between 
paragraphs, not the intercolumn spacing between columns.
AdrianS
19-Oct-2010
[205x3]
is the vertical spacing in para/space just for specifying glyph spacing 
when using vertical writing or does it also specify the line spacing 
when using horizontal text?
Brian - what does intra-column mean when talking about the setting 
for just one paragraph?
can't each paragraph have it's own settings?
Cyphre
19-Oct-2010
[208x3]
multi para example:
[
	columns 2
	origin 20x20
	margin 20x20
	para p1
	text "abcd..."
	para p2
	text "efgh..."
]

all the spacing, indentation will be defined in the p1 and p2 objects 
(see the doc for all possible fields)
well, the margin shouldn't be probably relative to the gob/size but 
rather absolute pair position  so it is possible to define paragraphs 
that can be scrolled.
( so in this example it could be: margin (gob/size - 20) )
Oldes
19-Oct-2010
[211x2]
It would be good to have per paragraph margin imho.
So you could indent complete paragraph.
Cyphre
19-Oct-2010
[213]
how it would work in the multi-column mode?
Oldes
19-Oct-2010
[214x3]
I'm not sure if I understand what do you mean by absolute margin 
position, but sounds to be quite difficult to work with it.
margin only inside the size of the column of course.
In most cases there will be one columns only texts and complete paragraph 
indentation is used very often. At least in web pages.
Maxim
19-Oct-2010
[217]
one thing which is sorely missing in the general GUI concepts of 
text is flowing text from boxes to boxes.
  

multi-columns are an example of a simple floating text box implementation... 
maybe you could go all the way and add support for arbitrary text 
boxes which flow with content from "previous" boxes when text reaches 
the end of the previous box?
Oldes
19-Oct-2010
[218x2]
in HTML is not only margin, but also padding.
Maxim, you are asking for InDesign made in REBOL? ;)
AdrianS
19-Oct-2010
[220x2]
problems is that if you model some of this on CSS in terms of spacing, 
insets, etc, you lack the higher level stuff like columns, flows 
between areas (like Petr and Max are saying)
problem is...
Cyphre
19-Oct-2010
[222]
Oldes, imagine you have gob of 200x300 size but you want to have 
layout of two paras in total size of 400x600. In such case you'll 
set MARGIN 400x600 to ensure the paragraph layout is filled inside 
this space. And then you can use SCROLL to move the content inside 
the gob.
Maxim
19-Oct-2010
[223x2]
its actualy not that complicated... in the sense that you must only 
know the coords of the boxes (something like sub gobs) and then when 
the text reaches the lower right corner of a box, a decision is made... 
either the box can stretch a little or you jump to a new box to render 
into.


implementing columns thus becomes a specific case of a generalized 
solution.  just provide two sub gobs and texts flows from one to 
the other.


note that the text boxes are independent from paragraph... these 
boxes are the actual "page" area which the rtf uses to calculate 
bounds and word-wrapping and offsets and such.
(I was replying to AdrianS)
Cyphre
19-Oct-2010
[225]
Maxim, I talked about the floating toext to multiple gobs with Henrik. 
I think we could add feature that will tell you at what position 
the text reached the lower right corner of gob and then you could 
pass the rest to any other gob using REBOL code. It is imo better 
to not make this system at the low-level as it can get easily complex.
BrianH
19-Oct-2010
[226]
Only square embedded gobs? No curve-around-image? Just asking...
Oldes
19-Oct-2010
[227]
Using margin for specifying width of the text is strange.. or I miss 
something. When you want text with size 400x600, why to specify it 
by margin?
Cyphre
19-Oct-2010
[228x2]
BrianH: if your embedded gob is transparent, you can render any shape 
inside, or do you mean anything else?
Oldes, feel free to come with better word.
BrianH
19-Oct-2010
[230x2]
Some DTP or word processing functions let you embed non-rectangular 
objects in their text, and the text wraps around their curves. I 
don't expect your system to do this, but it's a really cool feature.
The reason I don't expect it is that gobs are defined rectangularly, 
afaik.
Oldes
19-Oct-2010
[232]
Cyphre, in your example the correct word sounds like WIDTH 400x600
Cyphre
19-Oct-2010
[233]
ah, got it...since the gobs are rectangular we would need to provide 
kind of mask for that. Could be a cool feature but I'd play with 
this once everything else is working :)
Oldes
19-Oct-2010
[234]
I can imagine MAGIN to be margin around all content, including all 
columns. But than I'm missing inter paragraph indentation, which 
could be named PADDING
Cyphre
19-Oct-2010
[235]
hmm, WIDTH for X and Y value?? doesn't too intuitive to me.
Oldes
19-Oct-2010
[236]
sorry, SIZE
Cyphre
19-Oct-2010
[237x2]
MARGIN was meant for the whole content.
inter-para indenation would be defined by the para/indent/y (specific 
for each para) and origin/x (defined for the whole gob) as it is 
on the picture in the doc.
Oldes
19-Oct-2010
[239x3]
I mean horizontal
not to indent just first line, but complete paragraph.. possibly 
also from right side.
in InDesign you can also specify number of rows which should be indetnet 
at the beginning of the paragraph (not just one line) so you can 
place image as a first letter.
Cyphre
19-Oct-2010
[242x3]
the origin/x will do the ondentation from right side
(see the picture)
number of rows for indent : this is not neccessary imo as if you 
place gob with image at the beginning the text will flow around automatically.
Oldes
19-Oct-2010
[245]
Hm.. when I think about it, it would be better not to use image, 
but letter with bigger height.. but than it would be required to 
be able flow around such a letter. But that's maybe too complicated. 
Better to have something working first.
Cyphre
19-Oct-2010
[246x2]
Regarding the padding for para: after Oldes showing me some example 
I got it and I thing this could be useful to add
Oldes, you could add gob with big letter inside at the beginning 
of the para :)
Oldes
19-Oct-2010
[248]
I know, but how the text will continue? will it start at the same 
baseline, or top aligned so it could flow around like in old books?
Cyphre
19-Oct-2010
[249x2]
But yes, we should think realistic and define balance between the 
simplcity and full blown browser engine.
The control of the positioning/flow around the gobs in the text is 
not yet specified in details but we would need some option which 
will define this behaviour.
Pekr
20-Oct-2010
[251]
Cyphre - I am not sure if we should accept CSS document model here, 
as users/designers are used to it? I tried to search for some typography 
vocabulary, but there is not much in it:

http://www.proximasoftware.com/fontexpert/terms/


Then I also looked into MS Word (well, not the best DTP option, I 
know :-), but I am somehow satisfied, how paragraph styling is done 
in it, and I find it pretty much flexible. So few of my notes:

PAGE:
--------
- text-gob - let's say it equals to page


- margin should allow to set 4 sides, as is with CSS and even DTP 
systems. DTP system talk about margin as about the space to the edge 
of the paper. I don't know, how such terms are used in conjunction 
to R3 GUI, but we should somehow find-out, how to not be confusing. 
But - having just a single marign is not imo sufficient.


- origin should replace scroll, and it should mean offset. But looking 
into VID2, origin just did what you propose - but I don't like it, 
as it required us to introduce offset to VID2.

PARA:


- indent - e.g. MS Word defines: indent-left, indent-right (kind 
of creates margins/padding, if you relate to CSS terms), then they 
have indent-special - first-line | "pre-indent" (-first-line,not 
much usefull). It also has check-box for "mirror setting", which 
changes indent-left to inner, and indent-right to outer (dunno what 
it is good for)


- spacing - top-space | bottom-space - but here, it is not inner 
space in paragraph, it is more of an indentation between paragraphs. 
In other words - I can imagine calling it even padding (as we are 
used from VID2, we used space there for the auto-spacing). It allows 
you to set, that it will not add space in between two paragraphs 
of the same style. It also allows you to set spacing for rows - either 
by float, or by multiples, 1,5 rows, double, the-least-possible (pixels), 
exactly (pixels)


- paging - some stuff to set in regards to paragraph and paging, 
as linking of paragraphs, linking of lines

- runaround settings (dunno if correct english term)
Maxim
20-Oct-2010
[252]
last one would be line wrapping?