Документация HotXLS

Расширенный рендеринг и экспорт

Пути вывода PDF, SVG, растровых изображений, метафайлов, предварительного просмотра и печати используют единую модель разбиения на страницы и независимую от бэкенда геометрию, сохраняя при этом формато-специфичные кодировщики

Пользовательские графические бэкенды

TXLSGraphicsTextAlign определяет выравнивание текста по левому краю, по центру и по правому краю для TXLSGraphicsBackend; остальные общие перечисления используются в стилизованных вызовах рисования — стили шрифта (TXLSGraphicsFontStyles), окончания линий (TXLSGraphicsLineCap), штриховые шаблоны (TXLSGraphicsLineDash) и вертикальное выравнивание текста (TXLSGraphicsTextVAlign)

Page lifecycleBeginPage и EndPage
PrimitivesFillRect, StrokeRect, DrawLine, DrawStyledLine, DrawEllipse, DrawPath, DrawText, DrawStyledText, DrawCellTextи DrawImage
Pagination entry pointTXLSPaginationModel.RenderPageToBackend отправляет одну логическую страницу любой реализации бэкенда

Реализации получают координаты в пунктах, разрешённые текстовые и графические эффекты, области отсечения и привязку рисования к странице, не повторяя логику макета книги. Каждый рисунок на логической странице приходит в виде записи TXLSPageDrawingPlacement , поле Kind которой (TXLSPageDrawingKind: xpdkImage, xpdkChart, xpdkTextBox, xpdkShape, xpdkControl) сообщает бэкенду, что именно он рисует; плитки фона листа приходят в виде декодированных TXLSSheetBackgroundRenderData

Геометрия рендеринга, принадлежащая операции

TXLSPaginationModel.RenderBackend задаёт идентификацию бэкенда, которую захватит следующий вызов Build , а RenderGeometry открывает доступ к полученной неизменяемой калибровке, поколению книги, бэкенду и ограниченному состоянию кэша метрик; активный сеанс рендеринга передаётся как дескриптор TXLSRenderSession , а политика цвета — это TXLSRenderColorMode (xlsrcColor или xlsrcMonochrome)

Модели PDF используют xlsrgbPdf, SVG — xlsrgbSvg, изображения страниц — xlsrgbBitmap, модели печати и предварительного просмотра — xlsrgbPrintPreview, а TXLSWorkbookViewer — xlsrgbViewer; свойство PaginationModel компонентов SVG, изображений, печати и просмотрщика открывает активную модель для диагностики без передачи владения

Точки входа HTML для Classic и XLSX захватывают xlsrgbHtml; TXLSHTMLExport.RenderGeometry возвращает последний снимок Classic, а TXLSXHtmlExportSession.RenderGeometry — снимок, сохраняемый для всех листов в инкрементальном экспорте

Вывод столбцов HTML преобразует модель ширины символов книги через максимальную ширину цифры шрифта Normal и настроенный масштаб экрана, прежде чем выдать фиксированную длину в CSS-пикселях; преобразование пунктов и пикселей использует тот же захваченный DPI измерения

Каждая операция сохраняет захваченную калибровку, даже если книга позже меняется, и рендеринг никогда не записывает высоты строк и ширины столбцов листа. Разбиение на страницы строит страницы из объектов TXLSLogicalPage , чьи рисунки, ориентация (TXLSPageOrientation: xpoPortrait или xpoLandscape) и размещение комментариев (TXLSPrintComments: xpcNone или xpcAtEnd) берутся из разрешённых параметров страницы

Логическая страница открывает всё, что нужно бэкенду или обратному вызову: идентификацию (DocumentPageNumber, SheetPageNumber, SheetName, владеющие ClassicWorksheet или XlsxWorksheet), геометрию (PageWidth, PageHeight, Scaleи значения LeftMargin, RightMargin, TopMargin, BottomMargin, HeaderMargin, FooterMargin ), прямоугольник данных (DataFirstRow, DataLastRow, DataFirstCol, DataLastCol) с заголовками печати (RepeatFirstRow, RepeatLastRow, RepeatFirstCol, RepeatLastCol), размещение фона (BackgroundOffsetX, BackgroundOffsetY), вывод сетки (PrintGridlines, GridlineColor), шесть текстов областей колонтитулов (LeftHeader, CenterHeader, RightHeader, LeftFooter, CenterFooter, RightFooter) и скелеты строк и столбцов страницы (RowCount с Rows и RowEdges, ColumnCount с Columns и ColumnEdges), а также список рисунков (DrawingCount и Drawings). ExpandHeaderFooter разрешает коды формата колонтитулов для страницы, а ExpandHeaderFooterStyled дополнительно сообщает основной размер в пунктах и цвет, чтобы пользовательские отрисовщики могли совпасть с собственным рендерингом колонтитулов Excel

