MigraDoc Добавление проблемы с водяными знаками - PullRequest
0 голосов
/ 13 февраля 2019

Я создал PDF-документ через MigraDoc, и до сих пор все прошло хорошо.Последний этап - добавить водяные знаки для «черновиков», для которых я нашел несколько примеров, но я просто не могу заставить их работать!

Я создаю раздел как обычно

section = document.AddSection()
section.PageSetup.PageFormat = PageFormat.A4

... и затем добавьте водяной знак, используя

Sub AddWatermark(section As Section)
    Dim imageFile = Server.MapPath("./images/draft.png")
    Dim myImage = section.Headers.EvenPage.AddImage(imageFile)
    myImage.Height = Unit.FromMillimeter(100)
    myImage.LockAspectRatio = True
    myImage.Top = Shapes.ShapePosition.Center
    myImage.Left = Shapes.ShapePosition.Center
    myImage.RelativeHorizontal = Shapes.RelativeHorizontal.Margin
    myImage.RelativeVertical = Shapes.RelativeVertical.Margin
    myImage.WrapFormat.Style = Shapes.WrapStyle.Through
End Sub

. Затем я создаю остальную часть документа, которая в основном представляет собой таблицу, и выводится в браузер.Все это работает, и я прошел отладку, чтобы убедиться, что изображение выбрано и никаких исключений, но у выходного PDF нет водяного знака.Я пробовал разные изображения, размеры и т. Д., Но на самом деле ничто не добавляет водяного знака, поэтому любые идеи приветствуются!

1 Ответ

0 голосов
/ 13 февраля 2019

Кажется, что в моем случае критическая точка состоит в том, что когда я устанавливаю изображение, его нужно установить в section.Headers.Primary.Настройка в четной странице, кажется, работает, только если у вас есть разные четные и нечетные страницы, и кажется, игнорируется в противном случае.Кто-нибудь после решения VB.NET, смотрите ниже, как это работает для меня, и я не нашел решения VB в других местах

Sub AddWatermark(section As Section)
		Dim imageFile = Server.MapPath("./images/draft.png")
		Dim header As HeaderFooter = section.Headers.Primary
		Dim myImage = header.AddImage(imageFile)
		myImage.Height = Unit.FromMillimeter(200)
		myImage.LockAspectRatio = True
		myImage.Top = Shapes.ShapePosition.Center
		myImage.Left = Shapes.ShapePosition.Center
		myImage.RelativeHorizontal = Shapes.RelativeHorizontal.Margin
		myImage.RelativeVertical = Shapes.RelativeVertical.Margin
		myImage.WrapFormat.Style = Shapes.WrapStyle.Through
	End Sub
...