Sugiro wkthtmltopdf para renderizar uma página html como pdf (incluindo folhas de estilo) e imprimi-la via CUPS / entregar para o usuário / faça o que quiser com ele.
Estou interessado em criar um "servidor de impressão" para meu aplicativo da web e pensei em várias maneiras de resolver o problema e encontrei essa solução. Eu encontrei um plug-in para o firefox que irá obtê-lo para imprimir a partir da linha de comando (incluindo arquivos PDF). Então eu quero instalar o FF no meu servidor Ubuntu10, então meus scripts PHP chamam FF através da linha de comando para imprimir em PDF o URL especificado. Quando a operação estiver concluída, o script PHP selecionará o arquivo gerado e o enviará para o usuário.
Existe algum problema com a instalação do FF sem interface gráfica em uma instalação de servidor Ubuntu? Existe algum gargalo óbvio para esta solução? Eu tenho trabalhado para a última hora ou mais para obter o Firefox para executar a partir da linha de comando e ele continua me dizendo "Erro: nenhum display especificado", o que faz sentido como eu estou executando um servidor sem cabeçalho. Existe alguma maneira de obter FF para executar a partir da linha de comando em um servidor sem GUI instalado?
Se necessário, acho que teremos que configurar uma edição desktop (GUI) com o Apache + PHP para fazer o que precisamos, mas seria bom que tudo funcionasse nas caixas do servidor.
Obrigado a todos
Sugiro wkthtmltopdf para renderizar uma página html como pdf (incluindo folhas de estilo) e imprimi-la via CUPS / entregar para o usuário / faça o que quiser com ele.
Definitivamente, essa não é uma boa maneira de criar PDFs a partir do PHP. Existem bibliotecas para isso (ou seja, FPDF ).
Edit: Ok, com você comentar isso exclui bibliotecas PHP. Talvez isso ajude? Parece fazer o que você quer. Se isso ainda exigir um conjunto de exibição X11, investigue o xvfb, que criará uma exibição virtual.
Uma palavra: PrinceXML . A única coisa que eu sei que pode converter de forma confiável CSS / HTML para PDF. (Você não afirmou que quer uma solução gratuita ou de Software Livre :-)).
Uma alternativa (licença dupla: sem custo / Software livre ou preço moderado / comercial) é HTMLDOC Mas não suporta o conjunto completo de CSS ...