Pergunta

Eu tenho uma grade DataWindow com uma imagem em seu plano de fundo (com dimensões de uma página A4) e gostaria de exportar os dados e a imagem como um arquivo PDF (página única). Eu usei várias combinações dos seguintes comandos, mas no máximo eu tenho um PDF de tamanho 0.

//dw_1.Modify("Datawindow.Export.PDF.Method = Distill! ")
//dw_1.Modify("DataWindow.Export.PDF.Method = XSLFOP! ")

dw_1.Object.DataWindow.Export.PDF.Method = Distill!
//dw_1.Object.DataWindow.Printer = "\\prntsrvr\pr-6"
dw_1.Object.DataWindow.Export.PDF.Distill.CustomPostScript="No"
dw_1.SaveAs("c:\dw_one.pdf", PDF!, false)

Guia do usuário (na página 533) diz:

… the data is printed to a PostScript file and automatically distilled to PDF using GNU Ghostscript…

Installing Ghostscript

For licensing reasons, Ghostscript is not installed with PowerBuilder. You (and your users) must download and install it before you can use this technique…

Alguém tem alguma ideia de qual é o procedimento?

EDITARObrigado a todos. A instalação do GhostScript provou ser suficiente. Só não consigo entender por que o procedimento é bem-sucedido em alguns PCs de bolsistas (usando o método = xslfop!) Sem usar GhostScript:-/

Foi útil?

Solução

GhostScript e configuração da impressora para PowerBuilder

Privilégios administrativos são obrigados a instalar a impressora. Estamos usando essa configuração no XP.

Essas instruções usam um driver de impressora HP em vez da fornecida pela Sybase. Se, por algum motivo, você não tiver esse driver, poderá fazer o download da HP. O motorista HP tem as seguintes vantagens:

  • PDFs gerados podem ser lidos por um leitor de tela (YMMV, mas a saída do driver Sybase não é legível de forma alguma.)
  • O motorista é assinado digitalmente para instalação em sistemas que requerem drivers assinados

Arquivos necessários

  • GS860W32.exe de http://pages.cs.wisc.edu/~ghost/ (Você pode tentar uma versão posterior, se quiser. 8.60 está funcionando bem para nós.)
  • Arquivos de driver em C: Arquivos de Programas Sybase Shared PowerBuilder Drivers (o caminho pode variar dependendo da instalação)

GhostScript

Instale GS860W32.EXE

  • Instale para C: Arquivos de Programas GS
  • Verifique todos os usuários
  • Verifique as fontes GhostScript de instalação

Impressora PS Sybase DataWindow

O nome da impressora é sensível à caixa e deve ser exatamente o que está dentro das citações. Não há espaço em "DataWindow". A maneira mais fácil de acertar é copiar deste documento e colá -lo.

  • Painel de controle aberto, impressoras e faxes
  • Escolha Adicionar impressora (a seguir)
  • Escolha impressora local, desmarque detectar e instalar automaticamente minha impressora plug e reprodução (a seguir)
  • Escolha Usar a seguinte porta, selecione Arquivo: (Em seguida)
  • Na lista esquerda, selecione 'HP' para o fabricante
  • Na lista à direita, role para baixo e selecione 'HP 8150 Series PS' (Next)
  • Nome da impressora "Sybase DataWindow PS"
  • Use como impressora padrão Selecionar não (a seguir)
  • Licença não compartilhe selecionado (a seguir)
  • Página de teste de impressão, Selecione NÃO (NEXT)
  • (Finalizar)

Outras dicas

Temos funcionando aqui. Do nosso wiki interno:

  • Instalar GhostScript em sua estação de trabalho (8.50 ou 8.15 recomendados)
  • Certifique -se de que os arquivos GhostScript no diretório DLL do PowerBuilder
  • Verifique se há um diretório no mesmo local que contém os drivers PostScript padrão fornecidos pela Sybase.
  • O PowerBuilder usa o driver do Adobe PostScript (que pode ser baixado gratuitamente no Adobe.com). Isso deve ser nomeado 'Adobe DataWindow PS'

Estamos usando a versão 1.06 do driver PostScript que você pode baixar aqui:

Seu código parece bom e está alinhado com o meu código que acabei de verificar que faz algo semelhante. Verifique se o GhostScript está instalado corretamente.

Para fins de depuração, eu tentaria usar um DataWindow muito mais simples sem o fundo do bitmap.

Como uma pequena adição aos outros, nunca tive que modificar () nenhum dos atributos de exportação; Eu apenas saveas (). Meu entendimento é que esses atributos são para tentar rotas não-ghostscript, mas não me lembro de ouvir ninguém com sucesso.

Para simplificar o seu teste, convém ver se você pode clicar com o botão direito do mouse no painel de visualização no pintor do DataWindow para ver se há uma opção "Salvar linhas como ...". (Não tenho 10.5 instalado no momento, então não consigo ver se está disponível nessa versão.) Ele salvará você executando o aplicativo e pelo menos testará a funcionalidade básica antes de executá -la no PowerScript.

Boa sorte,

Terry.

O problema com o GhostScript é que os drivers não são assinados. Este é um grande problema no Windows 8, na medida em que apenas interrompe a instalação dos drivers. Windows 7 Você foi informado o que estava acontecendo e permitiu instalar os drivers. O Windows 8 apenas interrompe a instalação dos drivers, você pode provar isso tentando criar uma impressora com os arquivos GhostScript.

Atualmente trabalhando nos drivers HP PS para tentar identificar uma solução alternativa para o sistema operacional Windows 8.

O Windows 8 permite drivers de impressora não assinados, mas você deve reiniciar no "modo avançado", consulte o procedimento no link a seguir e selecionar a opção Desativar a aplicação da assinatura do driver.http://windows.microsoft.com/en-gb/windows-8/windows-startup-settings-including-safe-mode

O Windows ainda alertará e aconselhará contra a instalação de um driver não assinado.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top