Система, в которой я работаю над печатями PDF с определенной информацией. Он делает это, создавая зеленое текстовое поле в верхнем правом углу документа. Затем он рисует определенную строку поверх зеленого пространства. Это работает для тысяч PDF-файлов, но для одного текст невидим, даже если поле рисовано. Я все еще могу выбрать текст и скопировать его в другое, но он невидим в PDF.PDFsharp DrawString Текст Невидимый для некоторых PDF
К сожалению, я не могу поделиться PDF, но это PDF 1.4. Что может вызвать это?
Код для тиснения:
private static XGraphics drawString(XGraphics xgr, PdfPage page, string printString, int pageNumber = 0)
{
XFont font = new XFont("Verdana", 10, XFontStyle.BoldItalic);
var textSize = xgr.MeasureString(printString, font);
var width = textSize.Width;
var height = textSize.Height;
double xMin = 0;
double yMin = 0;
if (page.Rotate == 90)
{
xMin = page.Height - textSize.Width;
var state = xgr.Save();
xgr.DrawRectangle(XBrushes.LimeGreen, xMin, yMin, width, height);
xgr.Restore(state);
xgr.DrawString(printString, font, XBrushes.Black, new XRect(0, 0, page.Height, page.Width), topRight());
}
else
{
xMin = page.Width - textSize.Width;
var state = xgr.Save();
xgr.DrawRectangle(XBrushes.LimeGreen, xMin, yMin, width, height);
xgr.Restore(state);
xgr.DrawString(printString, font, XBrushes.Black, new XRect(0, 0, page.Width, page.Height), topRight());
}
return xgr;
}
private static XStringFormat topRight()
{
XStringFormat format = new XStringFormat();
format.Alignment = XStringAlignment.Far;
format.LineAlignment = XLineAlignment.Near;
return format;
}
Я попытался с помощью Dipose() на XGR и его Повторная инициализация перед каждым из его вытяжных действий. Я попытался сохранить и восстановить состояние xgr между действиями рисования, как показано в коде. Я также попробовал разные шрифты и размеры шрифтов.
Дайте мне знать, какие метаданные о PDF актуальны, и я поделюсь этим.
Это не поможет мне. Мой зеленый прямоугольник нарисован отлично в рассматриваемом PDF-файле, но моя строка - нет. Мой код работал над тысячами PDF-файлов, поэтому мне не нужен этот код. Разве я что-то не хватает? – JosephGage