Rahmen positionieren

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

ChristianMuc
**
Beiträge: 40
Registriert: Do, 25.12.2008 18:32

Rahmen positionieren

Beitrag von ChristianMuc »

Hallo,
Ich habe folgendes Problem:

Ich möchte eine Rahmen im linken Rand einer Seite positionieren. In diesem Rahmen sollen zwei Trennstriche eingefügt werden, die die Seite dritteln. Diese Striche möchte ich einfügen, damit die Seite optimal geknickt werden kann, damit sie in eine Briefumschlag mit Sichtfenster passt.
Einen Textrahmen konnte ich einfügen. Ich hab auch auch die Seitenverankerung auf ....AT_PAGE gesetzt. Leider kann ich nicht die Position des Rahmen verändern. Xray liefert mir eine Fehlermeldung, wenn ich die aktuelle Position auslesen möchte. Auch kann ich nicht mit der Methode .setPosition() den Rahmen an eine andere Stelle verschieben.
Was mache ich falsch? Ich habe den Rahmen mit
odoc.createinstance()...
und dann mit
odoc.text.insertstext(Textcursor,Rahmen,false) einfügt.
Wäre schön, wenn mir eine helfen könnte.
Danke
Christian
turtle47
*******
Beiträge: 1849
Registriert: Mi, 04.01.2006 20:10
Wohnort: Rheinbach

Re: Rahmen positionieren

Beitrag von turtle47 »

Hallo Christian,

warum setzt Du die Falzmarken denn in einen Rahmen?
Ohne Rahmen kann man Falzmarken so einfügen:

Code: Alles auswählen

Sub FalzMarkenSetzen
	oDoc = thisComponent
	myLine = "oLine"
	for i = 0 to 1
	aLine = Array(8700,19200)
	oLine = myLine & i
	oLine = oDoc.createInstance("com.sun.star.drawing.LineShape")
	dim oPos3 as new com.sun.star.awt.Point
	oPos3.X = 600 'Randabstand
	oPos3.Y = aLine(i)
	dim LineSize as new com.sun.star.awt.Size
	LineSize.Width = 500  '50 mm lang
	with oLine
		.name = "Falzmarke" & i + 1
		.lineColor = RGB(172, 168, 153)
		.lineWidth = 1
		.position = oPos3
		.Size = LineSize
		.AnchorType = com.sun.star.text.TextContentAnchorType.AT_PAGE
		.MoveProtect = true
	end with
	oDoc.Drawpage.add(oLine)
	next 
End Sub
Ausserdem könntest Du das Makro umgehen, wenn Du Dir eine Dokumentvorlage mit den Falzmarken erstellst und diese als Standardvorlage definierst.

Viel Erfolg.

Jürgen
Software hat keinen Verstand - benutze deinen eigenen...!

Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
ChristianMuc
**
Beiträge: 40
Registriert: Do, 25.12.2008 18:32

Re: Rahmen positionieren

Beitrag von ChristianMuc »

Hallo Jürgen, ich hab zwar jetzt schon mit einer Tabelle realisiert, werde aber deine Moeglichkeit auch gleich mal ausprobieren. Sie scheint eleganter zu sein .
Mit Seitenvorlagen habe ich es auch schon probiert. Aber da ich nicht weiss, wie ich die universell abspeichere, habe ich das verworfen: Ich starte naemlich aus einer Calcanwendung eine Writeranwendung, erstelle bis zu 300 Serienbriefe mit dem Datensatz entsprechenden Texten. Leider ist mir nicht gelungen, dieses Seitenanwendung so zu speichern, dasss ich sie dann immer benutzen kann: Zudem konnte ich nur die erste Seite damit formatieren, die anderen nicht mehr (Meine Formatierung hat Absenderkopfzeile, Adressefeld, Datumsfeld etc (alles mit Rahmen realsisiert)



Christian
Antworten