Объединённые ячейки в нативной пагинации

TXLSPaginationModel.RenderPageToBackend разрешает объединённый диапазон к его исходному якорю и рисует один видимый прямоугольник на фрагмент страницы; покрытые ячейки не выдают дублирующийся текст или внутренние линии сетки

Фрагменты XLSX разделяют заливку, выравнивание, перенос, шрифт и вычисление условного формата якоря, при этом явные внешние сегменты границ остаются видимыми, а внутренние границы объединения подавляются; классические фрагменты разделяют текст и сплошную заливку якоря через существующий классический отрисовщик текста

Область печати или разрыв страницы может отсечь объединённый диапазон, и каждый видимый фрагмент использует исходный якорь, даже когда якорь лежит вне печатаемой области; скрытые строки и столбцы дают нулевую протяжённость, а повторяющиеся фрагменты печатаемых заголовков используют ту же политику якоря

Объединение не заставляет диапазон помещаться на одну страницу, не расширяет область печати и не меняет сохранённые высоты строк и ширины столбцов; пагинация сохраняет существующие параметры страницы и отсекает каждый фрагмент по его логической странице

Рендеринг фона листа

Просмотрщик книги отображает допустимые фоны листов Classic и XLSX как повторяющиеся плитки позади незалитых ячеек, при этом явные и условные заливки ячеек остаются поверх фона

TXLSPaginationModel, TXLSSvgExport, TXLSPageImageExporter, TXLSPrintDocument, TXLSPDFExport, TXLSHTMLExport, TXLSXHtmlExportOptionsи TXLSWorkbookViewer предоставляют ExportSheetBackgroundImages; по умолчанию для вывода печати, предварительного просмотра, метафайлов, PDF, SVG, растровых изображений и HTML действует значение False . Листы хранят свои данные с форматом изображения TXLSSheetBackgroundFormat , а декодированные байты передаются как TXLSSheetBackgroundResource с ключом по поколению, DPI и режиму цвета

Включённый постраничный вывод привязывает фазу плиток к координатам листа через границы страниц и удерживает один декодированный образ на каждую комбинацию листа, поколения ресурса, бэкенда, DPI и режима цвета на время сеанса рендеринга; BackgroundDecodeCount открывает общее число декодирований для диагностики, а повреждённые данные пропускаются с диагностикой книги. Активный TXLSRenderSession сам управляет этим общим кэшем: AcquireBackground извлекает (или декодирует один раз) плитки TXLSSheetBackgroundRenderData для листа, DrawTiledBackground рисует их по области страницы с отсечением, а DecodeCount сообщает, сколько данных декодировано на текущий момент

Политика отображения объектов книги

ObjectDisplayMode выбирает xlsodmShowAll, xlsodmShowPlaceholdersили xlsodmHideAll как для книг Classic XLS, так и для XLSX; просмотрщик обрабатывает все три состояния и в режиме заполнителей использует недорогие рамки с типом, именем, текстом и альтернативным текстом

Экспортёры PDF, SVG, растровых изображений, физической печати и XLSX HTML по умолчанию трактуют режим заполнителей как полноценный вывод объектов; установите ExportObjectPlaceholders на соответствующем экспортёре или опциях HTML, чтобы запросить рамки без декодирования изображений и построения сцены диаграммы

xlsodmHideAll — более ранний глобальный барьер, который блокирует сбор рисунков, расширение диапазона по объектам, проверку попаданий и рендеринг мультимедиа; фоны листов, значки условного форматирования, изображения колонтитулов, ячейки и специфичные для экспортёров фильтры печатных объектов остаются независимыми

Обновление исходных данных диаграмм

Сериализация диаграмм XLSX и общий рендеринг диаграмм разрешают локальные кэши серий относительно текущего поколения книги, поэтому правки ячеек-источников, пересчёт и изменения видимости обновляют значения, категории, размеры пузырьков и имена серий, связанные с диапазонами, до вывода

