RMagick annotate - problem z jakoscia tekstu

Witam

Probuje stworzyc grafike skladajaca sie z postawowej grafiki, nalozonej na niej mniejsza grafike (composite) oraz w mniejszej grafice chce napisac tekst. Ogolnie system ma pozwolic na utworzenie czegos w rodzaju komiksu.
Pierwszy krok jaki wykonuje, to przy pomocy metody composite dodaje chwmurki na podstawowa grafike oraz zapisuje. Nastepnie na ten obrazek narzucic chce tekst. Uzywam metody annotate z Draw, no i tu pojawia sie problem. Juz pomijam sytuacje, ze musze sam lamac tekst, bo inaczej zostanie on wpisany w jednej linii. Ogolnie sprawa wyglada tak, ze tekst ktory narzucam na grafike pojawia sie, jednak w postaci bardzo slabej jakosciowo. Do tego w ogole nie uwzglednia okreslonej czcionki…

Probowalem juz wszelkich sposobow, roznego formatu plikow i dalej mam to samo. Robilem tez tekst przy pomocy Image.draw() z caption a nastepnie ten obrazek nakladalem na obrazek glowny, jednak trwa to zbyt dlugo, a i jakosc nie poprawia sie. (Jedyny plus caption w tym przypadku, to mozliwosc ustawienia size, czyli maks szerokosci tekstu gdzie bedzie automatycznie zalamywany)

Uzywam MacBooka z 10.7 Moutaint Lion, zainstalowany imagemagick. Moze sprzet ma jakies znaczenie w tym przypadku.

Oto kod

img_orig.annotate(txt, 0, 0, val['pos_x'].to_i+val['textarea']['pos_x'].to_i, val['pos_y'].to_i+val['textarea']['pos_y'].to_i, self.resource[key]) do txt.font_family = "arial" txt.pointsize = 24 txt.fill = 'black' txt.font_weight = Magick::BoldWeight txt.encoding = 'Unicode' end
Pierwszy raz bawie sie tak konkretnie RMagickiem, jednak po przeczytaniu paru poradnikow sadzilem, ze wszystko pojdzie szybko. I szlo szybko, dopoki nie utknalem na tym #$%#$%# tekscie… Prosze podpowiedzcie mi gdzie popelniam blad, ewentualnie czy moge uzyc jakiegos zamiennika (inny gem jak Mini Magick?).

Nie dodawałem napisów w RMagicku ponad zabawy, ale kwerendy do gugla ze słowami “rmagick antialiasing” zwracają całkiem obiecujące wyniki.

Zwracaja, owszem, jednak za wiele to nie zmienia. Bawilem sie text_antialias = true oraz false i znacznych zmian nie widac. Tymczasowym rozwiazaniem dla mnie jest zmniejszenie czcionki, wtedy tekst nie jest tak “brzydki”. Nadal jednak nie mam pelnego rozwiazania tego problemu… Dzieki mimo wszystko za podpowiedz Tomash, dosc sarkastyczna nota bene :wink:

Ktos jeszcze moze podrzucic jakis pomysl?

To nie był sarkazm, po prostu nie mam innego pomysłu jak by się to mogło w RMagicku nazywać :frowning:

spoko, dzieki za odpowiedz :slight_smile: kombinowalem dalej z tym i niestety nie moge dojsc jak to rozwiazac… czuje sie jakbym lazil po jakims labiryncie. zostawie narazie to jak jest, a moze przeczyta ten post ktos, kto mial podobny problem i udalo sie go rozwiazac.

Kolejne pytanie - czy RMagick jest jedynym sensownym (albo i nie) rozwiazaniem dla gralfik w railsach? Moze ktos uzyl czegos innego ciekawego? Niekoniecznie na imagemagicku?

na pewno jest jeszcze mini_magick i cos tam jeszcze, rayan nawet jakies screencasty ma o tym

w dokumentacji ImageMagick jest sporo o pisaniu po obrazkach z przykładami i tam wyglada ten tekst ładnie, moze czcionke zmień?

http://www.imagemagick.org/Usage/text/

Dzieki gotar.

Ogolnie znalazlem rozwiazanie mojego problemu, w sumie dzieki Waszym podpowiedziom, ktore naprowadzily gdzie szukac. Wszystko rozchodzilo sie o fonty jakie mailem zainstalowane z imagemagickiem. A dokladnie to byla chyba tylko Helvetica, ktora jest domyslna…
Po reinstalacji imagemagicka oraz gema RMagick wszystko pieknie smiga :slight_smile:

Tutaj jak zainstalowalem najnowszego imagemagick

curl -OL ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz tar -xzf ImageMagick.tar.gz cd ImageMagick-6.7.2-7/ ./configure --prefix=/usr/local --disable-static --with-modules --without-perl --without-magick-plus-plus --with-quantum-depth=8 --disable-openmp --with-gs-font-dir=/usr/local/share/ghostscript/fonts -—with-freetype=yes make sudo make install
tylko oczywiscie GhostScript jest wymagany. Pozniej jeszcze szybka reinstalacja gema rmagick, text_antialias = true w kodzie i wszystko ladnie dziala.

Dzieki za sugestie chopoki :wink: