Вы используете IText код в приложении iTextSharp. Вам необходимо преобразовать код iText в код iTextSharp, используя правила, объясненные в этом ответе: converting iText code to iTextSharp code.
Если у вас есть сомнения, пожалуйста, не то, что iTextSharp является библиотекой с открытым исходным кодом. Вы всегда можете обратиться к исходному коду. В вашем случае вы можете проверить файл Paragraph.cs на Github.
Вы заметите, что метод Java setIndentationLeft()
фактически реализована следующим образом:
/// <summary>
/// Get/set the indentation of this paragraph on the left side.
/// </summary>
/// <value>a float</value>
virtual public float IndentationLeft {
get {
return indentationLeft;
}
set {
this.indentationLeft = value;
}
}
Это означает, что вам нужно это в вашем коде:
p.IndentationLeft = indentation
То же самое относится и к методу setFirstLineIndent()
:
p.FirstLineIndent = -indentation
Как уже упоминалось ранее, л.д. рассматривать примеры Java, как если бы это были псевдокод и всякий раз, когда вы попали в не является членом проблемы, вы должны использовать один из следующих правил, чтобы решить эту проблему:
- методы в Java начинаются с нижний регистр; методы в .NET начинаются с верхнего регистра, поэтому, когда люди просят вас использовать Java-код в качестве псевдокода и для преобразования Java в .NET, вам необходимо изменить методы, такие как
add()
и addCell()
в Add()
и AddCell()
.
- Пользовательские переменные в Java изменяются и консультируются с использованием геттеров и сеттеров; переменные в .NET изменяются и обрабатываются с использованием методов, которые выглядят как свойства. Это означает, что вам необходимо изменить такие строки, как
cell.setBorder(border);
и border = cell.getBorder();
, на cell.Border = border
и border = cell.Border
.
Это скопируйте ответ на один из ваших более ранних вопросов. Как вы можете видеть, этот ответ также решает вашу текущую проблему.