Обычные исходные диапазоны должны быть одной строкой или столбцом локальных ссылок A1; поддерживаются имена листов в кавычках, а неквалифицированный диапазон разрешается относительно листа-владельца диаграммы; иерархические уровни категорий сохраняют свой отдельный распознаватель прямоугольных диапазонов

Текст категорий использует форматированный текст ячеек, числовые кэши сохраняют пустые слоты точек для пропусков и нечислового текста, ячейки с ошибками сохраняют свои отображаемые литералы ошибок, а даты используют систему порядковых дат книги 1900 или 1904; PlotVisibleOnly определяет, опускаются ли скрытые исходные строки и столбцы

Импортированные или заполненные вручную кэши сохраняются, когда локальный источник никогда не материализовался, тогда как кэши, уже управляемые из локальных ячеек, очищают устаревшие точки после удаления; TXLSXChartSeries.RefreshDataCaches явно обновляет разрешимые локальные источники, включая пустой исходный диапазон

Ссылки на внешние книги и неподдерживаемые выражения ссылок сохраняют свои сохранённые кэши; обновление кэша не открывает внешние файлы и не выполняет сетевых запросов

Календарные оси дат в диаграммах

TXLSXChartSeries.ResolveDataCaches разрешает поддерживаемые локальные источники серий для текущего поколения, а RefreshDataCaches запрашивает явное обновление, даже когда пустой источник не имеет истории ячеек

Диаграммы XLSX, у которых ось категорий использует xlsxAxisDate , отображают каждую допустимую категорию через систему порядковых дат книги (1900 или 1904) и сохраняют реальное расстояние между разреженными датами вместо назначения равных слотов точкам

BaseTimeUnit управляет нормализацией по дням, месяцам или годам, а MajorUnit, MinorUnit, MajorTimeUnitи MinorTimeUnit продвигают деления по календарным единицам; поэтому интервалы месяцев и лет остаются выровненными при разной длине месяцев и високосных годах

Та же ограниченная коллекция делений снабжает координатами, подписями, делениями и запрошенными линиями сетки постраничный вывод PDF, SVG, растровых изображений, предварительного просмотра, печати и просмотрщика, а XLSX HTML использует общую календарную арифметику для встроенного SVG диаграмм

Автономный генератор PDF

TXLSPDFWriter создаёт PDF-документы, не происходящие из книги, — например счета, билеты, этикетки и формы для наложения; BeginDoc задаёт страницу с точностью до пункта, NewPage закрывает текущую страницу, а SaveToStream или SaveToFile завершает документ

Методы рисования используют пункты PDF от левого нижнего угла и цвета библиотеки в форме $00BBGGRR или $AABBGGRR ; доступные примитивы — FillRectangle, StrokeRectangle, ClipRectangle, MeasureText, SaveGraphicsStateи RestoreGraphicsState — покрывают залитые и обведённые прямоугольники, линии, эллипсы, стилизованный текст с точным измерением ширины, аффинные преобразования, прямоугольное отсечение и явное сохранение или восстановление состояния графики, а PageWidth и PageHeight сообщают текущую страницу в пунктах

Экспорт SVG

TXLSSvgExport предоставляет семь перегрузок SaveAsSVG для классических и XLSX-диапазонов, листов, книг и подготовленных логических страниц, а также вывод именованных объектов там, где он поддерживается

UseWorksheetPageSetup, Orientationи Margin используют те же решения о параметрах страницы, что и вывод PDF и предварительного просмотра

TXLSSvgExport.PrintComments (тип TXLSPrintComments) выбирает, как выводятся примечания ячеек в постраничном выводе SVG; при значении xpcAtEndпоследняя страница листа добавляет под областью данных список примечаний (адрес ячейки, автор и текст), а xpcNone опускает примечания

ExportPages передаёт по одному полному SVG-документу через OnPage, сообщает количество зафиксированных страниц через ExportedPageCountи останавливается до генерации последующих страниц, если обратный вызов отменяет вывод; IdPrefix создаёт детерминированные пространства имён документа и страниц для путей отсечения, фильтров, шаблонов и общих ресурсов

HyperlinkMode (тип TXLSSvgHyperlinkMode) со значением xshmSafe добавляет после видимого содержимого прозрачные области щелчка с отсечением; допустимые внешние схемы — HTTP, HTTPS, почта, FTP и относительные ссылки, тогда как активные, локальные, UNC и содержащие управляющие символы цели опускаются; LinksInNewWindow добавляет защиту noopener noreferrer , а всплывающие подсказки становятся заголовками SVG

