PDF-Writer acentos


#1

Hola, estoy haciendo un informe, pero da un error por el tema de los
acentos.
Este es mi código :

PDF::SimpleTable.new do |tab|
    tab.title = @proyecto.descripcion
    #Ponemos las columnas en orden
    tab.column_order = ["col1", "col2", "col3", "col4", "col5",

“col6”, “col7”]

    tab.columns["col1"] = PDF::SimpleTable::Column.new("col1") {

|col|
col.heading = ‘CONCEPTO’
}
tab.columns[“col2”] = PDF::SimpleTable::Column.new(“col2”) {
|col|
col.heading = ‘Coste total’
}
tab.columns[“col3”] = PDF::SimpleTable::Column.new(“col3”) {
|col|
col.heading = ‘% sobre coste total’
}
tab.columns[“col4”] = PDF::SimpleTable::Column.new(“col4”) {
|col|
col.heading = ‘Subvención pública’
}
tab.columns[“col5”] = PDF::SimpleTable::Column.new(“col5”) {
|col|
col.heading = ‘Aportación entidades’
}
tab.columns[“col6”] = PDF::SimpleTable::Column.new(“col6”) {
|col|
col.heading = ‘% Cofinanciación’
}
tab.columns[“col7”] = PDF::SimpleTable::Column.new(“col7”) {
|col|
col.heading = ‘% Cofinanciación sobre subvención’
}

    #Propiedades de la tabla
    tab.show_lines = :all
    tab.show_headings = true
    tab.orientation = :center
    tab.position = :center
    tab.shade_color = Color::RGB::Grey90
    data = []

Y este es el error que me da :

app/controllers/informe_controller.rb:39: syntax error, unexpected
tIDENTIFIER, expecting kDO or ‘{’ or ‘(’
}
^

Sin embargo, si le quito los acentos ( sólo fallan los del heading de
“col6” y “col7” :S), funciona perfectamente.

¿Se os ocurre algo?

Gracias de antemano.


#2

Yo utilice PDF-Writer y tuve ese problema, lo que pasa es que no soporta
UTF8. Te dejo el enlace al post donde explique lo que hice, espero te
sirva.

saludos,
Juan P…


#3

On Mar 26, 2007, at 8:44 AM, Franrc wrote:

Hola, estoy haciendo un informe, pero da un error por el tema de los
acentos.

PDF::Writer no soporta Unicode por ahora.

Dijo su autor no hace mucho que si acaso lo añadiria con el tiempo
(Ruby >= 1.9) y en cualquier caso no se soportaria UTF8:

http://groups.google.com/group/ruby-talk-google/msg/434ff3af62f57485

Las confusiones vienen sobre todo de que en el manual de PDF::Writer
se menciona soporte para UTF16, pero no es correcto.

Los character encodings soportados por tanto no pueden representar
todo Unicode, estan documentados en el manual. Puedes tratar de tirar
con Iconv usando //IGNORE si a la practica la mayoria de los
caracteres que manejas pertenecen a alguno de ellos.

– fxn


#4

Juan P. wrote:

Yo utilice PDF-Writer y tuve ese problema, lo que pasa es que no soporta
UTF8. Te dejo el enlace al post donde explique lo que hice, espero te
sirva.

saludos,
Juan P…

Gracias Juan P., me podrías dejar el enlace? :smiley:

o algún ejemplo con Iconv.

Gracias a todos.


#5

Juan P. wrote:

Perdon! me comi el enalce, aqui te lo dejo.

http://ururails.wordpress.com/2007/01/05/solucionado-los-problemas-de-caracteres-especiales/

saludos,
Juan P…

PD. Tene en cuenta que tenes que hacer un require ‘iconv’

Gracias Juan P., ya lo he solucionado. Aunque la causa del error de
arriba, el iconv no me lo solucionaba. Lo he arreglado poniendo un par
de espacios al final (de casualidad). Pero he usado el iconv para
aquello que saca de la BBDD.

Sólo comentar que en el ejemplo que me has pasado pone como encoding :
(“ISO-8859-15//IGNORE//TRNSLIT”, “UTF-8”)

Por si alguien tiene el mismo problema, esta línea da error, no es
TRNSLIT, si no TRANSLIT.

(“ISO-8859-15//IGNORE//TRANSLIT”, “UTF-8”)

Saludos y gracias a todos.


#6

Perdon! me comi el enalce, aqui te lo dejo.

http://ururails.wordpress.com/2007/01/05/solucionado-los-problemas-de-caracteres-especiales/

saludos,
Juan P…

PD. Tene en cuenta que tenes que hacer un require ‘iconv’