Codigo binario imagen

Buenas!

Necesito obtener el codigo binario de una imagen, me vale usar un
formulario o cualquier metodo que se os ocurra.

Gracias

No me queda claro bien que es lo que deseas hacer
puedes explicarte un poco mas ?

Ing. Omar S. Jimenez Becerra

El día 14 de mayo de 2008 4:15, Ana F. <
[email protected]> escribió:

¿Has probado a hacer un file.open de la imagen y escribir su contenido
(readlines) en la variable?

2008/5/15 Ana F. [email protected]:

Hola Omar!

Lo primero muchas gracias por contestarme :slight_smile:

El problema que tengo es que me piden meter una imagen en un documento
rtf.

Tengo una plantilla rtf en la que sustituyo “marcas de agua” (@campo@)
por su valor y tengo que sustituir un @firma@ por el codigo de la imagen
de la firma.

Algo de código para que te hagas una idea:
entrada = “public/UserFiles/templates/plantilla.rtf”
salida = “public/uploads/expedientes/expediente.rtf”
#Se abren los dos ficheros: uno para lectura (entrada=plantilla) y otro
para escritura (salida=documento a generar)
old = File.open(entrada)
new = File.open(salida, “w”)
begin
while linea = old.readline # va leyendo linea a linea el fichero
linea_temp = linea
# comprobar si en la linea hay una ‘palabra especial’ y sustituirla
if linea.include?(’@firma@’)
linea_temp = linea_temp.gsub(’@firma@’, ¿?¿?¿?¿?)
end

Meti una imagen en un rtf y luego lo abrí con el editor de texto para
ver el código que generaba y me parecio que obteniendo el código binario
de esa imagen podría obtener el codigo que meter a ese @firma@ para que
me mostrase la imagen.

Esa imagen la guardo a través de un formulario. Probe a guardarlo en
base de datos como tipo BLOB pero nada.

Espero haberme explicado y que puedas ayudarme porque ya no se que
hacer, es desesperante… :frowning:

GRACIAS

Hola Omar!

Si probe y lo que me devuelve no es el código binario de la imagen, me
devuelve un código pero no me sirve :frowning:

Es que estuve probando eso, abrir la imagen con open y leerla pero me
devuelve un código q no me sirve. Probe pasando ese codigo a
binario con la función string_to_binary(value) pero no me tira.
Luego intente guardar la imagen a través del formulario como tipo BLOB
en la
base de datos que se supone que me guardaría el código binario pero
nada.

Gracias por las ideas y por molestarte en contestarme.

Todavía estoy aprendiendo RoR, pero en otros lenguajes, cuando abrías un
fichero con open, lo hacía en modo texto, igual hay alguna opción para
abrirlo en modo binario. En algún lenguaje me suena que era pasándole
“b”
como cuando pasas “w” para modo escritura. Igual en la doc de la función
read puedes ver algo dobre eso.

2008/5/15 Ana F. [email protected]:

Hola Igor!

Gracias por la idea pero ya habia probado. Intente abrirlo con la opcion
rb que se supone lo abre en modo binario pero no lo consegui. Voy a
probar con RTF a ver si me funciona.

Muchas gracias igualmente :slight_smile:

Hola,

El problema que tengo es que me piden meter una imagen en un documento
rtf.

si estás haciendo el documento tú a mano sin usar ninguna librería
tendrás que seguir el formato de RTF para las imágenes. Si no ha
cambiado el estándar (yo generaba RTF hace muuuuucho) tienes que meter
un elemento de tipo \pict que tiene unos parámetros opcionales y después
todos los datos de tu imagen. Por defecto la imagen tenía que ser un BMP
y los datos se pasaban en hexadecimal. Si los querías pasar en binario,
había que usar algo como \bin. Para eso te puedes bajar la
especificación de RTF de la web de microsoft y ver qué le tienes que
pasar.

otra opción es usar alguna librería ruby para generar RTF, que creo que
alguna hay, y te generaría la salida de forma transparente.

saludos,

javier ramírez

2008/5/15 Igor O. [email protected]:

Hola Javier!

La idea era sustituir una etiqueta @firma@ por el siguiente código:
{*\shppict{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw69\pich33\picwgoal1035\pichgoal495\wmetafile8

codigo_Imagen}}{\nonshppict{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw69\pich33\picwgoal1035\pichgoal495\wmetafile8

codigo_Imagen}}

siendo codigo_Imagen el codigo en hexadecimal (pense que en binario
gracias a tí me di cuenta que en hexadecimal) de la imagen. El problema
es que no se como obtener ese codigo.

Voy a mirar el api de RTF para ver si encuentro algo.

Gracias

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs