Dibujar con GD::Simple array multidimensional
Publicado: 2015-03-18 11:49 @534
Hola, compañeros Perleros, ¿qué tal? Pues nuevamente con un problema de programación (¡ja, ja, ja!) Les platico un poco, ya que no he encontrado la manera de hacer esto.
Tengo un script que me genera una imagen de una tabla con una lista de números y la dibujo con GD::Simple.
Lo que quiero hacer es ordenar estos datos de manera que el primer grupo se escriba en forma de lista y al terminar ese grupo de datos escriba el siguiente a su lado derecho en forma de lista también.
Les pongo un ejemplo:
Este es el array:
y quiero mostrarlo así:
Cuando es un array de una sola dimensión no tengo problemas en enlistar. El problema es cuando es multidimensional ya que primero quiero escribir en "y" y luego en "x" siguiendo "y".
Utilizo lo siguiente para arrays de una dimensión:
Y el resultado es:
Sé que parece un poco confusa mi manera de explicar (incluso para mi misma ) pero básicamente es el problema que tengo... Lo hice de está manera y no con un módulo para generar tablas porque lo necesito así con GD. Y que la salida sea una imagen png.
Espero que puedan ayudarme.
Saludos.
Tengo un script que me genera una imagen de una tabla con una lista de números y la dibujo con GD::Simple.
Lo que quiero hacer es ordenar estos datos de manera que el primer grupo se escriba en forma de lista y al terminar ese grupo de datos escriba el siguiente a su lado derecho en forma de lista también.
Les pongo un ejemplo:
Este es el array:
Using perl Syntax Highlighting
- @noSerie = (['6764A10','6765A10','6766A10', '6767A10'],['6854B01','6855B01','6856B01']);
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4
y quiero mostrarlo así:
Using text Syntax Highlighting
Tabla1
Dato1 Dato2
6764A10 6854B01
6765A10 6855B01
6766A10 6856B01
6767A10
Dato1 Dato2
6764A10 6854B01
6765A10 6855B01
6766A10 6856B01
6767A10
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4
Cuando es un array de una sola dimensión no tengo problemas en enlistar. El problema es cuando es multidimensional ya que primero quiero escribir en "y" y luego en "x" siguiendo "y".
Utilizo lo siguiente para arrays de una dimensión:
Using perl Syntax Highlighting
- my $ini = 100;
- my @Prod = ('Tornillos', 'Clavos');
- foreach(@Prod){
- $img->moveTo($ini, 25); #(x,y)
- $img->string($_);
- $ini= $ini+50;
- }
- my $ini2 = 40;
- my @item = (1..5);
- foreach(@item){
- $img->moveTo(20, $ini2); #(x,y)
- $img->string($_);
- $ini2= $ini2+20;
- }
- open my $fh, ">listaProductos.png";
- binmode $fh;
- print $fh $img->png;
- close $fh;
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
Y el resultado es:
Using text Syntax Highlighting
Sé que parece un poco confusa mi manera de explicar (incluso para mi misma ) pero básicamente es el problema que tengo... Lo hice de está manera y no con un módulo para generar tablas porque lo necesito así con GD. Y que la salida sea una imagen png.
Espero que puedan ayudarme.
Saludos.