Thursday, August 23, 2007

Magic the gathering - prox[i] printing

In week-endul trecut aveam ceva timp liber, aşa ca am decis sa imprim nişte proxi-uri Magic the gathering.
(pentru cei care nu stiu: MagicTheGathering este o creaţie a firmei "Wizards of te Coast". E un joc de cărţi inspirat din domeniul fantasy, iar jucătorii sunt de obicei fani Doungeons&Dragons sau fantasy si RPG's http://www.wizards.com/magic/)



Am ales 2-3 deckuri de pe siteul oficial, si am început sa descarc artwork-ul cărţilor, urmând sa le pun într-un document word. Dupa un timp am observat ca mărimea cărţilor imprimate astfel sunt mult mai mici decât cele ale cărţilor originale, aşa ca am am facut un batch resize cu irfanView. Fain pana aici, dar când am reintrodus imaginile in word, acestea au devenit de 3 ori mai mari deşi mărirea de rezoluţie era in jur de 40 de pixeli pe direcţie. (cam 10% in plus de mărimea originala)

Fiindcă nici cum nu am putut rezolva chestia de mărire in word am decis sa scriu un program care sa îmi rezolve problema (60 de cărţi pe un deck, nu o sa fac 60 de resizeuri cu mouseul Razz )

Am ales PHP fiindcă aveam nevoie de o soluţie rapida. Deckurile le-am descărcat in format XML (cu MTG Studio) iar pentru artwork am scris un crawler care sa caute artworkul pe siteul official MTG dupa care copieze imaginile într-un repository local.

Scriptul aduna cărţile de joc, si pregăteşte o imagine de rezoluţia a4, pe care resample-eaza artworkul cărţilor de joc gata pentru imprimare.

Interfaţa inca nu are, dar poate fi găsit pe serverul meu. (daca aveţi noroc funcţionează)

Structura programului:
http://89.136.54.71/mtg/

Exemplu care imprima deckul "Waking Nightmares" din blockul "Torment".

http://89.136.54.71/mtg/getPics.php

Daca cineva a avut sau are aceasta problema, poate sa ceara codul sursa, e gratuit Razz

No comments: