If you have read in your childhood a Geronimo Stilton's book i, I am sure that you remember the style of the text, sometimes the words waswere decorated for making the act of reading more funny for kids,: example.
But when you are an adult you dontdon't have that little entertainment in your readings... why? In a nostalgic attack iI have decided to make an algorithm to create that output with every text in the world.
ItsIt's not very similar, but itsit's curious.
(ThisThese outputs are an imageimages because there isare two ways to create the output, show it in your program some way or create an output htmlHTML like mine.) thatsThis is my trulyraw output:
I have made an example of the algorithm (not golfed) in javaJava: Here is it This is the list of steps that you have to follow starting whit the base input:
- Start catching a random word in position 5-20(words)
- If the word is less or equals to 3 char long (e.g.
her
,a
) catch the next word until you find someone whit more than 3 char - "Clean the word", the transformed word cant contain characters like
"
or.
. The modified word has to starts and end whit [A-Z][a-z] and only whit that characters so... clean it if you need is the 3th step
Examples of this step:
if you word is | word cleaned
------------------|----------------
"Geronimo, | Geronimo
final. | final
air-conditioner | air-conditioner (DontDon't remove special characters inside the word)
- Put it randomly (1/3 cases) in bold, cursive or underlined (Only one at the same time for word)
- Give the word a bigger size than the rest of the text (how much big is your election)
- Give the word a random color (Try to make this in the most ranguewidest range of colors that you can, in my code creates an rgbRGB with javaJava random function in every color that goes from 0 to 255)
- Give the word any font... (What you want, doesntdoesn't matter what you use but must be diferentdifferent to the text font)
- fromFrom this word repeat the 1º1st step for grab a new one random word next to this
In step one by a random decision betwenbetween 5 and 20 you have to start in word 7 for example:
It was in the morning of *June* 21, and I had just set
paw in the office.
On time that you have modified that word you start again the random fuctionfunction and
you add the result to your actual position for get the next word... the result
of the random function this time has been 8:
It was in the morning of *June* 21, and I had just set
paw *in* the office.
But that word is 2 char long and the next one too so we take the word "office"
It was in the morning of *June* 21, and I had just set
paw in the *office.*
Office has a point at the end, lets clean it:
It was in the morning of *June* 21, and I had just set
paw in the *office*.
And the last step is modify this last word
- As iI have said, the output can be show in your program (or directly in htmlHTML if you uses javascriptuse JavaScript or something like that) or ouputsoutputs an htmlHTML text whit all the properties in it.
- The structure of the htmlHTML can be as you want always that, as long as when you execute it the result should follow the rules. Basically, you dontdon't have to make it like my example output.
- The base font and size can be what you want, iI have used Verdana in my example because iI think that the output is more... "beautiful"? and my code is not golfed.
- If you can, put a picture to the executed htmlHTML in your solution please.
- In reference to the randomness, the only thing that is relevant is that the output text has diferentdifferent colors, styles and words every time you run the program, if there is a more probablysome options are more probable (for example red is more problablyprobable than green at theas a color) dont mindthat doesn't matter.
- And in reference to the randomness of the colors, itsit's not necesarynecessary that all colors are contempledcontemplated in the output, try to put the most colorcolors you can... I know that this is not very mathematecallymathematically precise because is a problem to talk about colors when there isare so much ways to create them (rgbRGB, hexadecimal, hsvHSV...) so imI'm going to try to put a "minimal" rule:
- Lets say that the "extreme" colors must have non 0 probability, for example in rgb iRGB I mean that this colors are mandatory:
0,0,0
255,255,255
255,0,0
0,255,0
0,0,255
255,0,255
0,255,255
255,255,0
but if you want you can use too the colors in betwenbetween (That is the principal idea) And if for some reason you cant use that rule of extreme colors have in mind that at least the output must be 8 diferentdifferent colors. - This is codegolfcode golf, so the shortest code wins.