Инкрементальный вывод PNG, JPEG и многостраничного TIFF

TXLSPageImageFormat выбирает вывод PNG или JPEG, а TXLSPageImageExporter удерживает один сеанс разбиения на страницы активным, освобождая каждую завершённую растровую страницу сразу после её подготовки

SessionШесть перегрузок BeginExport принимают классические или XLSX-диапазоны, листы и книги; ExportNext записывает одну страницу, а EndExport завершает сеанс
Multipage TIFFExportAllAsTiff записывает выбранные логические страницы в поток или файл как один TIFF со сжатием LZW, сохраняя семантику прогресса, отмены и атомарной записи в целевой поток или файл
Page setupUseWorksheetPageSetup, Orientation, Margin, DefaultRowHeight, PaperWidthOverrideи PaperHeightOverride
Raster outputScale, ImageFormatи JpegQuality, а ExportObjectAsPNG отрисовывает один объект рисунка в собственный PNG
Compact rangesExportRange отрисовывает классический или XLSX-диапазон одним плотным растровым изображением без бумаги, полей, колонтитулов, заголовков печати и разрывов страниц
Canvas eventsBeforeRenderPage выполняется после очистки фона, а AfterRenderPage — после отрисовки книги, но перед кодированием; кадры PNG, JPEG и TIFF используют один путь событий
StateActive, Aborted, TotalPageCount, PageCountи ExportedPageCount

Размеченный PDF и PDF/A

TXLSPDFExport.TagMode включает автоматическую структуру документа, таблиц, строк, ячеек заголовков, ячеек данных и информативных изображений с плотными постраничными идентификаторами помеченного содержимого, точными отображениями родительского дерева, объединёнными диапазонами ячеек и изоляцией артефактов; строки заголовков печати и строки заголовков таблиц становятся семантическими ячейками заголовков, изображения XLSX с непустым AltText — независимыми элементами Figure с альтернативным текстом в Unicode, а изображения без альтернативного текста остаются декоративными артефактами

Каждый видимый экземпляр информативного изображения получает собственный элемент Figure и идентификатор помеченного содержимого, даже если одинаковые данные изображения делят один PDF XObject; AltTextTitle не заменяет отсутствующий альтернативный текст, диаграммы остаются артефактами, и эта сфокусированная поддержка структуры не претендует на полное соответствие PDF/UA

TXLSPDFExport.PDFAProfile выбирает PDF/A-1, PDF/A-2 или PDF/A-3 на уровне соответствия a или b; несовместимые шифрование, шрифты, вложения, прозрачность, подписи и метаданные проверяются до фиксации выходного потока

TXLSPDFExport.ExportCommentsAsAnnotations размещает текст автора и комментария в кодировке Unicode на прямоугольниках исходных ячеек, при этом традиционный вывод комментариев в конце остаётся независимо настраиваемым

UsePDFA является переключателем совместимости для PDF/A-1b, а UseXRefStream выбирает потоки перекрёстных ссылок там, где выбранный профиль их допускает

Геометрия и выбор страниц

Шесть перегрузок CalculatePageCount принимают классические и XLSX-диапазоны, листы или книги без создания объектов PDF

PaperWidth и PaperHeight переопределяют размеры бумаги в пунктах, LastPage закрывает выходной интервал с отсчётом от 1, Orientation (тип TXLSPDFOrientation) выбирает книжную или альбомную ориентацию вывода, HidePrintObjects (набор TXLSPDFHidePrintObject: xlsPdfHideHeaders, xlsPdfHideFooters) подавляет выбранные области верхнего или нижнего колонтитула, а PageLayout (тип TXLSPDFPageLayout) задаёт начальное расположение страниц в средстве просмотра

Режим страниц PDF и действие при открытии

TXLSPDFExport.PageMode (тип TXLSPDFPageMode) задаёт, как PDF-просмотрщик располагает панели при открытии документа: xlsPdfModeDefault, xlsPdfModeUseOutlines, xlsPdfModeUseThumbs, xlsPdfModeFullScreen, xlsPdfModeUseOCи xlsPdfModeUseAttachments

