Como inspeciono programaticamente um documento HTML

Eu tenho um banco de dados cheio de pequenos documentos HTML e preciso inserir programaticamente vários, digamos, um documento PDF comiText ou um documento do Word comAspose.Words. Eu preciso preservar qualquer formatação dentro dos documentos HTML (dentro do razoável, honrar as tags <b> é uma obrigação, CSS como <span style = "blah"> é um bom exemplo).

Tanto o iText quanto o Aspose funcionam (aproximadamente) ao longo das linhas:

Document document = new Document( Size.A4, Aspect.PORTRAIT );

document.setFont( "Helvetica", 20, Font.BOLD );
document.insert( "some string" )
document.setBold( true );
document.insert( "A bold string" );

Portanto (eu acho) preciso de algum tipo de analisador de HTML que eu possa inspecionar quanto a cadeias e estilos para inserir no meu documento.

Alguém pode sugerir uma boa biblioteca ou uma abordagem sensata para esse problema? A plataforma é Java

questionAnswers(5)

yourAnswerToTheQuestion