2017-02-01 1 views
0

Sous Windows, j'essaie de rendre la ligne en définissant un style en tant que DashStyle.Dot en utilisant l'échelle de page Graphiques et Graphiques 0.50. Mais la ligne n'est pas rendue dans la forme. S'il vous plaît quelqu'un me suggérer ce ....Rendu de la ligne DashStyle.Dot à l'aide de Graphics.PageScale as 0.50

se référer à l'extrait de code ci-dessous:

protected override void OnPaint(PaintEventArgs e) 
    { 
     gp = e.Graphics; 
     gp.PageScale = 0.50f; 
     using (System.Drawing.SolidBrush myBrush = new System.Drawing.SolidBrush(System.Drawing.Color.White)) 
     { 
      gp.FillRectangle(myBrush, new RectangleF(30, 100, 400, 600)); 
     }    
     // Create pen. 
     using (Pen blackPen = new Pen(Color.Black, 0)) 
     { 
      blackPen.DashStyle = System.Drawing.Drawing2D.DashStyle.Dot; 
      gp.DrawLine(blackPen, 30, 200, 430, 200); 
     } 
    } 

Répondre

0

Je crois qu'il est en cours d'élaboration, mais il a trop faible largeur, il est pratiquement invisible. Essayez une autre largeur, similaire à:

 using (Pen blackPen = new Pen(Color.Black, 4.0F)) 
     { 
      blackPen.DashStyle = System.Drawing.Drawing2D.DashStyle.Dot; 
      gp.DrawLine(blackPen, 30, 200, 430, 200); 
     } 
+0

Salut Dev, merci pour votre réponse. En fait, cette erreur ne se déclenchera que si nous définissons l'échelle de pages Graphics sur 0.5. Sinon, cela fonctionnera. –

+0

Quelle erreur obtenez-vous? –

+0

Je n'ai pas eu d'erreur. Ici, j'ai mentionné une erreur car la ligne DashStyle.Dot n'est pas rendue lorsque nous définissons l'échelle de la page sur 0.5. Mais si j'essaie de définir la valeur est inférieure ou supérieure à 0,5, cela fonctionnera bien. Dans mon projet, j'ai créé le Pen et défini la largeur sur Zero par défaut. –