OpenAction (тип TXLSPDFOpenAction) выбирает начальное поведение просмотрщика: xlsPdfOpenNone, xlsPdfOpenPageили xlsPdfOpenOutlines. Для xlsPdfOpenPageзначение OpenActionPage — целевая страница с отсчётом от 1 (ограниченная числом страниц), а OpenActionZoom — начальный коэффициент увеличения, причём 0 сохраняет масштаб или подгонку просмотрщика по умолчанию

Общая адаптивная векторная геометрия

XLSBuildEllipticArcCubics преобразует эллиптическую дугу в сегменты кубических кривых Безье, рекурсивно выдерживая выбранную вызывающей стороной границу плоскостности; рендеринг PDF, SVG и растровых изображений использует эту общую геометрию, поэтому большие или сильно вытянутые дуги получают больше сегментов без замедления обработки простых дуг

XLSDecodeVectorScene проверяет заголовки EMF и WMF, выравнивание и размеры записей, объявленные итоги, точное положение EOF и лимиты ресурсов, не вызывая платформенное воспроизведение метафайлов; нативный белый список воспроизводит стеки состояний контекста устройства с сохранением и восстановлением, отображение окна и области просмотра вместе с мировыми преобразованиями, таблицы объектов перьев, кистей и расширенных перьев, включая стандартные объекты, прямоугольники, эллипсы, цепочки линий, многоугольники, полилинии и кривые Безье со штриховыми стилями, скобки путей с проходами заливки, обводки и комбинированной обводки с заливкой, скруглённые прямоугольники, дуги, хорды, сектора и дуги углов через точное преобразование дуги в кривые Безье, заливку и рамки регионов из ограниченных прямоугольников RGNDATA, ограниченные фрагменты текста со шрифтами, цветами и выравниванием, а также ограниченные изображения stretch-DIB, перекодированные в PNG через Canvas и SVG; escape-записи отклоняются, а отсечение и приватные записи остаются на усмотрение существующего ограниченного резервного механизма

Закладки PDF и обратные вызовы страниц

Закладки PDF живут в коллекции Bookmarks (тип TXLSPDFBookmarks): Add и AddForSheet добавляют записи, Delete удаляет одну, а Count с Items перечисляют дерево. Каждая запись TXLSPDFBookmark поддерживает родительские и дочерние записи (Children), цепочки соседних записей, заголовки в Unicode, цвета (Color), цель PageNumber , исходный SheetName для закладок листов и флаги полужирного или курсивного начертания (набор TXLSPDFBookmarkStyle: xlsPdfBookmarkBold, xlsPdfBookmarkItalic), а также развёрнутое или свёрнутое состояние потомков; автоматические закладки листов используют ту же модель иерархии, а AutoSheetBookmarks включает их генерацию

BeforeNewPage может корректировать каждую страницу, а BeforeGeneratePage и AfterGeneratePage рисуют фоновое или накладываемое содержимое через публичные помощники страницы AppendPageContent, FillPageRectangle, StrokePageRectangleи DrawPageText

Подписи и вложения

TXLSPDFSignature настраивает видимые или невидимые поля подписи, а CertificationPolicy опционально создаёт сертификационную подпись DocMDP, разрешающую отсутствие изменений, заполнение форм с подписью либо заполнение форм, подпись и аннотации; PDF/A-1 не допускает эту возможность PDF 1.5, и она отклоняется до фиксации вывода

TXLSPDFCertificationPolicy предоставляет xlsPdfApprovalSignature, xlsPdfCertifyNoChanges, xlsPdfCertifyFormFillingAndSigningи xlsPdfCertifyFormFillingSigningAndAnnotations для явного выбора политики подписи

Событие TXLSPDFSignDigestEvent получает дайджест и возвращает созданные хостом данные CMS, поэтому HotXLS никогда не нуждается в закрытом ключе

TXLSPDFExport.Signature подключает конфигурацию подписи, а профили PDF/A-3 могут включать проверенные связанные файлы через AddAttachment, который ставит в очередь TXLSPDFAttachment; подробная перегрузка принимает отображаемое имя в Unicode, MIME-тип, описание, время изменения, полезные данные и значение TXLSPDFAttachmentRelationship — Source, Data, Alternative, Supplement или Unspecified, AttachmentCount сообщает общее число вложений в очереди, а AttachmentDuplicatePolicy (тип TXLSPDFAttachmentDuplicatePolicy) выбирает обработку одинаковых имён

