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

时间:2019-04-12 11:09:49

标签: c# wpf pdfsharp

我正在彼此绘制两个字符串,就像这样:

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));

但是我的问题是它们与文档末尾不一致。我想不出一种从头开始绘制这些字符串的方法。因此,£1,000.55始终保持一致。

示例:

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

我想要得到它,以便价格彼此一致。有没有办法指定字符串放置的结束坐标并向后绘制?因此它从字符串的末尾开始,并从该点开始绘制其余部分。我尝试了Measure字符串功能,但似乎无法正常工作。

我尝试了End X co-ord - text length,但未正确对齐它们。

1 个答案:

答案 0 :(得分:0)

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

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

相关问题