Я создаю документ PDF с использованием шаблона XSLT с помощью iTextSharp в моем приложении ASP.net MVC.
Я добавлю DataSet в шаблон XSLT и получу окончательную строку HTML следующим способом
private static XmlDocument GetDataPopulatedXmlFromXslt(string xsltFilePath, DataSet dataToBePopulated)
{
var xslCompiledTransform = new XslCompiledTransform();
xslCompiledTransform.Load(xsltFilePath);
var objectXmlDoc = new XmlDocument();
objectXmlDoc.LoadXml(dataToBePopulated.GetXml());
var strBuilder = new StringBuilder();
using (var xmlWriter = new XmlTextWriter(new StringWriter(strBuilder)))
{
xslCompiledTransform.Transform(objectXmlDoc, xmlWriter);
var xsltXmlOutDoc = new XmlDocument();
xsltXmlOutDoc.LoadXml(strBuilder.ToString());
return xsltXmlOutDoc;
}
}
Следующим шагом будет создание документа iTextSharp, как показано ниже
public void ParseXhtmlContents(string xhtml)
{
//Instantiate handler
var elementhandler = new ElementHandler();
//Bind a reader to text
using (TextReader sr = new StringReader(xhtml))
{
//Parse
XMLWorkerHelper.GetInstance().ParseXHtml(elementhandler, sr);
}
//Loop through each element
foreach (var element in elementhandler.Elements)
{
var div = element as PdfDiv;
if (div != null)
foreach (var table in div.Content.OfType<PdfPTable>())
{
table.HeaderRows = 1;
}
_iTextDocument.Add(element);
}
}
В строке xhtml у меня будет тег изображения, например <img src="\\network\subfolder\image.png">
Это изображение загружается в мой окончательный PDF, только если ВСЕ группе пользователей предоставлено разрешение на подпапку папку.
Необходимо удалить разрешение ВСЕ от этого пути и предоставить доступ нужному пользователю.
Может ли кто-нибудь указать, какой группе пользователей необходимо предоставить разрешение для загрузки изображения в документ?