Ich habe eine Anforderung, wo Dateien, die von Apache POI generiert werden, eine Datei mit dem Alle Spalten auf einer Seite anpassen gesetzt. Ich habe eine Reihe von Variationen mit der API ausprobiert, aber bisher konnte ich es nicht machen. Ich kann auch nicht wirklich herausfinden, ob es möglich ist.
Es sieht so aus, als ob die Funktion setFitToPage(true)
sowohl die Höhe als auch die Breite verändert und nicht nur die Breite, die ich möchte. Die Verwendung von setFitWidth
und setFitHeight
, wie ich in verschiedenen anderen Stack-Überlauf-Fragen finde, scheint nichts zu beeinflussen.
Hier ist was ich bisher habe:
%Vor% Es ist nicht der Aufruf von setFitToPage(true)
, der bewirkt, dass Excel sowohl die Höhe als auch die Breite an eine Seite anpasst. Dieser Aufruf ist notwendig, aber aus einem anderen Grund. Auf dem Bildschirm "Seite einrichten" von Excel steuert dieser Methodenaufruf, welcher Radiobutton im Dialogfeld aktiv ist. Der Wert true
setzt den Radiobutton für "Fit to:", so dass Sie die Seite (n) seitenweise (s) hoch skalieren können. Der Wert false
setzt den Radiobutton für "Anpassen an:", Prozent normale Größe.
In diesem Fall möchten Sie es auf 1 Seite Breite um "egal" Seiten groß anpassen. Der Wert für Seiten groß ( setFitHeight
Methode) ist 0
hier.
Wenn ich ein Workbook
mit einem Sheet
mit diesen Einstellungen ausschreibe, und ich es in Excel öffne, hat das Dialogfeld "Seite einrichten" das Optionsfeld "Anpassen an:" ausgewählt und "1 Seite (n) weit (leer) groß ". Im Bildschirm "Druckvorschau" wird in den Druckeinstellungen die Option "Alle Spalten auf einer Seite anpassen" ausgewählt.
Tags und Links java excel apache-poi