PDF 문서에서 텍스트를 삭제해야합니다. 나는 목적을 위해 Aspose를 사용하고 있습니다 현재 TextFragmentAbsorber
을 사용하고 있습니다.Aspose.PDF 라이브러리를 사용하여 PDF 문서에서 텍스트를 제거 하시겠습니까?
참고 : 제 3 자 라이브러리는 사용할 수 없습니다. 삭제할 내용이 한 페이지에있는 경우
private string DeleteMachineReadableCode(string inputFilePath)
{
var outputFilePath = Path.Combine(Path.GetTempPath(), string.Format(@"{0}.pdf", Guid.NewGuid()));
try
{
// Open document
Document pdfDocument = new Document(inputFilePath);
// Create TextAbsorber object to find all the phrases matching the regular expression
TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("#START#((.|\r\n)*?)#END#");
// Set text search option to specify regular expression usage
TextSearchOptions textSearchOptions = new TextSearchOptions(true);
textFragmentAbsorber.TextSearchOptions = textSearchOptions;
// Accept the absorber for all pages
pdfDocument.Pages.Accept(textFragmentAbsorber);
// Get the extracted text fragments
TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;
// Loop through the fragments
foreach (TextFragment textFragment in textFragmentCollection)
{
// Update text and other properties
textFragment.Text = string.Empty;
// Set to an instance of an object.
textFragment.TextState.Font = FontRepository.FindFont("Verdana");
textFragment.TextState.FontSize = 1;
textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.White);
textFragment.TextState.BackgroundColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.White);
}
pdfDocument.Save(outputFilePath);
}
finally
{
if (File.Exists(inputFilePath))
File.Delete(inputFilePath);
}
return outputFilePath;
}
내가 내용을 바꿀 수 있어요 : 아래
내가 사용하고있는 코드입니다. 내 문제는 텍스트가 여러 페이지에 걸쳐있는 경우 TextFragmentAbsorber가 언급 한 정규식 패턴 ("#START#((.|\r\n)*?)#END#
")이있는 텍스트를 인식하지 못한다는 것입니다.
Aspose의 정규식 또는 일부 설정으로 내 문제를 해결할 수 있는지 제안 해주세요.
나는이 시나리오를 테스트하기 위해 특정 문서가 필요하기 때문에 귀하의 의견을 관찰했으며 소스 파일을 우리와 공유하도록 요청한 바 있습니다. Google 드라이브, Dropbox 등 무료 파일 호스팅 서비스를 사용하여 파일을 공유 할 수 있습니다. –
@FarhanRaza 업로드 : https://drive.google.com/open?id=1PALgqgXIltrAKcZuZ2ron_I2pD-8Wgqg –
요청한 파일을 공유해 주셔서 감사합니다. 나는 당신과 공유 한 데이터로 작업했지만 TextFragmentAbsorber가 한 페이지에 걸쳐 있어도 텍스트를 인식하지 못합니다.이 PDF에서 추출 할 문자열을 알려 주시면 그에 따라 정규식을 검사 할 수 있습니다 . 참고 : 저는 Aspose with Developer Evangelist에서 일합니다. –