MigraDoc:在横向和纵向页面上居中水印

时间:2014-01-30 19:54:03

标签: c# .net pdf pdfsharp migradoc

我想在我的所有页面上添加水印并将其居中。这对于只有一组肖像页面来说至少是“眼球”非常简单,但在本文档中同时包含纵向和横向页面。

我的研究表明可以用这些元素完成:

myImage.RelativeVertical = MigraDoc.DocumentObjectModel.Shapes.RelativeVertical.Line;
myImage.RelativeHorizontal = MigraDoc.DocumentObjectModel.Shapes.RelativeHorizontal.Margin;

但我不确定如何利用它们来做我想做的事。我当前的代码看起来像是这样(对偶数页重复):

    var myImage = section.Headers.Primary.AddImage("C:\myImage.png");

    myImage.Height = "4.5cm";
    myImage.LockAspectRatio = true;
    myImage.Top = "2.0cm";
    myImage.Left = "1.5cm";

当然,这不是一张中心图片,但我希望修改它以做我想做的事。

1 个答案:

答案 0 :(得分:4)

唉,我误解了一些功能。所有页面的居中都可以这样完成:

    myImage = section.Headers.EvenPage.AddImage("C:\\myImage.png");

    myImage.Height = "4.5cm";
    myImage.LockAspectRatio = true;
    myImage.Top = MigraDoc.DocumentObjectModel.Shapes.ShapePosition.Center;
    myImage.Left = MigraDoc.DocumentObjectModel.Shapes.ShapePosition.Center;
    myImage.RelativeHorizontal = MigraDoc.DocumentObjectModel.Shapes.RelativeHorizontal.Margin;
    myImage.RelativeVertical = MigraDoc.DocumentObjectModel.Shapes.RelativeVertical.Margin;