[英]Get bookmark coordinates in PDF
我正在將簽名圖像放置到PDF的確切位置。 在PDF中,我添加了報告工具書簽,因此我可以知道在何處放置簽名圖像。 問題是我不知道如何獲取書簽坐標。 ITextsharp
可能?
------>編輯書簽的圖片
----->編輯
解決方法是:
PdfReader pdfReader = new PdfReader(GlobalVars.PdfFile);
IList<Dictionary<string, object>> bookmarks = SimpleBookmark.GetBookmark(pdfReader);
string BookmarkID = "";
for (int j = 0; j < bookmarks.Count; j++)
{
//MessageBox.Show(bookmarks[i].Values.ToArray().GetValue(0).ToString());
string s = bookmarks[j].Values.ToArray().GetValue(0).ToString();
if (bookmarks[j].Values.ToArray().GetValue(0).ToString() == "##PODPIS##")
{
BookmarkID = bookmarks[j].Values.ToArray().GetValue(1).ToString();
}
}
var map = SimpleNamedDestination.GetNamedDestination(pdfReader, true);
foreach (KeyValuePair<string, string> entry in map)
{
if (entry.Key.ToString() == BookmarkID)
{
string[] LocationArray = entry.Value.Split(null);
GlobalVars.SignatuePageNumber = Convert.ToInt32(LocationArray[0]);
GlobalVars.SignatureX = float.Parse(LocationArray[2], CultureInfo.InvariantCulture.NumberFormat);
GlobalVars.SignatureY = float.Parse(LocationArray[3], CultureInfo.InvariantCulture.NumberFormat);
}
}
解決方法是:
PdfReader pdfReader = new PdfReader(GlobalVars.PdfFile);
IList<Dictionary<string, object>> bookmarks = SimpleBookmark.GetBookmark(pdfReader);
string BookmarkID = "";
for (int j = 0; j < bookmarks.Count; j++)
{
//MessageBox.Show(bookmarks[i].Values.ToArray().GetValue(0).ToString());
string s = bookmarks[j].Values.ToArray().GetValue(0).ToString();
if (bookmarks[j].Values.ToArray().GetValue(0).ToString() == "##PODPIS##")
{
BookmarkID = bookmarks[j].Values.ToArray().GetValue(1).ToString();
}
}
var map = SimpleNamedDestination.GetNamedDestination(pdfReader, true);
foreach (KeyValuePair<string, string> entry in map)
{
if (entry.Key.ToString() == BookmarkID)
{
string[] LocationArray = entry.Value.Split(null);
GlobalVars.SignatuePageNumber = Convert.ToInt32(LocationArray[0]);
GlobalVars.SignatureX = float.Parse(LocationArray[2], CultureInfo.InvariantCulture.NumberFormat);
GlobalVars.SignatureY = float.Parse(LocationArray[3], CultureInfo.InvariantCulture.NumberFormat);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.