So verringern Sie den Abstand zwischen Stichworte?

Lesezeit: 4 Minuten

Benutzer-Avatar
DaveDev

Ich habe eine Seite, die ich in PDF umwandeln möchte. Diese Seite enthält eine Reihe von Absätzen, die nicht alle auf eine einzelne Seite passen. Wenn ich den Abstand zwischen den <p> Tags, das würde helfen, mehr zu passen. Ist das möglich? Vielen Dank.

  • Wie konvertieren Sie sie in PDF?

    – verzeihen

    7. Mai 2010 um 8:54 Uhr

  • @deceze: zwei Beispiele: Ubuntu kann alles sofort als PDF “drucken”. Windows kann mit installiertem Acrobat in PDF “drucken” (kostet ein paar hundert).

    – Delan Azabani

    7. Mai 2010 um 9:01 Uhr

  • @Delan Und OS X kann das auch, gut. Da dies eine Programmierseite ist, ging ich davon aus, dass das OP dies programmgesteuert tut. CSS hat dann vielleicht nichts mit der Lösung zu tun.

    – verzeihen

    7. Mai 2010 um 9:06 Uhr


  • @deceze, wir verwenden ein (Mist-)System namens Corda Highwire. Sie übergeben ihm eine URL zu Ihrer Seite und es wird eine PDF-Darstellung davon generiert. Das Schlimme daran ist, dass die Rendering-Engine anscheinend auf IE6-Standards basierte, sodass Sie Ihr Standard-HTML gründlich hacken müssen, damit es Ihrem Inhalt ähnelt. Es gibt eine andere Lösung namens PrinceXML, die ich mir angesehen habe und die ziemlich gut aussieht, aber wir sind an Corda gebunden, also bleibe ich dabei.

    – DaveDev

    7. Mai 2010 um 9:07 Uhr

  • Dann werde ich mein Bestes tun, um Corda auszuweichen. Danke für die Warnung. :Ö)

    – verzeihen

    7. Mai 2010 um 9:10 Uhr


Benutzer-Avatar
y_nk

CSS verwenden:

p { margin:0 }

Probieren Sie dieses wunderbare Plugin aus http://www.getfirebug.com 🙂

BEARBEITEN: Firebug ist jetzt als Projekt geschlossen, in das es migriert wurde https://www.mozilla.org/en-US/firefox/developer

  • Danke y_nk, ich benutze Firebug, wenn ich kann, aber es hilft nicht viel, wenn ich mit PDF arbeite !!

    – DaveDev

    7. Mai 2010 um 9:09 Uhr

  • Aber Dave, wenn Sie ihm eine URL zu Ihrer Seite übergeben, können Sie die URL verwenden, um zu überprüfen, wie die Seite gerendert wird. 🙂

    – ANeves

    7. Mai 2010 um 9:14 Uhr

  • True sr pt, aber das PDF wird nicht genau so gerendert, wie wir es im Browser sehen. Ich benutze manchmal die IE Developer Toolbar, um einen Einblick in die Struktur des HTML zu bekommen, aber dieser PDF-Generator, den wir verwenden, ist ein sehr ungezähmtes Biest.

    – DaveDev

    7. Mai 2010 um 9:29 Uhr

Benutzer-Avatar
Jona

Wie oben gezeigt, die Problem ist der Rand vor dem <p> Tag in der Renderzeit. Keine elegante Lösung, aber effektiv wäre es, den oberen Rand zu verringern.

p { margin-top: -20px; }

Das CSS margin -Eigenschaft kann verwendet werden, um alle Absätze zu beeinflussen:

p {
  margin: XXXem;
}

Ersetzen XXX mit Ihrem gewünschten Wert; für keinen Platz verwenden:

p {
  margin: 0em;
}

Benutzer-Avatar
fliegt noch

Ich habe festgestellt, dass dies funktioniert, um mehr Absätze im Buchstil zu geben:

p.firstpar {
  margin-top: 0;
  text-indent: 2em;
  padding: 0 5px 0 5px;
}
p.nextpar {
  margin-top: -1em;
  text-indent: 2em;
  padding: 0 5px 0 5px;
}

Verwendung der em (“M”) Einheit, anstatt px unit, es macht den Stil unabhängig von der Schriftgröße. Die Auffüllung erfolgt in dieser Reihenfolge: oben, rechts, unten, links.

<style type="text/css">
 p {margin-bottom: -1em;  margin-top: 0em;} 
</style>

Das hat bei mir komplett funktioniert. Absätze standen direkt untereinander. Als ich für beide Ränder 0em verwendete, blieb zwischen den Zeilen noch etwas Platz. Ich habe mich in meinem Browser für Entwicklertools entschieden, es mit -1em versucht und es hat funktioniert.

Benutzer-Avatar
cprcrack

Ein realeres Beispiel:

p { margin: 10px 0;}

Benutzer-Avatar
Mauro

Ich schlage vor, padding und margin auf 0 zu setzen.

Wenn dies Ihr Problem nicht löst, können Sie versuchen, mit Zeilenhöhe zu spielen, auch wenn dies nicht empfohlen wird.

  • Es ist margin nur. p Tags nicht verwenden padding für ihren Standardabstand und line-height ist der Abstand zwischen den Zeilen (der, wenn er verringert wird, dazu führt, dass sich die Zeilen überlappen.

    – Delan Azabani

    7. Mai 2010 um 9:03 Uhr

  • Ohne Zugriff auf die eigentliche Quelle kann ich nicht versichern, dass line-height nicht helfen würde, auch wenn es, wie gesagt, nicht empfohlen wird. Das Auffüllen würde den Abstand zwischen zwei Absätzen nicht ändern, aber wenn es auf einen Wert größer als 0 gesetzt wird, endet es VISUELL in einem größeren Abstand zwischen den Zweien. Danke für den Hinweis! 🙂

    – Mauro

    7. Mai 2010 um 11:21 Uhr

1310990cookie-checkSo verringern Sie den Abstand zwischen Stichworte?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy