XGraphics从字符串末尾绘制字符串

问题描述 投票:0回答:1

我正在绘制两个相互叠加的字符串,如下所示:

gfx.DrawString("Complete Total (Ex VAT) £" + string.Format("{0:0.00}", totalCompletePrice), new XFont(roboto, 10 * 4, XFontStyle.Regular), XBrushes.Black, new XPoint(2445, 2225));
gfx.DrawString(header + " Total (Ex VAT) £" + string.Format("{0:0.00}", totalCompletePrice), new XFont(roboto, 10 * 4, XFontStyle.Regular), XBrushes.Black, new XPoint(2445, 2295));

但我的问题是它们与文档的结尾不一致。我无法想出从最后开始绘制这些字符串的方法。所以1000.55英镑总是互相串联。

例:

This is a really long header total £999.99
          Complete Total (Ex VAT) £9999.99

我想得到它所以价格相互内联。有没有办法特定字符串放置的结束坐标并向后绘制?所以它从字符串的末尾开始,从那一点开始绘制其余部分。我尝试了测量字符串功能,但似乎没有正常工作。

我试过End X co-ord - text length,但它没有正确对齐它们。

c# wpf pdfsharp
1个回答
0
投票

尝试使用XGraphics.DrawString参数的XStringFormat变体并指定例如XStringFormats.TopRight或另一个右对齐选项。

您也可以使用XTextFormatter类。可以在此处找到显示右对齐文本的演示: http://pdfsharp.net/wiki/TextLayout-sample.ashx

© www.soinside.com 2019 - 2024. All rights reserved.