TXLSPDFSignature.ImageData, ImageFormatи ImageFit (тип TXLSPDFSignatureImageFit: contain, cover или stretch) размещают PNG в форме нормального внешнего вида до фиксации диапазона байтов; режимы contain, cover и stretch используют общий кэш изображений документа, а недопустимые изображения приводят к отказу до подписания

Перегрузка IXLSPDFAttachmentSource остаётся ленивой до сохранения, вызывает каждый источник один раз за сохранение и буферизует не более 256 MiB до создания объекта EmbeddedFile, чтобы сбой провайдера оставлял целевую транзакцию неизменной

Финальная сборка записывает объекты в целевой поток последовательно, а не строит одну строку целого документа: неподписанные экспорты идут прямо в потоки с последовательным доступом, каждый EmbeddedFile ссылается на свой размер в байтах через косвенный объект /Length , создаваемый после полезных данных, а байты провайдера копируются из буфера фиксированными порциями; подписанные экспорты собираются в ограниченный буфер документа, который получает заплатки ByteRange и содержимого подписи, инкрементальный SHA-256 по двум охваченным диапазонам и одну прямую копию

Вывод PDF/A-3 записывает каждый связанный файл и в дерево имён EmbeddedFiles, и в массив AF каталога — с именем UF в Unicode, экранированным PDF Name для MIME-типа, AFRelationship, размером в байтах, опциональной датой изменения и опциональным описанием; PDF/A-1 и PDF/A-2 отклоняют вложения из очереди до фиксации вывода

Метаданные документа

DocumentTitle, DocumentAuthor, DocumentSubject, DocumentKeywordsи DocumentFileName заполняют словари информации и метаданных PDF

Резервные шрифты

TXLSPDFExport.SetFontFallbackChain, AddFontFallbackи ClearFontFallbackChains настраивают уровни резервных шрифтов для семейства-источника и стиля; LoadedFallbackFontCount открывает количество кэшированных начертаний, а FontFallbackSelectionCacheCount — число кэшированных решений о выборе резерва для каждого выбора, оба показателя для диагностики

TXLSPDFExport.FontSize задаёт размер текста по умолчанию в пунктах; по умолчанию — 9

Выбор резервного шрифта использует покрытие глифов и сохраняет сопоставления Unicode, дополнительные скаляры, кластеры графем, кластеры форм и отдельные начертания TTC

OnGetFontDirectories может вернуть один или несколько разделённых точкой с запятой каталогов шрифтов для запрошенного семейства и стиля; принятые каталоги однократно обходятся рекурсивно, индексируются по внутренним метаданным семейства/стиля и кэшируются для последующих измерений и рисования

Политика встраивания шрифтов

TXLSPDFExport.FontEmbedding (тип TXLSPDFFontEmbedding) выбирает автоматическое встраивание, обязательное выделение подмножества, полную программу шрифта или режим без встраивания (map-only) через xlsPdfFontEmbedAuto, xlsPdfFontEmbedSubset, xlsPdfFontEmbedFullи xlsPdfFontEmbedNone; обязательное выделение подмножества атомарно завершается ошибкой, если корректное подмножество построить нельзя, начертания TTC преобразуются в автономные шрифты, а PDF/A отклоняет режим без встраивания

OnFontEmbed срабатывает один раз на начертание Unicode до разрешения его метрик, таблицы символов, шейпинга и идентификаторов глифов; установка Handled принимает возвращённый режим для конкретного шрифта и опциональные замещающие байты, а если оставить значение false — сохраняются политика документа и исходное начертание

Автономные шрифты OpenType с контурами CFF встраиваются через FontFile3 с потоком OpenType и потомком CIDFontType0 ; автоматический и полный режимы сохраняют полную программу, а обязательное выделение подмножества CFF атомарно завершается ошибкой, поскольку не может сохранить корректное подмножество

Встроенные шрифты с данными OpenType GPOS или устаревшим kern используют позиционированные ширины глифов для простого и сложного текста, поэтому измерение, перенос, выравнивание и выдаваемые позиции глифов дают один и тот же результат кернинга

Ход выполнения и отмена

TXLSPDFExport.OnProgress и OnProgressEx сообщают о фазах начала, страницы и завершения; Cancel запрашивает отмену, а Aborted сообщает о конечном состоянии без фиксации частичного потока

См. также