Po drátě 6: Řešení úlohy č. 68

PostScriptový obrázek v zadání úlohy obsahuje text "heslo hledej tady" se šipkami k menšímu rámečku. Pokud se budeme snažit chvíli v prohlížeči zvětšovat, uvidíme, že se text se šipkami stále opakuje v menší a menší variantě.

Heslo v naznačeném místě skutečně je, ale prakticky každý prohlížeč snahu o zvětšování vzdá výrazně dříve, než se k němu dostane. Pokud jste našli prohlížeč, který to zvládne přímo, pochvalte autora a podělte se v diskuzi. :)

Ostatní budou muset k řešení dojít jinou cestou. Mohlo by vás napadnout použít něco jako utilitku ps2ascii. Nápad je to dobrý, ale nezafunguje, protože text je vykreslován jako křivky. Podobně dopadnete při snaze nějak vypsat obsah zásobníku PostScriptu – ani tam není čitelný text.

Pokud se podíváte do zdrojového kódu, zjistíte, že je poměrně čitelný. Chtělo by to nějak eliminovat ty transformace. Vidíme, že transformační příkazy scale a translate se vyskytují jen uvnitř definice t. Smazat je nepůjde, protože potom na zásobníku budou překážet jejich parametry. Takže můžeme buďto hledat, kde se ty parametry berou, anebo využít znalosti, že obě funkce ze zásobníku vezmou dva záznamy a nic nevrací. Tudíž každou můžeme nahradit sekvencí dvou pop.

Po této úpravě se v obrázku objeví velký nápis polovina, který je heslem.

Zajímavosti

Snížením počtu iterací hlavní smyčky se dalo docílit toho, že písmenka hesla budou rozumně velká. Ale protože co iterace, to jedno další písmeno hesla, bude tímto vidět jen část hesla. Pravděpodobně proto robůtek dostal řadu pokusů počínaje po přes polo až po pokusy polomer a poloosa.

Úlohu vymyslel a vytvořil Marble.

Re: Po drátě 6: Řešení úlohy č. 68 gimli2 (25. 1. 2012 - 15:15) Sbalit(1)
Ok, chvalim PS_View 5.12 od panu autoru P. Strzelczyk a P. Pianowski.
V konfiguraci s GS 9.04 z defaultni distribuce texlive2011 pro windows.
Takto to vypadalo: http://imageshack.us/photo/my-images/407/zoome.png/
Re: Po drátě 6: Řešení úlohy č. 68 framerius (26. 1. 2012 - 20:09) Sbalit(1)
Tak mé řešení spočívalo v úpravě 3. řádku na:
"220 25700 translate 41000 41000 scale"
a to již v Inkscapu při maximalním zvětšení čitelné bylo ;-)