KB-20201117-01

Version

All versions.

Symptoms

If PDF file is PDF/A-2 or PDF/A-3 then veraPDF show error "complient document shall not contain a reference to .notdef glyph" at validating.

Cause

Space in text.

XFRX create custom font if PDF/A mode is enable. The first char is "space" with glyph index 0. Rule for  PDF/A-2 or PDF/A-3 don´t allow glyph index 0, because it's index for not defined glyph.

Workaround

Use hack class

loHACK=CREATEOBJECT("_XFRXHACK", loSession)
loSession.ProcessReport("somereport.frx")
RELEASE loHACK

DEFINE CLASS _XFRXHACK AS CUSTOM
   oEWriter=.NULL.

   PROCEDURE Destroy
      UNBINDEVENTS(This.oEWriter.oPDF)
   ENDPROC
   
   PROCEDURE Init(m.loSession)
      m.loSession=IIF(TYPE("m.loSession.oxfSession")="O",m.loSession.oxfSession,m.loSession)
      =BINDEVENT(m.loSession.oDocumentWriter.oPDF,"setPDFA",This,"setPDFA", 1)
      This.oEWriter=m.loSession.oDocumentWriter
   ENDPROC
 
   PROCEDURE setPDFA
      LPARAMETERS m.tlPDFA, m.tcPDFA
      This.oEWriter.oPDF.lUseUnicodeMapping=.F.
   ENDPROC
 
 ENDDEFINE


Hotfix

hndlib.dll for XFRX 19.2
hndlib.dll for XFRX 19.1
hndlib.dll for XFRX 19.0