
Ao imprimir via "Salvar como PDF" no Chrome, como posso ajustar o tamanho da página às dimensões da página da web?
A página a partir da qual estou tentando gerar um PDF contém vários gráficos e não pretendo imprimi-lo em papel - gostaria apenas de gerar um documento apresentável. Mas, quando vou imprimi-lo como PDF, meus gráficos ficam divididos em todas as páginas. Eu gostaria simplesmente de imprimir tudo em uma página. Isso é possível?
Responder1
AVISO: ESTA ABORDAGEM ESTÁ SEMI DEPRECADA
O Chrome é REALMENTE impressionante com sua capacidade de permitir a personalização na seção de impressão para tamanhos de página.
Como tal, você pode personalizar o tamanho da impressão. Isso realmente me salvou ao imprimir uma página da web de 32 "por 80" em PDF.
Aqui estão as instruções (lembre-se, estamos modificando o front end da página, então isso é um pouco técnico e envolve algumas modificações no HTML)
- Ctrl + p para abrir a caixa de diálogo de impressão
- Clique em "Mais configurações" para expandir a seção inferior
Clique com o botão direito no menu suspenso "Tamanho do papel" e clique em "Inspecionar"
(nota: isso abrirá as ferramentas de desenvolvimento do Chrome)Nas ferramentas Dev,
<select class="md-select">...</select>
estará destacado, clique na seta ao lado para expandir essa seção.- Depois de expandido, a primeira opção será:
<option value="{"height_microns":1189000,"name":"ISO_A0","width_microns":841000,"custom_display_name":"A0"}">A0</option>
- Clique com o botão direito e selecione "Editar como HTML". Uma seção de edição de texto será aberta, com o texto da opção anterior todo destacado.
Neste ponto, tudo que você precisa fazer é inserir uma opção personalizada nesta lista após a existente. Isso significa colar o seu próprio. Infelizmente não consigo construir uma ferramenta para fazer o snippet para você colar, pois o superusuário não permite stacksnippets.
Existem apenas alguns valores que você precisa modificar. Mudei os nomes para PERSONALIZADO aqui abaixo.
Você notará que no texto abaixo há HHHHHHHHHH e WWWWWWWWWW. Eles devem ser alterados manualmente para os valores de mícron associados às dimensões desejadas. Este site oferece uma ótima calculadora de mícrons gratuita:https://www.calculateme.com/length/inches/to-microns/
Para minha altura era: 80 polegadas = 2.032.000 mícrons, então para o HHHHHHHHHH substituí isso por 2.032.000
Para minha largura era 32 polegadas = 812.800 mícrons, então para WWWWWWWWWW eu substituí isso por 812.800
Encontre seus próprios valores associados e faça o mesmo com o texto abaixo.
<option value="{"height_microns":HHHHHHHHHH,"name":"ISO_CUSTOM","width_microns":WWWWWWWWWW,"custom_display_name":"CUSTOM"}">CUSTOM</option>
Quando o texto estiver pronto, coloque-o diretamente após a seção no editor de texto "Editar como HTML". Uma vez feito isso, clique em qualquer lugar fora da área de edição de texto para que as alterações sejam renderizadas.
Neste ponto, você pode clicar no menu suspenso, ver sua opção PERSONALIZADA e selecioná-la.
Eu sei que isso parece árduo, no entanto, é realmente muito simples, e se você estiver criando um PDF a partir de algo realmente personalizado, você economizará bastante tempo.
atualizações sérias
Em algum momento, parece que a visualização da impressão do Google Chrome foi atualizada para ser mais orientada para testes. Como resultado, adicionar um valor personalizado viola uma condição de teste e nada acontece. Essa abordagem não funciona mais como mostrado.
O requisito aqui é interceptar literalmente os valores usando o depurador para contornar a prevenção das asserções de teste. Desculpe, mas isso é muito profundo para escrever aqui. Além disso, estou preocupado com a possibilidade de que, ao publicar uma correção funcional atual, ela seja posteriormente protegida por um motivo ou outro.
Caro Google, se você realmente está lendo essas postagens, talvez apenas permita uma opção de mícron personalizada? Seria muito apreciado!
Responder2
Por enquanto, encontrei uma extensão do Chrome que funciona para o que estou fazendo. Ele me permite capturar a página inteira e salvá-la como PDF ou imagem. A única desvantagem deste método é que a página (mesmo quando for PDF) é, como um todo, uma imagem. Portanto, o texto não é selecionável ou escalonável em vetor.
Aqui está a extensão se ajudar alguém: Faça capturas de tela de páginas da Web inteiras - FireShot
Responder3
Solução moderna e única:
Injete o seguinte CSS em qualquer lugar do código-fonte da página(ou um arquivo CSS usado pela própria página)e altere as dimensões para qualquer valor de sua preferência.
@page {
size: 4.0in 25.5in; /* <- You can change these dimensions */
margin: 0;
}
Agora experimente a opção “Salvar como PDF” e você verá que as páginas ficarão nessas dimensões.
Responder4
O Chrome possui um conjunto padrão, mas pequeno, de ferramentas para layout de página na caixa de diálogo Imprimir. Eles estão logo abaixo de onde você seleciona a impressão e, portanto, não são difíceis de perder.
Existe o Layout, onde você pode escolher entre Retrato e Paisagem.
Existe o Tamanho do papel, onde você pode selecionar entre vários tamanhos padrão.
Existe Margens, onde você pode ajustar as margens não impressas da página.
Existe a Escala, que talvez seja a mais útil para isso.
E há opções adicionais para incluir/excluir cabeçalhos/rodapés e gráficos de fundo.
Imprimir páginas da web é uma arte inexata porque grande parte do design da página é explicitamente definido no código da página e não é otimizado para o layout de impressão. Esses códigos de layout de página definidos explicitamente entram em conflito com as opções de layout de impressão com as quais você pode estar familiarizado no processamento de texto ou em outros aplicativos, onde o programa pode exercer maior controle sobre o layout do documento.