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

World: r3wp

[!REBOL3 GUI]

Robert
8-Aug-2010
[2385x4]
Not being an expect but IIRC R2 text rendering is not done using 
AGG. From this alone a lot of known problems might be coming.
In R3 text rendering will be through AGG. We will look into unicode 
as well right from the start.
I just hat a short chat with Cyphre about this. And on Windows & 
Linux the glyph outlines are used to render the fonts.
So, this uses OS native font infrastructure.
shadwolf
8-Aug-2010
[2389x3]
nice  :) beacasue R2 font system was a pain ... knowing what works 
where was difficult...
I experienced it when porting area-tc to linux ... the rendering 
was ok but as the font wasn't fixed size the editing part was messed 
up.
but once again R2  AGG/draw text  wasn't desinged to handle this 
... we used fixed fonts because we had no other why to obtain the 
x and y size of each displayed glyph so in other word that a lack 
of a basic lower level function.
Robert
8-Aug-2010
[2392]
We are aware of most of the text rendering issues and IMO it makes 
sense that we try to get a release out of the door ASAP so you can 
all take a look and give feedback.
shadwolf
8-Aug-2010
[2393x7]
and ofcourse fied fonts where properly handle only on widows ... 
 fun thing was i tryed rendering using the same TTF file on linux 
but it was managed as unfixed font on linux ...
so see assuming fixed fonts is a global concept is a wrong thing 
it better to say ok font will be not fixed lets handle this properly 
and offer a way to manage them the easier way...
we needed to know the size of the letters displayed on screen because 
first of all in R2 when you call 2 times a text instruction the rendering 
at piled up at same place and not disposed one after another on the 
X axis with natural spacing... so draw [ text 10X10 "a" text "b"] 
renders a "b" over the "A" and not "A" followed by "B". And it's 
logical ... text instruct was then designed to handle a serie a letter 
or several series of letter organised in distinct block we can call 
words... but you see that concept doesn't fit with the need of having 
an interaction anytime with any letter componing the words.
and in the richtext proposition of Carl made 2 years ago (times flyes..) 
we find again this block concept wich is related to the way MakeDoc 
format handle things ...  like in HTML  for example you have flags 
that defines a rendering style. But the things betwin the flags can't 
evolve... they are not supposed to change font style or font size 
or font color. See that's what i would call a we treat text as block 
and not as single element able to singularly evolve on their own 
without affecting the surrounding elements.
ofcourse you still can say a <H1> </H1> instead of the basic regular 
seting will take this font this color this size but that will affect 
all it's content and not only a part of it ...
and then if you want to have an atomical approach then MakeDoc dialect 
becomes too verbous to be efficient... like in HTML more you want 
stylised things more you pile up flags and more you have problems 
debuging and having a direct acces to your raw document content... 
So it's clear that a real design have to be set for this richtext 
even if in the end rendering html or MAkeDoc or makeDocPro  with 
that dialect means a conversion stage.
that's why the proposition of carl to have an open flag system was 
cool ... he presented it years ago as a variable inside draw dialect 
to hold styles ... And i think people didn't see the good points 
in this approach ...
Robert
8-Aug-2010
[2400x3]
Any reference to this concept?
The idea is that we will have the low-level font rendering stuff 
accessible. Further a standard richt-text dialect will exist. If 
htis doesn't fit, you can change it and use any other concept to 
make richt-text available in apps.
The low-level part won't change.
Henrik
9-Aug-2010
[2403]
http://rebol.hmkdesign.dk/files/r3/gui/229.png

