Encontrei vários programas de código-fonte aberto / freeware que permitem converter arquivos .doc em arquivos .pdf, mas eles são todos da variedade de aplicativos / drivers de impressora, sem SDK anexado.
Eu encontrei vários programas que possuem um SDK que permite converter arquivos .doc em arquivos .pdf, mas todos eles são do tipo proprietário, US $ 2.000 por licença ou algo parecido.
Alguém conhece alguma solução programática limpa e barata (de preferência gratuita) para o meu problema, usando C # ou VB.NET?
Obrigado!
pandoc manual.docx -o manual.pdf
Respostas:
Use um loop foreach em vez de um loop for - ele resolveu meu problema.
Aqui está uma modificação de um programa que funcionou para mim. Ele usa o Word 2007 com o suplemento Salvar como PDF instalado. Ele pesquisa em um diretório por arquivos .doc, abre-os no Word e os salva como PDF. Observe que você precisará adicionar uma referência ao Microsoft.Office.Interop.Word à solução.
fonte
Para resumir para os usuários do vb.net, a opção gratuita (deve ter o escritório instalado):
Download de montagens do Microsoft office:
pia para escritório 2007
Adicionar referência ao Microsoft.Office.Interop.Word.Application
Adicione a instrução using ou import (vb.net) ao Microsoft.Office.Interop.Word.Application
Exemplo de VB.NET:
fonte
O PDFCreator possui um componente COM, que pode ser chamado de .NET ou VBScript (exemplos incluídos no download).
Mas, parece-me que uma impressora é exatamente o que você precisa - basta misturar isso com a automação do Word e você deve estar pronto.
fonte
Só queria acrescentar que eu usei as bibliotecas Microsoft.Interop, especificamente a função ExportAsFixedFormat que não vi usada neste segmento.
fonte
app.Visible = false;
e adicionar uma chamadaapp.Quit();
no bloco final.Há toda uma discussão sobre bibliotecas para converter Word em PDF nos fóruns de discussão de Joel . Algumas sugestões do tópico:
fonte
Eu passei pela dor do Word para PDF quando alguém me largou com 10000 arquivos de palavras para converter em PDF. Agora eu fiz isso em C # e usei a interoperabilidade do Word, mas foi lento e travou se eu tentasse usar o PC de todo .. muito frustrante.
Isso me levou a descobrir que eu poderia despejar interoperações e sua lentidão ..... para Excel eu uso (EPPLUS) e então descobri que você pode obter uma ferramenta gratuita chamada Spire que permite a conversão para PDF ... com limitações!
http://www.e-iceblue.com/Introduce/free-doc-component.html#.VtAg4PmLRhE
fonte
Código e solução fáceis usando
Microsoft.Office.Interop.Word
para converter WORD em PDFAdicione este procedimento para liberar memória:
fonte
Parece haver algumas informações relevantes aqui:
Convertendo documentos do MS Word para PDF no ASP.NET
Além disso, com o Office 2007 tendo a funcionalidade de publicação em PDF, acho que você poderia usar a automação de escritório para abrir o arquivo * .DOC no Word 2007 e Salvar como PDF. Não gosto muito de automação de escritório, pois é lento e propenso a travar, mas apenas jogue isso lá fora ...
fonte
O suplemento Microsoft PDF para Word parece ser a melhor solução no momento, mas você deve levar em consideração que ele não converte todos os documentos do Word corretamente em pdf e, em alguns casos, você verá uma enorme diferença entre a palavra e o PDF de saída. Infelizmente, não consegui encontrar nenhuma API que converta todos os documentos do Word corretamente. A única solução que encontrei para garantir que a conversão estava 100% correta foi convertendo os documentos através de um driver de impressora. A desvantagem é que os documentos são enfileirados e convertidos um por um, mas você pode ter certeza de que o pdf resultante é exatamente igual ao layout do documento do Word. Pessoalmente, preferi usar o UDC (conversor universal de documentos) e instalei o Foxit Reader (versão gratuita) no servidor e depois imprimi os documentos iniciando um "Processo" e configurando a propriedade Verb para "imprimir".
fonte