WaBis

walter.bislins.ch

JSG Test: LineWidth

Strichdicken (LineWidth) unterhalb 1.0 können nicht schmaler als 1 Pixel breit gezeichnet werden. Moderne Browser zeichnen solche Linien jedoch wegen dem Anti-Aliasing schwächer. Das igGraph-Modul sorgt dafür, dass Linien auf exakten Viewport-Koordinaten genau in die Mitte eines Pixels zu liegen kommen. So sind Strichdicken von 1, 3, 5 usw. so breit, dass exakt die entsprechende Anzahl Pixel in der Breite voll gezeichnet werden.

Linien der Dicke 0 werden möglichst genau 1 Pixel breit gezeichnet, unabhängig von der Skalierung der Grafik über die Browser Ansicht-Vergrösserung.

JsGraph Ausgabe

Vergleichsbild

so sollte es aussehen:

JSG_Test_LineWidth.png

Code

var jsg = NewGraph2D( { Width: 620, Height: 400, BorderColor: 'red', DrawFunc: Draw } );

function Draw( jsg ) {
  jsg.SetTextAttr( 'Arial', 12, 'black', 'normal', 'normal', 'left', 'bottom' );
  for (var i = 0; i < 12; i++) {
    var x = (i+0.5) * 50;
    jsg.SetLineWidth( i/3 );
    jsg.Text( (i/3).toFixed(2), x, 355 );
    for (var d = 0; d < 5; d++) {
      jsg.Line( x+d*6, 50, x+d*6, 350 );
    }
  }
}

Weitere Infos zur Seite
Erzeugt Dienstag, 2. Februar 2016
von wabis
Zum Seitenanfang
Geändert Dienstag, 2. Februar 2016
von wabis