mirror of
https://github.com/greenshot/greenshot
synced 2025-08-20 13:33:27 -07:00
Revert of #283, the solution was worse than the initial issue. [skip ci]
This commit is contained in:
parent
42d8fdd15e
commit
18e817e490
1 changed files with 13 additions and 47 deletions
|
@ -618,49 +618,6 @@ namespace Greenshot.Drawing
|
|||
DrawText(graphics, rect, lineThickness, lineColor, drawShadow, _stringFormat, text, _font);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert the StringFormat information into a TextFormatFlags
|
||||
/// This is important for the rending to work, have it aligned to the correct place
|
||||
/// </summary>
|
||||
/// <param name="stringFormat">StringFormat</param>
|
||||
/// <returns>TextFormatFlags</returns>
|
||||
private static TextFormatFlags ConvertStringFormat(StringFormat stringFormat)
|
||||
{
|
||||
var flags = TextFormatFlags.TextBoxControl | TextFormatFlags.WordBreak;
|
||||
if (stringFormat == null)
|
||||
{
|
||||
return flags;
|
||||
}
|
||||
|
||||
switch (stringFormat.LineAlignment)
|
||||
{
|
||||
case StringAlignment.Center:
|
||||
flags |= TextFormatFlags.VerticalCenter;
|
||||
break;
|
||||
case StringAlignment.Far:
|
||||
flags |= TextFormatFlags.Bottom;
|
||||
break;
|
||||
case StringAlignment.Near:
|
||||
flags |= TextFormatFlags.Top;
|
||||
break;
|
||||
}
|
||||
|
||||
switch (stringFormat.Alignment)
|
||||
{
|
||||
case StringAlignment.Center:
|
||||
flags |= TextFormatFlags.HorizontalCenter;
|
||||
break;
|
||||
case StringAlignment.Far:
|
||||
flags |= TextFormatFlags.Right;
|
||||
break;
|
||||
case StringAlignment.Near:
|
||||
flags |= TextFormatFlags.Left;
|
||||
break;
|
||||
}
|
||||
|
||||
return flags;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// This method can be used from other containers
|
||||
/// </summary>
|
||||
|
@ -699,8 +656,8 @@ namespace Greenshot.Drawing
|
|||
{
|
||||
shadowRect.Inflate(-textOffset, -textOffset);
|
||||
}
|
||||
|
||||
TextRenderer.DrawText(graphics, text, font, shadowRect, Color.FromArgb(alpha, 100, 100, 100), ConvertStringFormat(stringFormat));
|
||||
using Brush fontBrush = new SolidBrush(Color.FromArgb(alpha, 100, 100, 100));
|
||||
graphics.DrawString(text, font, fontBrush, shadowRect, stringFormat);
|
||||
|
||||
currentStep++;
|
||||
alpha -= basealpha / steps;
|
||||
|
@ -711,8 +668,17 @@ namespace Greenshot.Drawing
|
|||
{
|
||||
drawingRectange.Inflate(-textOffset, -textOffset);
|
||||
}
|
||||
|
||||
TextRenderer.DrawText(graphics, text, font, drawingRectange, fontColor, ConvertStringFormat(stringFormat));
|
||||
using (Brush fontBrush = new SolidBrush(fontColor))
|
||||
{
|
||||
if (stringFormat != null)
|
||||
{
|
||||
graphics.DrawString(text, font, fontBrush, drawingRectange, stringFormat);
|
||||
}
|
||||
else
|
||||
{
|
||||
graphics.DrawString(text, font, fontBrush, drawingRectange);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public override bool ClickableAt(int x, int y)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue