sto scrivendo un ciclo per inserire una riga (LineShape) su ogni pagina di un documento writer:
Codice: Seleziona tutto
Dim oDoc
Dim oVcursor
Dim oCursor
Dim oText
Dim oLine
Dim oLinePos As New com.sun.star.awt.Point
Dim oLineSize As New com.sun.star.awt.Size
oDoc = ThisComponent
oLinePos.x = 800
oLinePos.y = 23560
oLineSize.Width = 19400
oLine = oDoc.createInstance("com.sun.star.drawing.LineShape")
oLine.AnchorType = com.sun.star.text.TextContentAnchorType.AT_PAGE
oLine.HoriOrient = com.sun.star.text.HoriOrientation.NONE
oLine.VertOrient = com.sun.star.text.VertOrientation.NONE
oLine.Size = oLineSize
oLine.Position = oLinePos
oVcursor = oDoc.CurrentController.getViewCursor
oVcursor.jumpToFirstPage
oText = oDoc.Text
Do
oCursor = oText.createTextCursorByRange(oVcursor)
' oText.insertString(oCursor, "ciao", False) ' Per il testo funziona perfettamente
oText.insertTextContent(oCursor, oLine, False) ' alla seconda iterazione da errore
oCursor.gotoEnd(False)
Loop While oVcursor.jumpToNextPage
Mi rendo conto che inserire una linea come se fosse testo può creare problemi, ma almeno ho il cursore per posizionarmi in una pagina specifica...
Ho provato a fare lo stesso con drawPage.add(oLine), ma non sono riuscito a spostarmi dalla prima pagina...
Qualche suggerimento?