Eu tenho tentado descobrir isso por um tempo, mas infelizmente não consigo.
Quero imprimir PDF de qualquer driver de impressora, digamos, um EPSON TM-T20II, tenho o PDFCreator instalado e tentei usar sua porta, mas ele trava.
A origem dessa solicitação é que tenho que testar várias impressoras e opções de impressão para meus clientes e, bem, nem sempre carrego todas as impressoras comigo, então quero tentar com PDF. Mas não consigo configurar os tamanhos adequados no PDFCreator.
Portanto, qualquer sugestão ou solução é bem-vinda. Desde já, obrigado!
Saída do driver da impressora como fonte
Os drivers de impressora pegam os requisitos de saída de um aplicativo (o que precisa aparecer na página e onde) e os convertem em comandos usados pela impressora para aproximá-los do hardware da impressora. Se você quiser testar uma impressora específica sem a impressora, precisará de um software especial que traduza os comandos brutos da impressora, normalmente capturados do spooler de impressão, em algo utilizável, como PDF.
Observe que, como os comandos da impressora produzem apenas uma aproximação das especificações de saída do aplicativo, você não pode recriar perfeitamente as especificações de saída traduzindo os comandos da impressora. Quando você traduz a saída para outro formato, obtém degradação refletindo as limitações do hardware para o qual os comandos foram destinados.
Portanto, traduzir os comandos da impressora para PDF e, em seguida, visualizar esse PDF parecerá diferente da saída do PDF produzida diretamente do aplicativo. Mas também não será uma representação perfeita da saída impressa. Aplicar um ponto de tinta ou toner (ou um ponto de calor em papel térmico) não tem o mesmo tamanho de ponto ou características de um pixel em um PDF.
O que é pedido
Você não pode usar um driver de impressora PDF para traduzir a saída de outro driver de impressora. E os utilitários de PDF, como o PDFCreator, são projetados para funcionar com um aplicativo ou um formato de arquivo comum, não com comandos de impressora.
Antes do advento do PDF (voltando aos tempos do Windows 98), havia uma necessidade desse tipo de coisa, e havia alguns aplicativos desenvolvidos que faziam isso, principalmente para PCL (Printer Command Language, desenvolvido pela HP, e a espinha dorsal de seus protocolos de impressão). Acontece que algumas dessas coisas ainda estão por aí, como o VeryPDF PCL Converter , que não é barato, e não posso garantir o quão bem ele traduziria a saída específica da impressora.
Se você pesquisar na Internet, ainda poderá encontrar software semelhante que pode funcionar com algumas das principais marcas de impressoras, pelo menos na medida em que você está testando requisitos de impressão simples e não invocando nenhum recurso especial da impressora. Dito isso, ficaria surpreso se esse tipo de software estivesse disponível para algo como uma impressora térmica de recibos, como na pergunta.
Pensamentos sobre soluções
Não há uma maneira genérica de fazer isso. Se você quiser verificar a saída para impressoras específicas, precisará das impressoras ou do que provavelmente seria um software personalizado para traduzir ou validar a saída. Lembre-se de que mesmo a tradução de comandos da impressora para PDF não é 100% infalível. Você pode ter comandos que são válidos e produzirão um PDF de aparência correta, mas a saída pode não atender às restrições de uma impressora específica e, portanto, não funcionará na vida real.
Comprar impressoras seria mais rápido e barato do que criar um software personalizado. Mas se for para clientes, você pode pedir que eles emprestem uma impressora para você testar, ou vá lá e teste nas impressoras deles (ou peça para eles testarem para você).
Se você estiver interessado apenas no layout de saída (aparência na página) e não precisar testar a capacidade de uma impressora específica para renderizá-lo, e se estiver usando um software comum para criar a saída, acho que você poderia usar quase qualquer driver de impressora PDF ou escolha entre os utilitários de PDF prontamente disponíveis.