domingo, octubre 09, 2005

Jugueteando e Impresión en MonoUML

Me la he pasado estos días libres entre pensando por lo ocurrido y corrigiendo cosas, pero también he querido agregar cosas nuevas a lo que ahora tenemos, he jugado un buen rato con Gnome.Print, en verdad es una librería sin documentación (claro la versión #), la versión en C, como es normal esta excelentemente documentada, lo difícil son los ejemplos, que escasean, claro que viendo los que vienen en las fuentes te pueden ayudar mucho, después de instalar devhelp para mirar la documentación en C de Gtk+ y mirar los fuentes de F-Spot para ver como es en C#, he entendido varias cosas, al menos tengo el hola mundo con imagénes creadas a partir del Canvas funcionando, el cual Manuel anda escribiendo y al cual prontó me uniré al esfuerzo, claro que sigue el error del desface del screen, por supuesto que es obvio, pues se toma lo dibujado actualmente por el sistema X-Window y en ese momento se crea la ventana de preview que hace que se descuadre todo, la solución también ya la encontré utilizando System.Drawing todo parece mucho más fácil.

Ahora, por lo tanto, se creará un System.Drawing.Bitmap que se llenará a partir de los elementos dibujados, (si se quiere se salvará en un archivo temporal, un jpg, gif, png, tiff, etc) y a través de la magía de Gtk.DotNet lo pasaremos por la impresora a través de Gnome.Print. Suena sencillo. Espero en un par de días tenerlo en vivo.

La idea es tener un canvas como la figura de abajo, claro que con nuestros elementos y no figuras o... ¿por qué no imágenes ya creadas? alguna vez pensé que sería buena idea, tener themes de los elementos UML, y porque no... que cada quien dibujará sus elementos y asi mismo estos se relacionaran ... un sólo ControlPointGroup bastaría para ello y claro las Edge para relacionarles. En este momento me vienen unas dudas con relación a esto ¿consumirián más recursos? ¿sería más estetico? ¿sería más rápida una implementación así?, en fin, una idea...

GDI+ Sample     GDI+ Sample

Después presentarlo para impresión y listo. Todos felices. La FAQ de libgnomeprint, resuelve una buenas preguntas en lo que se refieren al rendering final de la impresión, en realidad la librería es buena, sólo falta un poco de documentación para C# y mono en general, a ver si pronto escribo algo.

Además he pensado en que deberíamos basar nuestro espacio en un Wiki, la tendencia eso indica, DokuWiki ha sido mi preferido, desde que Fabian me lo presento, porque no requiere una base de datos para funcionar, pero MediaWiki también es bueno, aunque a pesar de ello, me gustaría primero tener un buen tema antes de usar alguno, se que no es tan importante, pero bueno siempre me he fijado en los detalles visuales, no soy diseñador ni quiero serlo, pero tener identidad propia siempre es importante, mientras tanto seguiremos con lo que ahora tenemos.

Ayer en mi momento de ocio, miré una pelicula, en realidad la pelicula era pésima (The Mask 2), pero salió un carácter que me dió mucha risa, cada vez que lo veo me hace reir, "la rana que canta", es de la Warner Bros y usualmente sale en caricaturas de ellos, es tan cómica, en fin.

De nuevo mañana al trabajo, así es esto.