Sto usando. Disegno netto per disegnare un diagramma. È essenzialmente un grafico a barre in pila. Il problema che ho è che voglio ridurre la quantità di linee nello stile di tratteggio in modo da ridimensionarlo per renderlo più chiaro. Mi sono guardato intorno ma non ho trovato nulla che potesse aiutarmi.Come posso ridimensionare lo stile di apertura disegnato in un rettangolo?
Disegno un rettangolo e quindi utilizzo un hatchbrush per riempirlo ma a causa delle dimensioni dell'immagine lo hatchfill diventa meno chiaro. Grazie per eventuali suggerimenti.
Il tratteggioStyle e tipi di pennello sono memorizzati nel db e io uso una funzione di supporto per restituirli. Quindi disegno il rettangolo e dopo aver ottenuto il pennello riempio il rettangolo. In sostanza, voglio aumentare il riempimento del tratteggio se ciò può essere fatto.
g.DrawRectangle(gridpen, startX, startY, BOREHOLE_RECT_WIDTH, layerRectHeight);
brush = GetBoreholeBrush(l.SoilTypeMatrixLevel1Id.PrimaryBrushType,
l.SoilTypeMatrixLevel1Id.PrimaryFillStyle,
l.SoilTypeMatrixLevel1Id.PrimaryColour);
g.FillRectangle(brush, startX, startY, BOREHOLE_RECT_WIDTH, layerRectHeight);
E la funzione getBrush; il tipo di pennello, stile di tratteggio e colore vengono memorizzati nel db e utilizzato per creare il pennello restituita:
//===================================
private Brush GetBoreholeBrush(string BrushType, string HatchStyle, string Colour)
//===================================
{
//Decide on what brush type has been chosen.
Brush brush;
if (BrushType.ToLower() == BrushTypes.HatchBrush.ToString().ToLower())
{
brush = new HatchBrush(GetHatchStyle(HatchStyle),
Color.Black, ColorTranslator.FromHtml(Colour));
}
else if (BrushType.ToLower() == BrushTypes.SolidBrush.ToString().ToLower())
{
brush = new HatchBrush(GetHatchStyle(HatchStyle),
Color.Black, ColorTranslator.FromHtml(Colour));
}
else if (BrushType.ToLower() == BrushTypes.TextureBrush.ToString().ToLower())
{
brush = new HatchBrush(GetHatchStyle(HatchStyle),
Color.Black, ColorTranslator.FromHtml(Colour));
}
else
{
brush = new HatchBrush(GetHatchStyle(HatchStyle),
Color.Black, ColorTranslator.FromHtml(Colour));
}
return brush;
}
Funzione per tornare allo stile tratteggio:
//===================================
private HatchStyle GetHatchStyle(string FillStyle)
//===================================
{
//Loop through each hatch tyle and return the correct one.
foreach (HatchStyle style in Enum.GetValues(typeof(HatchStyle)))
{
if (style.ToString().ToLower() == FillStyle.ToLower())
{
return style;
}
}
return HatchStyle.Vertical;
}
Come si può vedere nell'immagine qui sotto lo stile di tratteggio non è chiaro.
_as l'immagine la dimensione aumenta_ Devi spiegare questo! Come è aumentata la dimensione dell'immagine? Ridimensionando l'immagine? (Ovviamente poi tutti i pixel vengono ridimensionati e sfocati, invece disegnalo nella giusta misura e poi riempi ..) – TaW
Scusa, è stata una brutta spiegazione da parte mia. La dose della dimensione dell'immagine non cambia. Perché è una grande immagine lo stile di tratteggio diventa meno chiaro e voglio ridimensionarlo –
Quindi, in sostanza, hai un grande grafico e il tuo hatchstyle è pixel-small e vuoi allargare le larghezze delle linee e gli spazi tra le linee nel tratteggio del portellone; quindi quando l'immagine è stampata o ingrandita, il tratteggio/le linee saranno ancora visibili come tratteggiate e non come "grigie"? – quetzalcoatl