Я использую .net PdfBox для синтаксического анализа для извлечения текста из текста PDF Alongwith location.For, что при поиске я нашел следующий код Java:Невозможно переопределить метод PDFTextStripper.writeString (String text, List <TextPosition> textPositions) с использованием C#?
PDFTextStripper stripper = new PDFTextStripper()
{
@Override
protected void writeString(String text, List<TextPosition> textPositions) throws IOException
{
super.writeString(text, textPositions);
TextPosition firstProsition = textPositions.get(0);
TextPosition lastPosition = textPositions.get(textPositions.size() - 1);
writeString(String.format("[%s - %s/%s]", firstProsition.getXDirAdj(), lastPosition.getXDirAdj() + lastPosition.getWidthDirAdj(), firstProsition.getYDirAdj()));
}
};
stripper.setSortByPosition(true);
return stripper.getText(document);
Я превращал его в .net следующим образом:
class PDFTextLocationStripper : PDFTextStripper
{
public string textWithPostion = "";
protected override void processTextPosition(TextPosition text)
{
textWithPostion += "String[" + text.getXDirAdj() + "," +
text.getYDirAdj() + " fs=" + text.getFontSize() + " xscale=" +
text.getXScale() + " height=" + text.getHeightDir() + " space=" +
text.getWidthOfSpace() + " width=" +
text.getWidthDirAdj() + "]" + text.getCharacter();
}
protected override void writeString(java.lang.String text, java.util.List textPositions)
{
base.writeString(text, textPositions);
TextPosition firstProsition = (TextPosition)textPositions.get(0);
TextPosition lastPosition =(TextPosition) textPositions.get(textPositions.size() - 1);
writeString(String.Format("[%s - %s/%s]", firstProsition.getXDirAdj(), lastPosition.getXDirAdj() + lastPosition.getWidthDirAdj(), firstProsition.getYDirAdj()));
}
}
Но, я получаю ошибку компиляции для приведенного выше кода, что:
Ошибка 1 Нет перегрузки метода 'WriteString' принимает 2 аргумента
Ошибка 2 'PDFTextLocationStripper.writeString (java.lang.String, java.util.List)': не подходящий метод нашел переопределить
Итак, как же я переопределить метод WriteString, так что я могу извлечь текст вместе с местоположением?