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

FontIsEmbedded Свойство

Эта запись API сохраняет идентификаторы, сигнатуры, блоки кода и термины PDF в исходном виде.
Компонент: TPdf  ·  Модуль: PDFium
Указывает, встроен ли шрифт, используемый объектом страницы, внутрь PDF (True) или он только ссылается на системный шрифт и разрешается во время просмотра из операционной системы (False)

Синтаксис

property FontIsEmbedded[Index: Integer]: Boolean; // read only

Описание

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

Индексатор — это 0-базовый индекс объекта страницы в диапазоне 0..ObjectCount - 1. Нетекстовые объекты всегда возвращают False. Перед чтением свойства страница должна быть активна

Встраивание может быть полным, когда присутствует каждый глиф исходного шрифта, или подмножеством, когда появляются только реально используемые глифы с добавленным шестибуквенным префиксом к базовому имени; оба варианта здесь считаются встроенными. Для соответствия PDF/A каждый шрифт должен быть встроен — это свойство служит быстрым инструментом проверки этого требования

Параметры

Index0-базовый индекс объекта страницы в диапазоне 0..ObjectCount - 1

Примечания

Пример

var
  I, EmbeddedCount, TextCount: Integer;
begin
  Pdf1.PageNumber := 1;
  EmbeddedCount := 0;
  TextCount := 0;
  for I := 0 to Pdf1.ObjectCount - 1 do
  if Pdf1.ObjectType[I] = otText then
  begin
    Inc(TextCount);
    if Pdf1.FontIsEmbedded[I] then Inc(EmbeddedCount);
  end;
  ShowMessage(Format('%d of %d text objects use embedded fonts',
    [EmbeddedCount, TextCount]));
end;

См. также

FontData, FontFamilyName, FontBaseName, FontHandle, ObjectType