How to export text as image to PDF or changes another font attribute
XFRX can export text as image if font doesn't exist - for XFRX 15.6. But you can change a flag for specific font.
m.loSession=EVALUATE([xfrx("XFRX#INIT")])
m.lnRetVal = m.loSession.SetParams("test.pdf",,,,,,"PDF")
IF m.lnRetVal=0
m.loHACK=CREATEOBJECT("_XFRXHACK",m.loSession)
m.loSession.ProcessReport("_reports\basetext")
m.loSession.Finalize()
RELE m.loHACK
END IF
DEFINE CLASS _XFRXHACK AS CUSTOM
oEDoc=.NULL.
cTarget=""
nVersion=0
PROCEDURE Init(m.loSession)
m.loSession=IIF(TYPE("m.loSession.oxfSession")="O",m.loSession.oxfSession,m.loSession)
This.nVersion=VAL(CHRTRAN(m.loSession.GetVersion(),CHRTRAN(m.loSession.GetVersion(),"0123456789",""),""))
This.cTarget=m.loSession.cTarget
IF This.cTarget=="PDF"
IF This.nVersion<1570000
=BINDEVENT(m.loSession.oDocument,"addFont",This,"addFont156",1)
ELSE
=BINDEVENT(m.loSession.oDocument,"addFont",This,"addFont",1)
ENDIF
This.oEDoc=m.loSession.oDocument
ENDIF
ENDPROC
PROCEDURE addFont156(m.tcFontName, m.llBold, m.llItal, m.lnEmbed, m.lnSymbol, m.lnCodePage)
WITH This.oEDoc
IF .aFonts(.nFont,7) AND ATC("+MDD-ISO-15223-1",.aFonts(.nFont,1))>0 && font is symbol
.aFonts(.nFont,11)=.F. && .F. - Font not exist, .T. - Font exist
*.aFonts(.nFont,9)=1252 && Code page from 42 to 1252
ELSE
.aFonts(.nFont,10)=.F. && .F. - Do not covert to UNICODE, .T. - Convert to UNICODE
ENDIF
ENDWITH
ENDPROC
PROCEDURE addFont(m.tcFontName, m.llBold, m.llItal, m.lnEmbed, m.lnCodePage)
WITH This.oEDoc
IF .aFonts(.nFont,7) AND ATC("+MDD-ISO-15223-1",.aFonts(.nFont,1))>0 && font is symbol
.aFonts(.nFont,11)=.F. && .F. - Font not exist, .T. - Font exist
*.aFonts(.nFont,9)=1252 && Code page from 42 to 1252
ELSE
.aFonts(.nFont,10)=.F. && .F. - Do not covert to UNICODE, .T. - Convert to UNICODE
ENDIF
ENDWITH
ENDPROC
ENDDEFINE
, multiple selections available,