2012-07-25 19 views
22

Sto provando a generare un PDF utilizzando DOMPDF. Ho un codice HTML che viene poi convertito in PDF.Stampa margini in DOMPDF

Ma ho un problema. Quando inserisco un oggetto nella parte superiore della pagina (ad esempio un'icona), nel PDF viene visualizzato anche nella parte superiore della pagina. Ma quando stampo il PDF c'è un margine. So che deve esserci un margine minimo, ma nel mio caso è semplicemente troppo grande. C'è un modo per controllare questo margine in DOMPDF?

Sto tentando di riprodurre un documento esistente e nell'originale il logo non si trova nella parte superiore della pagina (c'è già un margine nel PDF). Ma quando lo stampo, si trova nella stessa posizione del PDF generato da me (e non c'è margine nel PDF).

C'è qualche margine di stampa già impostato nel PDF?

+0

non è vero margine di confusione stampante (che è regolato meccanicamente, e non variabile in alcun modo si può controllare tramite software) con il margine PDF? Avrai sempre un leggero margine quando stampi qualcosa. È probabile che alcuni sistemi di sicurezza impediscano alla stampante di inchiostrare fuori dai bordi della carta. – bakkerjoeri

risposta

53

Lo stile seguente sarà efficace impostare i margini del documento per 0:

@page { margin: 0px; } 
body { margin: 0px; } 

@page è utilizzato da dompdf 0.6.0, body da dompdf 0.5.1. È possibile modificare il margine della pagina e del corpo in modo indipendente, anche se in questo momento il margine dei due agisce insieme come limiti del contenuto.

+0

questo bug "spazio" mi ha salvato la giornata! – otinanai

+0

Ottima risposta. A proposito il bug "spazio" qui sopra si riferisce alla risposta di sotto che non analizza. Usa il codice in questa risposta come mostrato. –

13

volte è anche necessario impostare

html { margin: 0px} 
+1

Con dompdf '@ page' è, in pratica, sinonimo di' html' nel CSS. Non dovresti aver bisogno di specificare i margini per l'elemento 'html'. Se le tue regole @page non funzionano, verifica di avere uno spazio tra '@ page' e la parentesi di apertura (come nella mia risposta). C'è un bug in alcune versioni di dompdf in cui [gli stili @page vengono rilasciati] (https://github.com/dompdf/dompdf/issues/614) se manca questo spazio. – BrianS

+0

3 ore di google, ed è stato questo a sistemare tutto per me. Sei un dio tra gli uomini! – samuraiseoul