Text now works in hostkit.
Steeve
9-Aug-2010
[2404x2]
ugly as always though
But I know, not the time for such arguing
Henrik
9-Aug-2010
[2406]
correct
Steeve
9-Aug-2010
[2407]
And be sure I appreciate your efforts to terminate the job.
Gregg
9-Aug-2010
[2408]
Great news Henrik. Thanks for posting.
Pekr
9-Aug-2010
[2409]
Cool. But those fonts still look kind of terrible :-)
Oldes
9-Aug-2010
[2410]
Because it's not pixel precise font. I would like to see support 
for pixel precise font which could be in just a simple bitmap format.
Henrik
9-Aug-2010
[2411]
the font handling has not changed, AFAIK
Pekr
10-Aug-2010
[2412]
So what's left for 1:1 full View transition? View effect pipeline?
Henrik
10-Aug-2010
[2413x3]
Cyphre hasn't talked about that, but that is probably next. I don't 
know exactly how many parts are left.
Carl is continuing with callback development, which now requires 
an expansion of the event queue mechanism.
(that's all I know about that)
Pekr
10-Aug-2010
[2416]
cool info ... on callbacks :-)
shadwolf
10-Aug-2010
[2417]
Steeve is shorter than me and but ruder than me :)  ... Steeve ....
Rebolek
10-Aug-2010
[2418]
Because it's not pixel precise font.
 That's absolute nonsense.
shadwolf
10-Aug-2010
[2419]
but steeve have a point ...  it's ugly ... i don't know if that the 
antigrain thing but on the lower size fonts damn the rendering of 
the font is messed up ... you have on the same letter bigger and 
smaller parts... This was a problem we experienced on R2 too we noticed 
it. People said don't worry R3 is completly deferent etc... and in 
the result -> blured ugly fonts... like on R2  so wher is the gain 
?
Henrik
10-Aug-2010
[2420]
shadwolf for the 56743892th time, the font rendering is not properly 
utilized from AGG yet,
shadwolf
10-Aug-2010
[2421x2]
I appreciate the effort too ... but when i say this part needs a 
real work that's not to be rude etc... that's true !! damn how can 
i provide a simple functionnality like Zoom + / - for text if bellow 
font-size 14 bold the font rendering is ugly ?
Henrik ... when will it be properly supported ?
Henrik
10-Aug-2010
[2423]
when it gets important enough to fix. right now the priority is to 
get things working in the first place. we have an app to build and 
sell.
shadwolf
10-Aug-2010
[2424]
being properly supported means working that part serriously ... so 
when will that day come ?
Henrik
10-Aug-2010
[2425]
I don't know, shadwolf.
Rebolek
10-Aug-2010
[2426]
When it's done.
shadwolf
10-Aug-2010
[2427]
yeah so one day eventualy that's not how things should be done but 
that explain many things...
Henrik
10-Aug-2010
[2428]
Actually, that is the way things should be done. 1. Make things work. 
2. Make the working things pretty.
Cyphre
10-Aug-2010
[2429]
shadwolf: if font rendering quality(or whatever else)  is so critical 
for you I think with R3 you have couple of options now:


1) wait until you get it for free (some day) while bitching at AltME 
about it
2) download the HostKit and improve the code yourself

3) pay(or overpersuade or whatever) someone else to improve the HostKit 
for your needs


So it looks you have at least 2 more ways(besides the 1. point) how 
to solve it comparing to R2 situation. Isn't that great?
Robert
10-Aug-2010
[2430]
shadwolf: Take option 2 and send us the code, we will integrate is 
ASAP.
BrianH
10-Aug-2010
[2431x2]
If AGG (or R2) was relying on the OS font rendering, the behavior 
shadwolf decribed could be caused by Cleartype. If Cleartype is turned 
on, but the REBOL renderer isn't rendering with compatible antialiasing, 
fonts would look bad.
They would look even worse if the fonts were being rendered with 
antialiasing, but not the same antialiasing that Cleartype expects. 
Perhaps some rendering options aren't being used?
Maxim
10-Aug-2010
[2433x2]
people often mistake rasterizing and outline generating process. 
  there can be bugs in both steps which affect output.
there can also be some side-effects between the outline generator 
and expected rasterizing process.