Você pode tentar utilizar uma biblioteca externa, como o WkHtmlToPdf.
Faça o download do WkHtmlToPdf e adicione o executavel em um diretório de fácil acesso: https://wkhtmltopdf.org/.
No fonte, você pode usar a função EXECSCRIPT para chamar o WkHtmlToPdf com o arquivo HTML
//Bibliotecas
Include "Protheus.ch"
USER FUNCTION ConvertHtmlToPdf()
LOCAL cHtmlFile := "C:\Caminho\Para\Seu\Arquivo\Input.html"
LOCAL cPdfFile := "C:\Caminho\Para\Seu\Arquivo\Output.pdf"
LOCAL cCommand
cCommand := "wkhtmltopdf """ + cHtmlFile + """ """ + cPdfFile + """"
EXECSCRIPT(cCommand)
IF FILE(cPdfFile)
MSGINFO("Arquivo PDF gerado com sucesso em " + cPdfFile)
ELSE
MSGINFO("Falha ao gerar o arquivo PDF")
ENDIF
RETURN NIL
cHtmlFile com o caminho para o seu arquivo HTML de entrada.
cPdfFile com o caminho onde o arquivo PDF de saída será salvo.
cCommand: string para chamar o WkHtmlToPdf com os caminhos dos arquivos HTML e PDF.