 | OO-Snippets: Add Page NumberCommons| Keywords | page number, header |
|---|
| Language | ooRexx |
|---|
| Application | Writer |
|---|
| Authors | |
|---|
| Supported Versions | 2.0.x |
|---|
| Supported OS | All |
|---|
| Question | How can I add the current page number and total page number to the header?
|
|---|
| Answer | |
|---|
xScriptContext=uno.getScriptContext()
oDoc=xScriptContext~getDocument
xTextDoc=oDoc~XTextDocument
xServiceManager=oDoc~XMultiServiceFactory
xPageStyle=xServiceManager~createInstance("com.sun.star.style.PageStyle")
xFamiliesSupplier = xTextDoc~XStyleFamiliesSupplier
xStyle=xFamiliesSupplier~getStyleFamilies~getByName("PageStyles")~XNameContainer
xHeader=xStyle~getByName("Standard")
HeaderProperty=xHeader~XPropertySet
HeaderProperty~setPropertyValue("HeaderIsOn", box("boolean", .true))
headerText=HeaderProperty~getPropertyValue("HeaderText")~XText
pageCount=xServiceManager~createInstance("com.sun.star.text.TextField.PageCount")
pageCountTC=pageCount~XTextContent()
pageCountPS=pageCount~XPropertySet()
pageCountPS~setPropertyValue("NumberingType", box("Short", bsf.getConstant("com.sun.star.style.NumberingType", "ARABIC")))
pageNumber=xServiceManager~createInstance("com.sun.star.text.TextField.PageNumber")
pageNumberTC=pageNumber~XTextContent()
pageNumberPS=pageNumber~XPropertySet()
pageNumberPS~setPropertyValue("NumberingType", box("Short", bsf.getConstant("com.sun.star.style.NumberingType", "ARABIC")))
pageNumberPS~setPropertyValue("SubType", box("Short", "1"))
headerText~setString("Page ")
headerText~insertTextContent(headerText~getEnd, pageNumberTC, .false)
headerText~getEnd~setString(" of ")
headerText~insertTextContent(headerText~getEnd, pageCountTC, .false)
::requires UNO.CLS
|
Changelog| Date | User | Modification |
|---|
| 2006-07-09 | | Initial version |
|