0
This問題已存在,但未使用PDFsharp提供答案,但iTextPDF提供。PDFsharp:使用PDFsharp替換字符串
現在回到問題,我知道一種讀取和提取字符串的方法。但是我無法替換文本。
我的代碼:
var content = ContentReader.ReadContent(page);
var text = content.ExtractText();
text = text.Replace("Replace This", "With This");
XFont font = new XFont("Times New Roman", 11, XFontStyle.BoldItalic);
gfx.DrawString(text, font, XBrushes.Black, new XRect(0, 0, page.Width, page.Height), XStringFormats.Left);
// Save the document...
const string filename = "New Doc.pdf";
document.Save(filename);
}
public static IEnumerable<string> ExtractText(this CObject cObject)
{
if (cObject is COperator)
{
var cOperator = cObject as COperator;
if (cOperator.OpCode.Name== OpCodeName.Tj.ToString() ||
cOperator.OpCode.Name == OpCodeName.TJ.ToString())
{
foreach (var cOperand in cOperator.Operands)
foreach (var txt in ExtractText(cOperand))
yield return txt;
}
}
else if (cObject is CSequence)
{
var cSequence = cObject as CSequence;
foreach (var element in cSequence)
foreach (var txt in ExtractText(element))
yield return txt;
}
else if (cObject is CString)
{
var cString = cObject as CString;
yield return cString.Value;
}
}
這是一個示例代碼和這個人會忽略圖形和圖像。最後只在輸出文件中寫入文本。有沒有辦法可以替換文字而不用觸摸內容中的圖形和圖像?
謝謝你的迴應。我知道這是錯誤的:)這就是我在Q.中發佈的內容 – Enthusiastic
任何對PDFSharp構建的第三方庫的引用?如果你知道這是免費許可 – Enthusiastic
我不知道這樣的代碼是否存在。 PDFsharp不是爲文本提取而設計的,它不是爲文本操作而設計的。我知道有使用PDFsharp構建的文本提取代碼。 –