

![]() | Start a set with this search |
![]() | Include this search in one of my sets |
![]() | Exclude this search from one of my sets |
![]() | Permalink to these results Paste this link in email or IM: |
| Atom feed for tracking future search results Paste this URL into your reader: |
3 messages in org.openoffice.fr.progRE: [prog] Couleur de fond ODG| From | Sent On | Attachments |
|---|---|---|
| Antoine POURCHEZ | Nov 23, 2007 3:08 am | |
| Bernard Marcelly | Nov 23, 2007 5:45 am | |
| Antoine POURCHEZ | Nov 26, 2007 8:43 am |

![]() | Permalink for this message Paste this link in email or IM: |
![]() | Permalink for this thread Paste this link in email or IM: |
| Atom feed for this thread Paste this URL into your reader: |
| Subject: | RE: [prog] Couleur de fond ODG | Actions... |
|---|---|---|
| From: | Antoine POURCHEZ (anto...@kelis.fr) | |
| Date: | Nov 26, 2007 8:43:27 am | |
| List: | org.openoffice.fr.prog | |
Merci pour ces infos. Elles m'ont permis de résoudre mon pb. Pour ceux que ça intéresse, voici l'implémentation en java : vDocDraw = vCompLoader.loadComponentFromURL(vUrl, "_blank", 0, vProps); XDrawPagesSupplier vDrawPagesSupplier_DocDraw = (XDrawPagesSupplier) UnoRuntime.queryInterface(XDrawPagesSupplier.class, vDocDraw); XIndexAccess vIndexedDrawPages = (XIndexAccess) UnoRuntime.queryInterface(XIndexAccess.class, vDrawPagesSupplier_DocDraw.getDrawPages()); XDrawPage vDrawPage = (XDrawPage) UnoRuntime.queryInterface(XDrawPage.class, vIndexedDrawPages.getByIndex(0)); ... // On crée l'objet BG XMultiServiceFactory mxMSF = (XMultiServiceFactory) UnoRuntime.queryInterface(XMultiServiceFactory.class, vDocDraw); Object oBg = mxMSF.createInstance("com.sun.star.drawing.Background"); XPropertySet vProps_BG = (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class, oBg); vProps_BG.setPropertyValue("FillStyle", com.sun.star.drawing.FillStyle.SOLID); vProps_BG.setPropertyValue("FillColor", new Integer(0xFFFF00)); // On affecte l'objet BG à la page XPropertySet vProps_DrawPage = (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class, vDrawPage); vProps_DrawPage.setPropertyValue("Background", vProps_BG); Antoine
-----Message d'origine----- De : Bernard Marcelly [mailto:marc...@club-internet.fr] Envoyé : vendredi 23 novembre 2007 14:46 À : pr...@fr.openoffice.org Objet : Re: [prog] Couleur de fond ODG
Message de Antoine POURCHEZ date 2007-11-23 12:09 :
Bonjour, Jaimerais via JAVA changer la couleur de fond dun ODG. Est-ce que qq a une piste sur les objets à utiliser ?
ODG ? plus clairement, document Draw. D'abord que veut-on faire ? changer la couleur de fond d'une page d'un document Draw, ou celle de l'arrière-plan, qui est souvent commun à plusieurs pages voire toutes ?
Dans les deux cas on utilise les propriétés du service com.sun.star.drawing.Background, soit sur la page, soit sur son arrière-plan (MasterPage).
Mais sur une page Draw, ce service n'est pas disponible d'origine. Pour Java, lire la petite documentation IDL du service. Il faut ensuite remplir les propriétés adéquates du service com.sun.star.drawing.FillProperties et affecter cet objet à la page.
Avec Basic (et Xray pour les recherches) c'est quand même plus facile:
dim maPage as object, bgd as object maPage = thisComponent.CurrentController.CurrentPage bgd = thisComponent.createInstance("com.sun.star.drawing.Background") bgd.FillColor = RGB(255,255,200) bgd.FillStyle = com.sun.star.drawing.FillStyle.SOLID maPage.Background = bgd
Pour modifier l'arrière-plan, le service Background est déjà disponible, il suffit de modifier les propriétés.
Avec OpenOffice.org versions 2.x le volet Page de Draw n'est pas repeint automatiquement.
______ Bernard







