fpspreadsheet: Add unit tests for some more page layout properties (Fit width/height to pages, start page number) (completing the first 1000 test cases...)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4113 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
parent
607585d146
commit
4e420fa876
@ -943,7 +943,7 @@ begin
|
||||
if (s <> '') then
|
||||
begin
|
||||
if s[Length(s)] = '%' then Delete(s, Length(s), 1);
|
||||
data.PageLayout.ScalingFactor := StrToFloat(s, FPointSeparatorSettings);
|
||||
data.PageLayout.ScalingFactor := round(StrToFloat(s, FPointSeparatorSettings));
|
||||
Exclude(data.PageLayout.Options, poFitPages);
|
||||
end;
|
||||
|
||||
@ -3169,7 +3169,7 @@ procedure TsSpreadOpenDocWriter.WriteAutomaticStyles(AStream: TStream);
|
||||
if APageLayout.FitHeightToPages > 0 then
|
||||
pageLayoutStr := pageLayoutStr + 'style:scale-to-Y="' + IntToStr(APageLayout.FitHeightToPages) + '" ';
|
||||
end else
|
||||
pageLayoutStr := pageLayoutStr + 'style:scale-to="' + IntToStr(round(APageLayout.ScalingFactor)) + '%" ';
|
||||
pageLayoutStr := pageLayoutStr + 'style:scale-to="' + IntToStr(APageLayout.ScalingFactor) + '%" ';
|
||||
|
||||
options := 'charts drawings objects zero-values';
|
||||
if poPrintGridLines in APageLayout.Options then
|
||||
|
@ -688,7 +688,7 @@ type
|
||||
HeaderMargin: Double;
|
||||
FooterMargin: Double;
|
||||
StartPageNumber: Integer;
|
||||
ScalingFactor: Double; // in percent
|
||||
ScalingFactor: Integer; // in percent
|
||||
FitWidthToPages: Integer;
|
||||
FitHeightToPages: Integer;
|
||||
Copies: Integer;
|
||||
|
@ -71,6 +71,18 @@ type
|
||||
procedure TestWriteRead_BIFF5_ScalingFactor_2sheets;
|
||||
procedure TestWriteRead_BIFF5_ScalingFactor_3sheets;
|
||||
|
||||
procedure TestWriteRead_BIFF5_WidthToPages_1sheet;
|
||||
procedure TestWriteRead_BIFF5_WidthToPages_2sheets;
|
||||
procedure TestWriteRead_BIFF5_WidthToPages_3sheets;
|
||||
|
||||
procedure TestWriteRead_BIFF5_HeightToPages_1sheet;
|
||||
procedure TestWriteRead_BIFF5_HeightToPages_2sheets;
|
||||
procedure TestWriteRead_BIFF5_HeightToPages_3sheets;
|
||||
|
||||
procedure TestWriteRead_BIFF5_PageNumber_1sheet;
|
||||
procedure TestWriteRead_BIFF5_PageNumber_2sheets;
|
||||
procedure TestWriteRead_BIFF5_PageNumber_3sheets;
|
||||
|
||||
{ BIFF8 page layout tests }
|
||||
procedure TestWriteRead_BIFF8_PageMargins_1sheet_0;
|
||||
procedure TestWriteRead_BIFF8_PageMargins_1sheet_1;
|
||||
@ -97,6 +109,18 @@ type
|
||||
procedure TestWriteRead_BIFF8_ScalingFactor_2sheets;
|
||||
procedure TestWriteRead_BIFF8_ScalingFactor_3sheets;
|
||||
|
||||
procedure TestWriteRead_BIFF8_WidthToPages_1sheet;
|
||||
procedure TestWriteRead_BIFF8_WidthToPages_2sheets;
|
||||
procedure TestWriteRead_BIFF8_WidthToPages_3sheets;
|
||||
|
||||
procedure TestWriteRead_BIFF8_HeightToPages_1sheet;
|
||||
procedure TestWriteRead_BIFF8_HeightToPages_2sheets;
|
||||
procedure TestWriteRead_BIFF8_HeightToPages_3sheets;
|
||||
|
||||
procedure TestWriteRead_BIFF8_PageNumber_1sheet;
|
||||
procedure TestWriteRead_BIFF8_PageNumber_2sheets;
|
||||
procedure TestWriteRead_BIFF8_PageNumber_3sheets;
|
||||
|
||||
{ OOXML page layout tests }
|
||||
procedure TestWriteRead_OOXML_PageMargins_1sheet_0;
|
||||
procedure TestWriteRead_OOXML_PageMargins_1sheet_1;
|
||||
@ -123,6 +147,18 @@ type
|
||||
procedure TestWriteRead_OOXML_ScalingFactor_2sheets;
|
||||
procedure TestWriteRead_OOXML_ScalingFactor_3sheets;
|
||||
|
||||
procedure TestWriteRead_OOXML_WidthToPages_1sheet;
|
||||
procedure TestWriteRead_OOXML_WidthToPages_2sheets;
|
||||
procedure TestWriteRead_OOXML_WidthToPages_3sheets;
|
||||
|
||||
procedure TestWriteRead_OOXML_HeightToPages_1sheet;
|
||||
procedure TestWriteRead_OOXML_HeightToPages_2sheets;
|
||||
procedure TestWriteRead_OOXML_HeightToPages_3sheets;
|
||||
|
||||
procedure TestWriteRead_OOXML_PageNumber_1sheet;
|
||||
procedure TestWriteRead_OOXML_PageNumber_2sheets;
|
||||
procedure TestWriteRead_OOXML_PageNumber_3sheets;
|
||||
|
||||
{ OpenDocument page layout tests }
|
||||
procedure TestWriteRead_ODS_PageMargins_1sheet_0;
|
||||
procedure TestWriteRead_ODS_PageMargins_1sheet_1;
|
||||
@ -149,6 +185,18 @@ type
|
||||
procedure TestWriteRead_ODS_ScalingFactor_2sheets;
|
||||
procedure TestWriteRead_ODS_ScalingFactor_3sheets;
|
||||
|
||||
procedure TestWriteRead_ODS_WidthToPages_1sheet;
|
||||
procedure TestWriteRead_ODS_WidthToPages_2sheets;
|
||||
procedure TestWriteRead_ODS_WidthToPages_3sheets;
|
||||
|
||||
procedure TestWriteRead_ODS_HeightToPages_1sheet;
|
||||
procedure TestWriteRead_ODS_HeightToPages_2sheets;
|
||||
procedure TestWriteRead_ODS_HeightToPages_3sheets;
|
||||
|
||||
procedure TestWriteRead_ODS_PageNumber_1sheet;
|
||||
procedure TestWriteRead_ODS_PageNumber_2sheets;
|
||||
procedure TestWriteRead_ODS_PageNumber_3sheets;
|
||||
|
||||
end;
|
||||
|
||||
implementation
|
||||
@ -263,6 +311,9 @@ end;
|
||||
0 - Landscape page orientation for sheets 0 und 2, sheet 1 is portrait
|
||||
1 - Paper size: sheet 1 "Letter" (8.5" x 11"), sheets 0 and 2 "A5" (148 mm x 210 mm)
|
||||
2 - Scaling factor: sheet 1 50%, sheet 2 200%, sheet 3 100%
|
||||
3 - Scale n pages to width: sheet 1 n=2, sheet 2 n=3, sheet 3 n=1
|
||||
4 - Scale n pages to height: sheet 1 n=2, sheet 2 n=3, sheet 3 n=1
|
||||
5 - First page number: sheet 1 - 3, sheet 2 - automatic, sheet 3 - 1
|
||||
-------------------------------------------------------------------------------}
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_PageLayout(
|
||||
AFormat: TsSpreadsheetFormat; ANumSheets, ATestMode: Integer);
|
||||
@ -294,23 +345,51 @@ begin
|
||||
PageWidth := 148; PageHeight := 210;
|
||||
end;
|
||||
2: // Scaling factor: sheet 1 50%, sheet 2 200%, sheet 3 100%
|
||||
begin
|
||||
if p = 0 then ScalingFactor := 50 else
|
||||
if p = 1 then ScalingFactor := 200;
|
||||
Exclude(Options, poFitPages);
|
||||
end;
|
||||
begin
|
||||
if p = 0 then ScalingFactor := 50 else
|
||||
if p = 1 then ScalingFactor := 200;
|
||||
Exclude(Options, poFitPages);
|
||||
end;
|
||||
3: // Scale width to n pages
|
||||
begin
|
||||
case p of
|
||||
0: FitWidthToPages := 2;
|
||||
1: FitWidthToPages := 3;
|
||||
2: FitWidthToPages := 1;
|
||||
end;
|
||||
Include(Options, poFitPages);
|
||||
end;
|
||||
4: // Scale height to n pages
|
||||
begin
|
||||
case p of
|
||||
0: FitHeightToPages := 2;
|
||||
1: FitHeightToPages := 3;
|
||||
2: FitHeightToPages := 1;
|
||||
end;
|
||||
Include(Options, poFitPages);
|
||||
end;
|
||||
5: // Page number of first pge
|
||||
begin
|
||||
Options := Options + [poPrintHeaders, poUseStartPageNumber];
|
||||
case p of
|
||||
0: StartPageNumber := 3;
|
||||
1: Exclude(Options, poUseStartPageNumber);
|
||||
2: StartPageNumber := 1;
|
||||
end;
|
||||
Headers[HEADER_FOOTER_INDEX_ALL] := '&LPage &P of &N';
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
MyWorkbook := TsWorkbook.Create;
|
||||
try
|
||||
col := 0;
|
||||
for p := 0 to ANumSheets-1 do
|
||||
begin
|
||||
MyWorkSheet:= MyWorkBook.AddWorksheet(PageLayoutSheet+IntToStr(p+1));
|
||||
for row := 0 to 99 do
|
||||
Myworksheet.WriteNumber(row, 0, (row+1)+(col+1)*100+(p+1)*10000 );
|
||||
for col := 0 to 29 do
|
||||
Myworksheet.WriteNumber(row, col, (row+1)+(col+1)*100+(p+1)*10000 );
|
||||
MyWorksheet.PageLayout := SollPageLayout[p];
|
||||
end;
|
||||
MyWorkBook.WriteToFile(TempFile, AFormat, true);
|
||||
@ -349,6 +428,27 @@ begin
|
||||
CheckEquals(sollPageLayout[p].ScalingFactor, actualPageLayout.ScalingFactor,
|
||||
'Scaling factor mismatch, sheet "' + MyWorksheet.Name + '"');
|
||||
end;
|
||||
3: // Fit width to pages
|
||||
begin
|
||||
CheckEquals(poFitPages in sollPageLayout[p].Options, poFitPages in actualPageLayout.Options,
|
||||
'"poFitPages" option mismatch, sheet "' + MyWorksheet.name + '"');
|
||||
CheckEquals(sollPageLayout[p].FitWidthToPages, actualPageLayout.FitWidthToPages,
|
||||
'FitWidthToPages mismatch, sheet "' + MyWorksheet.Name + '"');
|
||||
end;
|
||||
4: // Fit height to pages
|
||||
begin
|
||||
CheckEquals(poFitPages in sollPageLayout[p].Options, poFitPages in actualPageLayout.Options,
|
||||
'"poFitPages" option mismatch, sheet "' + MyWorksheet.name + '"');
|
||||
CheckEquals(sollPageLayout[p].FitHeightToPages, actualPageLayout.FitHeightToPages,
|
||||
'FitWidthToPages mismatch, sheet "' + MyWorksheet.Name + '"');
|
||||
end;
|
||||
5: // Start page number
|
||||
begin
|
||||
CheckEquals(poUseStartPageNumber in sollPageLayout[p].Options, poUseStartPageNumber in actualPageLayout.Options,
|
||||
'"poUseStartPageNumber" option mismatch, sheet "' + MyWorksheet.name + '"');
|
||||
CheckEquals(sollPageLayout[p].StartPageNumber, actualPageLayout.StartPageNumber,
|
||||
'StartPageNumber value mismatch, sheet "' + MyWorksheet.Name + '"');
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
@ -536,6 +636,55 @@ begin
|
||||
TestWriteRead_PageLayout(sfExcel5, 3, 2);
|
||||
end;
|
||||
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF5_WidthToPages_1sheet;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel5, 1, 3);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF5_WidthToPages_2sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel5, 2, 3);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF5_WidthToPages_3sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel5, 3, 3);
|
||||
end;
|
||||
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF5_HeightToPages_1sheet;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel5, 1, 4);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF5_HeightToPages_2sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel5, 2, 4);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF5_HeightToPages_3sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel5, 3, 4);
|
||||
end;
|
||||
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF5_PageNumber_1sheet;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel5, 1, 5);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF5_PageNumber_2sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel5, 2, 5);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF5_PageNumber_3sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel5, 3, 5);
|
||||
end;
|
||||
|
||||
|
||||
{ Tests for BIFF8 file format }
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF8_PageMargins_1sheet_0;
|
||||
@ -648,6 +797,55 @@ begin
|
||||
TestWriteRead_PageLayout(sfExcel8, 3, 2);
|
||||
end;
|
||||
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF8_WidthToPages_1sheet;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel8, 1, 3);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF8_WidthToPages_2sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel8, 2, 3);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF8_WidthToPages_3sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel8, 3, 3);
|
||||
end;
|
||||
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF8_HeightToPages_1sheet;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel8, 1, 4);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF8_HeightToPages_2sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel8, 2, 4);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF8_HeightToPages_3sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel8, 3, 4);
|
||||
end;
|
||||
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF8_PageNumber_1sheet;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel8, 1, 5);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF8_PageNumber_2sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel8, 2, 5);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_BIFF8_PageNumber_3sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfExcel8, 3, 5);
|
||||
end;
|
||||
|
||||
|
||||
{ Tests for OOXML file format }
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_OOXML_PageMargins_1sheet_0;
|
||||
@ -761,6 +959,54 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_OOXML_WidthToPages_1sheet;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOOXML, 1, 3);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_OOXML_WidthToPages_2sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOOXML, 2, 3);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_OOXML_WidthToPages_3sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOOXML, 3, 3);
|
||||
end;
|
||||
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_OOXML_HeightToPages_1sheet;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOOXML, 1, 4);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_OOXML_HeightToPages_2sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOOXML, 2, 4);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_OOXML_HeightToPages_3sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOOXML, 3, 4);
|
||||
end;
|
||||
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_OOXML_PageNumber_1sheet;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOOXML, 1, 5);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_OOXML_PageNumber_2sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOOXML, 2, 5);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_OOXML_PageNumber_3sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOOXML, 3, 5);
|
||||
end;
|
||||
|
||||
|
||||
{ Tests for Open Document file format }
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_ODS_PageMargins_1sheet_0;
|
||||
@ -874,6 +1120,54 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_ODS_WidthToPages_1sheet;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOpenDocument, 1, 3);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_ODS_WidthToPages_2sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOpenDocument, 2, 3);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_ODS_WidthToPages_3sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOpenDocument, 3, 3);
|
||||
end;
|
||||
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_ODS_HeightToPages_1sheet;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOpenDocument, 1, 4);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_ODS_HeightToPages_2sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOpenDocument, 2, 4);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_ODS_HeightToPages_3sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOpenDocument, 3, 4);
|
||||
end;
|
||||
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_ODS_PageNumber_1sheet;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOpenDocument, 1, 5);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_ODS_PageNumber_2sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOpenDocument, 2, 5);
|
||||
end;
|
||||
|
||||
procedure TSpreadWriteReadPageLayoutTests.TestWriteRead_ODS_PageNumber_3sheets;
|
||||
begin
|
||||
TestWriteRead_PageLayout(sfOpenDocument, 3, 5);
|
||||
end;
|
||||
|
||||
|
||||
initialization
|
||||
RegisterTest(TSpreadWriteReadPageLayoutTests);
|
||||
|
||||
|
@ -2754,7 +2754,7 @@ begin
|
||||
AStream.WriteWord(WordToLE(w));
|
||||
|
||||
{ Scaling factor in percent }
|
||||
w := Round(FWorksheet.PageLayout.ScalingFactor);
|
||||
w := FWorksheet.PageLayout.ScalingFactor;
|
||||
AStream.WriteWord(WordToLE(w));
|
||||
|
||||
{ Start page number }
|
||||
|
@ -1409,23 +1409,32 @@ begin
|
||||
// Scaling factor
|
||||
s := GetAttrValue(ANode, 'scale');
|
||||
if s <> '' then
|
||||
begin
|
||||
AWorksheet.PageLayout.ScalingFactor := StrToInt(s);
|
||||
Exclude(AWorksheet.PageLayout.Options, poFitPages);
|
||||
end;
|
||||
|
||||
// Fit print job to pages
|
||||
s := GetAttrValue(ANode, 'fitToHeight');
|
||||
if s <> '' then
|
||||
begin
|
||||
AWorksheet.PageLayout.FitHeightToPages := StrToInt(s);
|
||||
if poFitPages in AWorksheet.PageLayout.Options then
|
||||
Include(AWorksheet.PageLayout.Options, poFitPages);
|
||||
end;
|
||||
|
||||
s := GetAttrValue(ANode, 'fitToWidth');
|
||||
if s <> '' then
|
||||
begin
|
||||
AWorksheet.PageLayout.FitWidthToPages := StrToInt(s);
|
||||
|
||||
if (AWorksheet.PageLayout.FitHeightToPages > 0) or (AWorksheet.PageLayout.FitWidthToPages > 0) then
|
||||
Include(AWorksheet.pageLayout.Options, poFitPages);
|
||||
Include(AWorksheet.PageLayout.Options, poFitPages);
|
||||
end;
|
||||
|
||||
// First page number
|
||||
s := GetAttrValue(ANode, 'useFirstPageNumber');
|
||||
if s = '1' then
|
||||
Include(AWorksheet.PageLayout.Options, poUseStartPageNumber);
|
||||
|
||||
s := GetAttrValue(ANode, 'firstPageNumber');
|
||||
if s <> '' then
|
||||
AWorksheet.PageLayout.StartPageNumber := StrToInt(s);
|
||||
|
||||
@ -2520,19 +2529,15 @@ begin
|
||||
break;
|
||||
end;
|
||||
|
||||
// Scaling factor
|
||||
if AWorksheet.PageLayout.ScalingFactor <> 100 then
|
||||
s := Format('%s scale="%.0f" fitToHeight="0" fitToWidth="0"', [
|
||||
s, AWorksheet.PageLayout.ScalingFactor
|
||||
], FPointSeparatorSettings);
|
||||
|
||||
// Fit width pages
|
||||
if AWorksheet.PageLayout.FitWidthToPages > 0 then
|
||||
if poFitPages in AWorksheet.PageLayout.Options then
|
||||
begin
|
||||
// Fit width to pages
|
||||
s := Format('%s fitToWidth="%d"', [s, AWorksheet.PageLayout.FitWidthToPages]);
|
||||
|
||||
// Fit height pages
|
||||
if AWorksheet.PageLayout.FitHeightToPages > 0 then
|
||||
// Fit height to pages
|
||||
s := Format('%s fitToHeight="%d"', [s, AWorksheet.PageLayout.FitHeightToPages]);
|
||||
end else
|
||||
// Scaling factor
|
||||
s := Format('%s scale="%d"', [s, AWorksheet.PageLayout.ScalingFactor]);
|
||||
|
||||
// Orientation
|
||||
s := Format('%s orientation="%s"', [
|
||||
@ -2541,7 +2546,9 @@ begin
|
||||
|
||||
// First page number
|
||||
if poUseStartPageNumber in FWorksheet.PageLayout.Options then
|
||||
s := Format('%s useFirstPageNumber="%d"', [s, AWorksheet.PageLayout.StartPageNumber]);
|
||||
s := Format('%s useFirstPageNumber="1"', [s]);
|
||||
|
||||
s := Format('%s firstPageNumber="%d"', [s, AWorksheet.PageLayout.StartPageNumber]);
|
||||
|
||||
// Print order
|
||||
if poPrintPagesByRows in AWorksheet.PageLayout.Options then
|
||||
|
Loading…
Reference in New Issue
Block a user