Работа с комментариями
Работа с комментариями
Aspose.Cells FOSS for Java lets you add, read, modify, and remove cell комментарии (заметки) в рабочих книгах XLSX. Комментариям доступ через систему “Компьютерные файлы” CommentCollection на рабочем листе и представлены как: Comment предметы которые содержат текст заметки, имя автора и размеры отображения.
Обзор
Каждый рабочий лист раскрывает свои комментарии через: Worksheet.getComments(), которые: возвращает a CommentCollection.Вы можете добавить комментарий по мобильному адресу или на: индекс строки/колоны, получение существующих комментариев по названию индекса или ячейки; и удалить их, когда они больше не нужны.
А. - Да . Comment хранит текст примечания (getNote()/setNote()), автор (getAuthor()/setAuthor()), его положение якоря (getRow(), getColumn()), его размер (getWidth(), getHeight()), и является ли она видимой по умолчанию (isVisible()/setVisible()).
Доступ к комментариям на рабочем листе
Возвращение . CommentCollection от любого Worksheet через: Worksheet.getComments().Используйте . CommentCollection.getCount() определить: Каждый из них доступен по адресу: нулевой индекс через CommentCollection.get(index) или по названию ячейки. через CommentCollection.get(cellName).
Добавление комментариев
Использование: CommentCollection.add(cellName) или в другом случае: CommentCollection.add(row, column) Включить новый комментарий. возвращаем а Comment Настроить текст и автора заметки на возвращенной странице. Второй пример - это сохранение.
// Add a comment to cell B2 and configure it
Comment comment = ws.getComments().add("B2");
comment.setNote("Review this value before submission.");
comment.setAuthor("Analyst");
comment.setVisible(false);
comment.setWidth(180);
comment.setHeight(60);Содержание комментариев
Итерация по всем комментариям с использованием подсчета:
CommentCollection comments = ws.getComments();
for (int i = 0; i < comments.getCount(); i++) {
Comment c = comments.get(i);
System.out.printf("Cell [%d,%d] author=%s note=%s%n",
c.getRow(), c.getColumn(), c.getAuthor(), c.getNote());
}Изменение существующего комментария
Восстановление комментария по адресу сотовой связи и обновление его полевых данных напрямую:
Comment c = ws.getComments().get("B2");
if (c != null) {
c.setNote("Updated note text.");
c.setVisible(true);
}Удаление комментария
Использование: CommentCollection.removeAt(index) или в другом случае: CommentCollection.removeAt(cellName) для удаления комментария:
ws.getComments().removeAt("B2");Советы и лучшие практики
- Всегда проверяй это .
CommentCollection.get(cellName)не возвращается.nullперед изменением комментария в ячейке может быть не приложен коммент. - Набор
Comment.setVisible(false)для примечаний, которые должны быть указаны только на Hover, что соответствует стандартному поведению Excel. - Использование:
Comment.setWidth()и в том числе:Comment.setHeight()(в пикселях) для обеспечения: ящик для записей достаточно большой, чтобы содержать текст из нескольких строк. - Имена авторов хранятся как простые строки, они не проверяются в списке пользователей сборника.
- Комментарии переживают загрузку/сохранение по XLSX, когда никаких изменений нет. изготовлены для:
CommentCollection.
Общие проблемы
| Issue | Cause | Устранить |
|---|---|---|
get(cellName) возвраты null | Никаких комментариев по этому адресу. | Проверка адреса ячейки или итерация по индексу . |
| Запись комментариев пуста после сохранения . | setNote() Не вызван до сохранения . | Call setNote() на возвращенный Comment перед сохранением сборника работы. |
| Комментарий не видим в Excel | setVisible(false) была установлена | Перейти на: setVisible(true) или поместить на карту в Excel |
FAQ
Как я добавляю комментарий в определенный ряд и колонку?
Использование: CommentCollection.add(row, column), где обе значения основаны на нулевых . Это эквивалентно: add(cellName) с соответствующей ячейкой адрес.
Могу ли я изменить автора существующего комментария?
Да, возьми. Comment через: get(cellName) и позвони . setAuthor(name) с новой строкой автора.
Как я проверяю, видится ли комментарий?
Call Comment.isVisible().Возвратные платежи . true если поле комментариев всегда показан; false если он появляется только на ховер.
Сохраняются ли комментарии при преобразовании в другие формы?
Комментарии сохраняются на XLSX-поезде. Поведение сохранения для других форматов зависит от поддержки формата в целевом выходе .
Как я считаю комментарии на рабочем листе?
Использование: Worksheet.getComments().getCount().
Справочное резюме API
Comment
| Method | Тип возврата | Description |
|---|---|---|
getRow() | int | Индекс строки на основе нуля. |
getColumn() | int | Индекс столбца на нулевой основе. |
getNote() | String | Текст комментария. |
setNote(note) | void | Устанавливает текст комментария. |
getAuthor() | String | Имя автора. |
setAuthor(author) | void | Устанавливает имя автора. |
isVisible() | boolean | Всегда ли видно поле комментариев. |
setVisible(visible) | void | Устанавливает видимость поле комментариев. |
getWidth() | int | Ширина поля комментариев в пикселях. |
setWidth(width) | void | Устанавливает ширину поля комментариев. |
getHeight() | int | Высота поля комментариев в пикселях. |
setHeight(height) | void | Устанавливает высоту поле комментариев. |
CommentCollection
| Method | Тип возврата | Description |
|---|---|---|
getCount() | int | Количество комментариев на рабочем листе. |
get(index) | Comment | Возвращает комментарий на нулевом индексе. |
get(cellName) | Comment | Возвращает комментарий по указанному адресу. |
add(row, column) | Comment | Добавляет новый комментарий в строке/столбе. |
add(cellName) | Comment | Добавляет новый комментарий к адресу сотового телефона. |
removeAt(index) | void | Устраняет комментарий в индексе на основе нуля. |
removeAt(cellName) | void | Убирает комментарий на мобильный адрес. |