Frage

Ich erstelle eine Rechnung der iTextSharp verwenden. Das zeigt sehr schön, aber irgendwann, wenn Rechnungspositionen größer in Menge sind, die Zusammenfassung Teil (die Displays Zwischensumme, Steuern, Rabatte, Endsumme etc.) wird geteilt. Einige DISPLAYES in der aktuellen Seite und einige Schritte auf der nächsten Seite. Ich dachte gesamte Zusammenfassung Teil in die nächste Seite zu bewegen, wenn die aktuelle Höhe links nicht genug dafür ist.

Doch das tun, muss ich wissen, wie viel Seitenhöhe verlassen wird (nach meiner aktuellen Seiteninhalt Rendering). Ich frage mich, ob jemand weiß, wie man aktuelle linke Höhe der Seite berechnen? Oder wenn es eine Eigenschaft im pdfPTable, die den Tisch zwingen, sich als Ganzes zu drucken und nicht lassen Sie es auf mehrere Seiten aufgeteilt! Ich denke, wenn zweite Option verfügbar ist, es einfach sein wird.

Zusammenfassend muß ich wissen, ob es möglich ist, verbleibende Seitenhöhe zu berechnen, und auch wenn das möglich ist, eine Tabelle zu zwingen, nicht über mehrere Seiten aufgeteilt.

Danke.    Sameers

War es hilfreich?

Lösung

Sie können in einer Zelle Daten überschreitet Grenze SplitLate zu false zu vermeiden Auto Seitenumbruch gesetzt.

......
table.addCell(cellData);

table.SplitLate = false;
......

Andere Tipps

Ich schlage vor, Sie eine verschachtelte Tabelle für Ihre Zusammenfassung Abschnitt. Ich glaube nicht, iText eine bestimmte Zelle auf einer Seite Grenze geteilt, so dass alles in dieser Zelle (selbst wenn die eine verschachtelte Tabelle mit Zellen der eigenen) auf der gleichen Seite bleiben.

Mit der Zeilenspanne von der Tabellenzelle, so dass es eine ganze Reihe von dir aus in Anspruch nimmt.

Ich bin nicht sicher, aber ich würde ein Bier auf sie setzt.

Was Objekt verwenden Sie Ihre Daten in das PDF hinzufügen? Multicolumn, Absatz, Satz?

Sie sollten in der Lage sein Document.PageSize.Height Eigenschaft zu nutzen, um die Höhe der Seite zurückzukehren.

Dann PDFPTable.Height verwenden, um die Höhe der Tabelle zurück.

verwendet also nur die Logik Document.PageSize.Height -. Table.Height, und Sie werden den verbleibenden y-Achsen-Raum zur Verfügung haben

Das PDFPTable Objekt hat Eigenschaften genannt SplitLate und SplitRows. Ich glaube, dass Sie diese Eigenschaften auf verwenden können, versuchen und halten Sie die Tabelle auf einer Seite.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top