SetMissingGlyphCallback

文本、字体、回调

描述

注册一个可选回调,它可观察缺失的 Unicode 标量并为该事件选择报告或中止行为

语法

Delphi

TPDFlibMissingGlyphEvent= Procedure(Sender: TObject;
  CodePoint: Cardinal; UTF16Index, Page: Integer;
  Const FontName, Operation: WideString; Var Action: Integer) Of Object;

PDFlib.OnMissingGlyph:= MissingGlyphHandler;

ActiveX

Function PDFlib::SetMissingGlyphCallback(Callback As Object) As Long

Function Callback.MissingGlyph(CodePoint As Long, UTF16Index As Long,
  Page As Long, FontName As String, Operation As String) As Long

DLL

typedef int (__stdcall *TPDFlibMissingGlyphCallback)(
  uint32_t CodePoint, int UTF16Index, int Page,
  const wchar_t* FontName, const wchar_t* Operation, void* UserData);

int DLSetMissingGlyphCallback(int InstanceID,
  TPDFlibMissingGlyphCallback Callback, void* UserData);

参数

CodePoint完整的 Unicode 标量值
UTF16Index标量或整形簇从零开始的源索引
Page选中的从 1 开始计数的页码;没有活动页面时为零
FontName所选字体程序或资源名称
Operation检测到缺失字形的文本操作
Action进入时的当前策略;返回或赋值 0 表示报告并丢弃,赋值 1 表示中止

返回值

注册方法会为有效实例返回 1

备注

在回调运行前将事件添加到保留报告中

DLL 文本指针为只读,且仅在回调期间有效

跨越 DLL 或 ActiveX 回调边界的异常会被捕获,并回退为报告后丢弃的行为

另请参阅

SetMissingGlyphPolicy, GetMissingGlyphReportJSON