xlsx and xls: read the print setup, so a printed sheet fits its paper
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Accessibilité débutants
- 35/100
Piste de recherche
Start in internal/html/document_element.cpp at sheet_print_fit, then read ooxml_spreadsheet_document.cpp and the existing Sheet::page_layout() path. Trace how XLSX page setup, margins, column widths and defaults are read, then compare the corresponding XLS records (SETUP, margin records, COLINFO, DEFCOLWIDTH). Done means XLSX and XLS print setup and effective column widths feed the fit calculation; pagination, print ranges and repeated title rows are out of scope.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Split out of #816. For an ods sheet, #817, #820 and #1197 fixed the reported case: the ruler does not print, and translate_sheet writes --odr-print-fit from Sheet::page_layout(). For xlsx and xls, sheet_page_layout returns an empty layout, so a wide sheet still depends on the shrink heuristic of the browser.
Three gaps stop sheet_print_fit (internal/html/document_element.cpp) for xlsx:
pageSetupandpageMarginsare not read (ooxml_spreadsheet_document.cpp,// TODO pageSetup is not read).paperSizeis an enumeration (ECMA-376 Part 1, 18.3.1.63),orientationturns it, and the margins are in inches. ApaperWidthandpaperHeightwith units can replace the enumeration.- A column width is in characters (
ch), andcss_pixelsgives no answer forch. Excel converts with the maximum digit width of the default font (7 px for Calibri 11). - A column with no
<col>has no width, so the sum stops.sheetFormatPr/@defaultColWidthor@baseColWidthgives the default.
xls has the same shape (SETUP, the margin records, COLINFO and DEFCOLWIDTH).
Not in scope: pagination along the columns, print ranges, and repeated title rows. #816 lists these as the larger fix.
- Langage dominant
- C++
- Étoiles
- 41
- Forks
- 10
- Merge moyen
- 10 h 30 min
- PR mergées (30 j)
- 342
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de opendocument-app/OpenDocument.core
-
Difficulté 4/5 3-5 jours Accessibilité débutants 48/100
opendocument-app/OpenDocument.core#1281 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 3/5 1-2 jours Accessibilité débutants 57/100
opendocument-app/OpenDocument.core#1280 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 42/100
opendocument-app/OpenDocument.core#1279 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 35/100
opendocument-app/OpenDocument.core#1278 ·
Les mainteneurs répondent en général sous 1 jour
-
enhancement
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 35/100
opendocument-app/OpenDocument.core#1221 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de opendocument-app/OpenDocument.core
Issues similaires
-
Issue-Bug Needs-Triage
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
microsoft/winget-cli#6645 ·
Les mainteneurs répondent en général sous 2 jours
-
cleanup help wanted
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
ESPresense/ESPresense#2602 ·
Les mainteneurs répondent en général sous 1 jour
-
devex good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
Les mainteneurs répondent en général sous 1 jour
-
artifact:simulation-scenario domain:physics good first issue help wanted role:validation testing
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
Les mainteneurs répondent en général sous 3 jours