Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Insertar imagen en posicion X del encabezado de pág. de word

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Insertar imagen en posicion X del encabezado de pág. de word Responder citando

Me gustaría saber si se puede insertar una imagen en una posición determinada del encabezado de página y como
Si alguien me puede ayudar

Un saludo para todos los Builderos!!
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

Para el ejemplo usamos una instancia de Word abierta:

- Añadimos la cabecera:
Código:
#include <comobj.hpp>
// En versiones anteriores a la 6 ademas la siguiente:
// #include <utilcls.h>

- Añadimos la siguiente función:
Código:
inline float MmToPoints(float mm) {return mm * 2.83464567;}

- Y usamos el siguiente código en un botón por ejemplo:
Código:
Variant word = GetActiveOleObject("Word.Application");
Variant doc = word.OlePropertyGet("ActiveDocument");

Variant sections = doc.OlePropertyGet("Sections");
Variant footers = sections.OlePropertyGet("First").OlePropertyGet("Headers");
Variant footer = footers.OleFunction("Item", 1 /*wdHeaderFooterPrimary*/);

Variant shapes = footer.OlePropertyGet("Shapes");
Variant shape = shapes.OleFunction("AddPicture",
    "c:\\dir\\imagen.bmp", // ruta a la imagen
    false,                 // Vincular imagen al documento?
    true);                 // Guardar la imagen vinculada con el documento?

// Coordenadas relativas al borde de la página
//  en este ejemplo a 100 mm. del borde izquierdo y a 10 mm del superior
shape.OlePropertySet("RelativeHorizontalPosition", 1 /*wdRelativeHorizontalPositionPage*/);
shape.OlePropertySet("Left", MmToPoints(100));
shape.OlePropertySet("RelativeVerticalPosition", 1 /*wdRelativeVerticalPositionPage*/);
shape.OlePropertySet("Top", MmToPoints(10));


Esta probado en BCB6 usando Office2007, no se que tal ira en otras versiones. En esta aunque nos salgamos del recuadro de cabecera lo sigue considerando como cabecera y saldrá en todas las páginas de fondo..
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Gracias Leo, como siempre tienes respuesta para todo.

Lo probaré y si me da algún problema te lo digo.

Un saludo.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

Gracias Leo, como siempre tienes respuesta para todo.

Lo probaré y si me da algún problema te lo digo.

Un saludo.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.