Seite 1 von 1

Sichtbare Linienbreite abhaengig von der Linienstaerke

Verfasst: 25.09.2012, 14:19
von azurent
Hallo allerseits,

ich habe eine Frage (man kann die auch "doofe Frage" nennen).
Wie kann ich 2 Linien mit gleicher sichtabarer Breite aber mit unterschiedlicher Staerke erstellen?

Wenn die sichtbare Breite haengt von der Linienstaerke, in welchen Proportionen wird die Linie breiter?

Im Anhang sind 2 Linien, die gleiche Breite und gleiche x-Position haben, nur die Linienstaerke ist unterschiedlich. Man sieht aber, dass die Linien unterschiedlich breit sind.

Wenn es mit Linien nicht geht, dann werde ich die Textfelder mit Hintergrundfuellung verwenden.

Sichtbare Linienbreite abhaengig von der Linienstaerke

Verfasst: 25.09.2012, 18:34
von radzmar
Ja, das liegt daran wie das Linienende (cap property) deklariert ist.
Standardmäßig wird diese als 'square' gesetzt (die Standardeingenschaft wird nicht in der XML-Quelle angezeigt!!!), was dazu führt, dass die Linie um die Hälfte ihrer Linienstärke über das tatsächliche Linienende hinaus gerendert wird.
Man kann das durch einen kleinen Eingriff in der XML-Quelle ändern.

Füge zu dem XML-Code deiner Linie ...

Code: Alles auswählen

<draw name="Linie2" y="30mm" x="20mm" w="100mm" h="=0mm">
               <value>
                  <line>
                     <edge thickness="5mm"/>
                  </line>
               </value>
            </draw>
... die cap-Eigenschaft 'butt' hinzu.

Code: Alles auswählen

<draw name="Linie2" y="30mm" x="20mm" w="100mm" h="=0mm">
               <value>
                  <line>
                     <edge thickness="5mm" cap="butt"/>
                  </line>
               </value>
            </draw>
Die Linie wird dann unabhängig ihrer Dicke nur bis zum tatsächlichen Linienende gerendert.

Sichtbare Linienbreite abhaengig von der Linienstaerke

Verfasst: 27.09.2012, 09:37
von azurent
Herzlichen Dank.
So lernt man immer wieder was neues :)