RxFPC:Add TRxDBGridExportPDF to RxDBGrid demo

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5101 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
alexs75
2016-08-23 10:27:25 +00:00
parent 077039c719
commit e2482a5149
16 changed files with 354 additions and 435 deletions

View File

@ -55,13 +55,13 @@
<MinVersion Major="1" Release="18" Build="56" Valid="True"/> <MinVersion Major="1" Release="18" Build="56" Valid="True"/>
</Item5> </Item5>
</RequiredPackages> </RequiredPackages>
<Units Count="135"> <Units Count="138">
<Unit0> <Unit0>
<Filename Value="RxDBGridDemo.lpr"/> <Filename Value="RxDBGridDemo.lpr"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<CursorPos X="47" Y="18"/> <CursorPos X="47" Y="18"/>
<UsageCount Value="110"/> <UsageCount Value="112"/>
</Unit0> </Unit0>
<Unit1> <Unit1>
<Filename Value="rxdbgridmainunit.pas"/> <Filename Value="rxdbgridmainunit.pas"/>
@ -70,9 +70,8 @@
<HasResources Value="True"/> <HasResources Value="True"/>
<ResourceBaseClass Value="Form"/> <ResourceBaseClass Value="Form"/>
<UnitName Value="RxDBGridMainUnit"/> <UnitName Value="RxDBGridMainUnit"/>
<IsVisibleTab Value="True"/> <CursorPos X="134" Y="14"/>
<CursorPos X="61" Y="10"/> <UsageCount Value="112"/>
<UsageCount Value="110"/>
<Loaded Value="True"/> <Loaded Value="True"/>
<LoadedDesigner Value="True"/> <LoadedDesigner Value="True"/>
</Unit1> </Unit1>
@ -181,9 +180,11 @@
</Unit17> </Unit17>
<Unit18> <Unit18>
<Filename Value="../../rxdconst.pas"/> <Filename Value="../../rxdconst.pas"/>
<TopLine Value="144"/> <EditorIndex Value="2"/>
<CursorPos X="21" Y="165"/> <TopLine Value="159"/>
<UsageCount Value="11"/> <CursorPos X="3" Y="177"/>
<UsageCount Value="12"/>
<Loaded Value="True"/>
</Unit18> </Unit18>
<Unit19> <Unit19>
<Filename Value="../../../lcl/include/winapih.inc"/> <Filename Value="../../../lcl/include/winapih.inc"/>
@ -895,11 +896,10 @@
<Unit129> <Unit129>
<Filename Value="../../rxdbgridprintgrid.pas"/> <Filename Value="../../rxdbgridprintgrid.pas"/>
<UnitName Value="RxDBGridPrintGrid"/> <UnitName Value="RxDBGridPrintGrid"/>
<EditorIndex Value="2"/> <EditorIndex Value="-1"/>
<TopLine Value="310"/> <TopLine Value="310"/>
<CursorPos Y="322"/> <CursorPos Y="322"/>
<UsageCount Value="10"/> <UsageCount Value="10"/>
<Loaded Value="True"/>
</Unit129> </Unit129>
<Unit130> <Unit130>
<Filename Value="../../../lazreport/source/lr_desgn.pas"/> <Filename Value="../../../lazreport/source/lr_desgn.pas"/>
@ -907,19 +907,16 @@
<HasResources Value="True"/> <HasResources Value="True"/>
<ResourceBaseClass Value="Form"/> <ResourceBaseClass Value="Form"/>
<UnitName Value="LR_Desgn"/> <UnitName Value="LR_Desgn"/>
<EditorIndex Value="5"/> <EditorIndex Value="-1"/>
<TopLine Value="7481"/> <TopLine Value="7481"/>
<CursorPos Y="7496"/> <CursorPos Y="7496"/>
<UsageCount Value="10"/> <UsageCount Value="10"/>
<Loaded Value="True"/>
<LoadedDesigner Value="True"/>
</Unit130> </Unit130>
<Unit131> <Unit131>
<Filename Value="../../../lazreport/source/lr_class.pas"/> <Filename Value="../../../lazreport/source/lr_class.pas"/>
<UnitName Value="LR_Class"/> <UnitName Value="LR_Class"/>
<EditorIndex Value="3"/> <EditorIndex Value="-1"/>
<UsageCount Value="10"/> <UsageCount Value="10"/>
<Loaded Value="True"/>
</Unit131> </Unit131>
<Unit132> <Unit132>
<Filename Value="../../../lazreport/source/lr_view.pas"/> <Filename Value="../../../lazreport/source/lr_view.pas"/>
@ -927,12 +924,10 @@
<HasResources Value="True"/> <HasResources Value="True"/>
<ResourceBaseClass Value="Form"/> <ResourceBaseClass Value="Form"/>
<UnitName Value="LR_View"/> <UnitName Value="LR_View"/>
<EditorIndex Value="4"/> <EditorIndex Value="-1"/>
<TopLine Value="1524"/> <TopLine Value="1524"/>
<CursorPos Y="1540"/> <CursorPos Y="1540"/>
<UsageCount Value="10"/> <UsageCount Value="10"/>
<Loaded Value="True"/>
<LoadedDesigner Value="True"/>
</Unit132> </Unit132>
<Unit133> <Unit133>
<Filename Value="/home/install/source/fpcsrc/rtl/objpas/sysutils/sysstrh.inc"/> <Filename Value="/home/install/source/fpcsrc/rtl/objpas/sysutils/sysstrh.inc"/>
@ -943,134 +938,90 @@
</Unit133> </Unit133>
<Unit134> <Unit134>
<Filename Value="/home/install/source/fpcsrc/packages/fcl-base/src/gettext.pp"/> <Filename Value="/home/install/source/fpcsrc/packages/fcl-base/src/gettext.pp"/>
<EditorIndex Value="1"/> <EditorIndex Value="-1"/>
<TopLine Value="313"/> <TopLine Value="313"/>
<CursorPos X="3" Y="315"/> <CursorPos X="3" Y="315"/>
<UsageCount Value="10"/> <UsageCount Value="10"/>
<Loaded Value="True"/>
</Unit134> </Unit134>
<Unit135>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<UnitName Value="RxDBGridExportPdf"/>
<IsVisibleTab Value="True"/>
<EditorIndex Value="1"/>
<TopLine Value="483"/>
<CursorPos Y="503"/>
<UsageCount Value="11"/>
<Loaded Value="True"/>
</Unit135>
<Unit136>
<Filename Value="../../rxdbgridexportpdfsetupunit.pas"/>
<ComponentName Value="RxDBGridExportPdfSetupForm"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="RxDBGridExportPdfSetupUnit"/>
<EditorIndex Value="-1"/>
<TopLine Value="65"/>
<CursorPos Y="113"/>
<UsageCount Value="11"/>
</Unit136>
<Unit137>
<Filename Value="/home/install/source/fpcsrc/packages/fcl-pdf/src/fppdf.pp"/>
<UnitName Value="fpPDF"/>
<EditorIndex Value="-1"/>
<TopLine Value="147"/>
<CursorPos X="3" Y="42"/>
<UsageCount Value="10"/>
</Unit137>
</Units> </Units>
<JumpHistory Count="30" HistoryIndex="29"> <JumpHistory Count="12" HistoryIndex="11">
<Position1> <Position1>
<Filename Value="../../../lazreport/source/lr_desgn.pas"/>
<Caret Line="7496" TopLine="7481"/>
</Position1>
<Position2>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="373" Column="25" TopLine="359"/>
</Position2>
<Position3>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="369" TopLine="359"/>
</Position3>
<Position4>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="370" TopLine="359"/>
</Position4>
<Position5>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="371" TopLine="359"/>
</Position5>
<Position6>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="372" TopLine="359"/>
</Position6>
<Position7>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="373" TopLine="359"/>
</Position7>
<Position8>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="375" TopLine="359"/>
</Position8>
<Position9>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="378" TopLine="359"/>
</Position9>
<Position10>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="379" TopLine="365"/>
</Position10>
<Position11>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="386" TopLine="365"/>
</Position11>
<Position12>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="390" TopLine="366"/>
</Position12>
<Position13>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="370" TopLine="364"/>
</Position13>
<Position14>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="372" Column="133" TopLine="358"/>
</Position14>
<Position15>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="351" Column="4" TopLine="336"/>
</Position15>
<Position16>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="335" Column="31" TopLine="321"/>
</Position16>
<Position17>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="413" Column="21" TopLine="389"/>
</Position17>
<Position18>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="415" Column="31" TopLine="391"/>
</Position18>
<Position19>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="416" Column="50" TopLine="392"/>
</Position19>
<Position20>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="492" Column="69" TopLine="467"/>
</Position20>
<Position21>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="493" Column="69" TopLine="468"/>
</Position21>
<Position22>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="430" TopLine="430"/>
</Position22>
<Position23>
<Filename Value="../../rxdbgridprintgrid.pas"/>
<Caret Line="316" TopLine="308"/>
</Position23>
<Position24>
<Filename Value="rxdbgridmainunit.pas"/> <Filename Value="rxdbgridmainunit.pas"/>
<Caret Line="150" TopLine="127"/> <Caret Line="150" TopLine="127"/>
</Position24> </Position1>
<Position25> <Position2>
<Filename Value="rxdbgridmainunit.pas"/> <Filename Value="rxdbgridmainunit.pas"/>
<Caret Line="149" TopLine="126"/> <Caret Line="149" TopLine="126"/>
</Position25> </Position2>
<Position26> <Position3>
<Filename Value="rxdbgridmainunit.pas"/> <Filename Value="rxdbgridmainunit.pas"/>
<Caret Line="148" TopLine="125"/> <Caret Line="148" TopLine="125"/>
</Position26> </Position3>
<Position27> <Position4>
<Filename Value="rxdbgridmainunit.pas"/> <Filename Value="rxdbgridmainunit.pas"/>
<Caret Line="147" TopLine="125"/> <Caret Line="147" TopLine="125"/>
</Position27> </Position4>
<Position28> <Position5>
<Filename Value="rxdbgridmainunit.pas"/> <Filename Value="rxdbgridmainunit.pas"/>
<Caret Line="11" Column="56"/> <Caret Line="11" Column="56"/>
</Position28> </Position5>
<Position29> <Position6>
<Filename Value="rxdbgridmainunit.pas"/> <Filename Value="rxdbgridmainunit.pas"/>
<Caret Line="109" Column="27" TopLine="94"/> <Caret Line="109" Column="27" TopLine="94"/>
</Position29> </Position6>
<Position30> <Position7>
<Filename Value="rxdbgridmainunit.pas"/> <Filename Value="rxdbgridmainunit.pas"/>
<Caret Line="84" Column="25" TopLine="71"/> <Caret Line="84" Column="25" TopLine="71"/>
</Position30> </Position7>
<Position8>
<Filename Value="rxdbgridmainunit.pas"/>
<Caret Line="10" Column="61"/>
</Position8>
<Position9>
<Filename Value="rxdbgridmainunit.pas"/>
<Caret Line="14" Column="134"/>
</Position9>
<Position10>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="129" Column="3" TopLine="177"/>
</Position10>
<Position11>
<Filename Value="../../rxdconst.pas"/>
<Caret Line="199" Column="40" TopLine="170"/>
</Position11>
<Position12>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="1113" Column="3" TopLine="1098"/>
</Position12>
</JumpHistory> </JumpHistory>
</ProjectOptions> </ProjectOptions>
<CompilerOptions> <CompilerOptions>
@ -1113,7 +1064,7 @@
<Expression Value="K1"/> <Expression Value="K1"/>
</Item5> </Item5>
</Watches> </Watches>
<Exceptions Count="3"> <Exceptions Count="4">
<Item1> <Item1>
<Name Value="EInvalidOp"/> <Name Value="EInvalidOp"/>
</Item1> </Item1>
@ -1123,6 +1074,9 @@
<Item3> <Item3>
<Name Value="EVariantError"/> <Name Value="EVariantError"/>
</Item3> </Item3>
<Item4>
<Name Value="ETTF"/>
</Item4>
</Exceptions> </Exceptions>
</Debugging> </Debugging>
</CONFIG> </CONFIG>

View File

@ -14,8 +14,8 @@ object RxDBGridMainForm: TRxDBGridMainForm
LCLVersion = '1.7' LCLVersion = '1.7'
object RxDBGrid1: TRxDBGrid object RxDBGrid1: TRxDBGrid
Left = 0 Left = 0
Height = 634 Height = 627
Top = 70 Top = 77
Width = 1151 Width = 1151
ColumnDefValues.BlobText = '(примечание)' ColumnDefValues.BlobText = '(примечание)'
TitleButtons = True TitleButtons = True
@ -428,19 +428,19 @@ object RxDBGridMainForm: TRxDBGridMainForm
end end
object Panel1: TPanel object Panel1: TPanel
Left = 0 Left = 0
Height = 70 Height = 77
Top = 0 Top = 0
Width = 1151 Width = 1151
Align = alTop Align = alTop
AutoSize = True AutoSize = True
ClientHeight = 70 ClientHeight = 77
ClientWidth = 1151 ClientWidth = 1151
TabOrder = 1 TabOrder = 1
object Label1: TLabel object Label1: TLabel
AnchorSideLeft.Control = Button2 AnchorSideLeft.Control = Button2
AnchorSideLeft.Side = asrBottom AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = Panel1 AnchorSideTop.Control = Panel1
Left = 270 Left = 274
Height = 20 Height = 20
Top = 7 Top = 7
Width = 36 Width = 36
@ -452,9 +452,9 @@ object RxDBGridMainForm: TRxDBGridMainForm
AnchorSideLeft.Control = Panel1 AnchorSideLeft.Control = Panel1
AnchorSideTop.Control = Panel1 AnchorSideTop.Control = Panel1
Left = 7 Left = 7
Height = 32 Height = 36
Top = 7 Top = 7
Width = 87 Width = 89
Action = actCalcTotal Action = actCalcTotal
AutoSize = True AutoSize = True
BorderSpacing.Around = 6 BorderSpacing.Around = 6
@ -464,10 +464,10 @@ object RxDBGridMainForm: TRxDBGridMainForm
AnchorSideLeft.Control = Button1 AnchorSideLeft.Control = Button1
AnchorSideLeft.Side = asrBottom AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = Panel1 AnchorSideTop.Control = Panel1
Left = 100 Left = 102
Height = 32 Height = 36
Top = 7 Top = 7
Width = 164 Width = 166
Action = actOptimizeColumnsWidthAll Action = actOptimizeColumnsWidthAll
AutoSize = True AutoSize = True
BorderSpacing.Around = 6 BorderSpacing.Around = 6
@ -478,11 +478,11 @@ object RxDBGridMainForm: TRxDBGridMainForm
AnchorSideLeft.Side = asrBottom AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = CheckBox2 AnchorSideTop.Control = CheckBox2
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
Left = 499 Left = 503
Height = 24 Height = 24
Hint = 'Use filter line' Hint = 'Use filter line'
Top = 37 Top = 37
Width = 84 Width = 85
BorderSpacing.Left = 6 BorderSpacing.Left = 6
Caption = 'Use filter' Caption = 'Use filter'
OnChange = CheckBox1Change OnChange = CheckBox1Change
@ -492,8 +492,8 @@ object RxDBGridMainForm: TRxDBGridMainForm
AnchorSideLeft.Control = Label1 AnchorSideLeft.Control = Label1
AnchorSideTop.Control = Label1 AnchorSideTop.Control = Label1
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
Left = 276 Left = 280
Height = 30 Height = 32
Top = 33 Top = 33
Width = 217 Width = 217
BorderSpacing.Around = 6 BorderSpacing.Around = 6
@ -512,11 +512,11 @@ object RxDBGridMainForm: TRxDBGridMainForm
AnchorSideLeft.Control = ComboBox1 AnchorSideLeft.Control = ComboBox1
AnchorSideLeft.Side = asrBottom AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = Panel1 AnchorSideTop.Control = Panel1
Left = 499 Left = 503
Height = 24 Height = 24
Hint = 'Auto fill column width' Hint = 'Auto fill column width'
Top = 7 Top = 7
Width = 133 Width = 134
BorderSpacing.Around = 6 BorderSpacing.Around = 6
Caption = 'Auto fill columns' Caption = 'Auto fill columns'
OnChange = CheckBox2Change OnChange = CheckBox2Change
@ -526,10 +526,10 @@ object RxDBGridMainForm: TRxDBGridMainForm
AnchorSideLeft.Control = CheckBox2 AnchorSideLeft.Control = CheckBox2
AnchorSideLeft.Side = asrBottom AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = Panel1 AnchorSideTop.Control = Panel1
Left = 638 Left = 643
Height = 24 Height = 24
Top = 7 Top = 7
Width = 120 Width = 121
BorderSpacing.Around = 6 BorderSpacing.Around = 6
Caption = 'Show indicator' Caption = 'Show indicator'
Checked = True Checked = True
@ -542,10 +542,10 @@ object RxDBGridMainForm: TRxDBGridMainForm
AnchorSideLeft.Side = asrBottom AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = CheckBox3 AnchorSideTop.Control = CheckBox3
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
Left = 638 Left = 643
Height = 24 Height = 24
Top = 37 Top = 37
Width = 116 Width = 118
BorderSpacing.Around = 6 BorderSpacing.Around = 6
Caption = 'Show headers' Caption = 'Show headers'
Checked = True Checked = True
@ -557,10 +557,10 @@ object RxDBGridMainForm: TRxDBGridMainForm
AnchorSideLeft.Control = CheckBox3 AnchorSideLeft.Control = CheckBox3
AnchorSideLeft.Side = asrBottom AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = Panel1 AnchorSideTop.Control = Panel1
Left = 764 Left = 770
Height = 24 Height = 24
Top = 7 Top = 7
Width = 95 Width = 97
BorderSpacing.Around = 6 BorderSpacing.Around = 6
Caption = 'Word wrap' Caption = 'Word wrap'
OnChange = CheckBox5Change OnChange = CheckBox5Change
@ -570,7 +570,7 @@ object RxDBGridMainForm: TRxDBGridMainForm
AnchorSideLeft.Control = CheckBox5 AnchorSideLeft.Control = CheckBox5
AnchorSideLeft.Side = asrBottom AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = Panel1 AnchorSideTop.Control = Panel1
Left = 865 Left = 873
Height = 20 Height = 20
Top = 7 Top = 7
Width = 32 Width = 32
@ -582,8 +582,8 @@ object RxDBGridMainForm: TRxDBGridMainForm
AnchorSideLeft.Control = Label2 AnchorSideLeft.Control = Label2
AnchorSideTop.Control = Label2 AnchorSideTop.Control = Label2
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
Left = 871 Left = 879
Height = 30 Height = 37
Top = 33 Top = 33
Width = 129 Width = 129
BorderSpacing.Around = 6 BorderSpacing.Around = 6
@ -1496,7 +1496,7 @@ object RxDBGridMainForm: TRxDBGridMainForm
end end
object RxDBGridExportSpreadSheet1: TRxDBGridExportSpreadSheet object RxDBGridExportSpreadSheet1: TRxDBGridExportSpreadSheet
RxDBGrid = RxDBGrid1 RxDBGrid = RxDBGrid1
Caption = 'Export data' Caption = 'Export data to spreadsheet'
ShowSetupForm = True ShowSetupForm = True
FileName = 'RxDBGridDemo.ods' FileName = 'RxDBGridDemo.ods'
PageName = 'RxDBGrid demo' PageName = 'RxDBGrid demo'
@ -1521,4 +1521,18 @@ object RxDBGridMainForm: TRxDBGridMainForm
left = 591 left = 591
top = 270 top = 270
end end
object RxDBGridExportPDF1: TRxDBGridExportPDF
RxDBGrid = RxDBGrid1
Caption = 'Export to PDF file'
ShowSetupForm = True
FileName = 'RxDBGridDemo.pdf'
Options = [repExportTitle, repExportColors, repExportFooter, repOverwriteExisting, repExportImages]
PdfOptions.PaperOrientation = ppoLandscape
PdfOptions.Options = []
OpenAfterExport = True
AuthorPdf = 'Lagunov A.A.'
ProducerPdf = 'RxDBGrid demo program'
left = 640
top = 270
end
end end

View File

@ -7,7 +7,7 @@ interface
uses uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, rxmemds, Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, rxmemds,
DB, rxdbgrid, RxAboutDialog, RxIniPropStorage, RxDBGridPrintGrid, DB, rxdbgrid, RxAboutDialog, RxIniPropStorage, RxDBGridPrintGrid,
RxDBGridExportSpreadSheet, RxDBGridFooterTools, tooledit, RxDBGridExportSpreadSheet, RxDBGridFooterTools, tooledit, RxDBGridExportPdf,
ExtCtrls, Buttons, Menus, ActnList, StdCtrls, DBGrids; ExtCtrls, Buttons, Menus, ActnList, StdCtrls, DBGrids;
type type
@ -24,6 +24,7 @@ type
MenuItem9: TMenuItem; MenuItem9: TMenuItem;
RxAboutDialog1: TRxAboutDialog; RxAboutDialog1: TRxAboutDialog;
RxDateEdit1: TRxDateEdit; RxDateEdit1: TRxDateEdit;
RxDBGridExportPDF1: TRxDBGridExportPDF;
RxDBGridExportSpreadSheet1: TRxDBGridExportSpreadSheet; RxDBGridExportSpreadSheet1: TRxDBGridExportSpreadSheet;
RxDBGridFooterTools1: TRxDBGridFooterTools; RxDBGridFooterTools1: TRxDBGridFooterTools;
RxDBGridPrint1: TRxDBGridPrint; RxDBGridPrint1: TRxDBGridPrint;

View File

@ -24,25 +24,16 @@
<FormatVersion Value="1"/> <FormatVersion Value="1"/>
</local> </local>
</RunParams> </RunParams>
<RequiredPackages Count="6"> <RequiredPackages Count="3">
<Item1> <Item1>
<PackageName Value="rxdbgrid_print"/> <PackageName Value="FCL"/>
</Item1> </Item1>
<Item2> <Item2>
<PackageName Value="rxdbgrid_export_spreadsheet"/> <PackageName Value="rxnew"/>
</Item2> </Item2>
<Item3> <Item3>
<PackageName Value="lazreport"/>
</Item3>
<Item4>
<PackageName Value="FCL"/>
</Item4>
<Item5>
<PackageName Value="rxnew"/>
</Item5>
<Item6>
<PackageName Value="LCL"/> <PackageName Value="LCL"/>
</Item6> </Item3>
</RequiredPackages> </RequiredPackages>
<Units Count="2"> <Units Count="2">
<Unit0> <Unit0>

View File

@ -18,7 +18,8 @@
<HasResources Value="True"/> <HasResources Value="True"/>
<ResourceBaseClass Value="Form"/> <ResourceBaseClass Value="Form"/>
<UnitName Value="Unit1"/> <UnitName Value="Unit1"/>
<CursorPos X="7" Y="21"/> <IsVisibleTab Value="True"/>
<CursorPos X="3" Y="9"/>
<UsageCount Value="118"/> <UsageCount Value="118"/>
<Loaded Value="True"/> <Loaded Value="True"/>
<LoadedDesigner Value="True"/> <LoadedDesigner Value="True"/>
@ -27,18 +28,16 @@
<Filename Value="../../rxdbgridexportspreadsheet.pas"/> <Filename Value="../../rxdbgridexportspreadsheet.pas"/>
<UnitName Value="RxDBGridExportSpreadSheet"/> <UnitName Value="RxDBGridExportSpreadSheet"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="154"/> <TopLine Value="23"/>
<CursorPos X="8" Y="145"/> <CursorPos X="36" Y="39"/>
<UsageCount Value="12"/> <UsageCount Value="12"/>
</Unit2> </Unit2>
<Unit3> <Unit3>
<Filename Value="../../rxdbgrid.pas"/> <Filename Value="../../rxdbgrid.pas"/>
<IsVisibleTab Value="True"/> <EditorIndex Value="-1"/>
<EditorIndex Value="3"/> <TopLine Value="215"/>
<TopLine Value="2909"/> <CursorPos X="86" Y="231"/>
<CursorPos Y="2921"/>
<UsageCount Value="33"/> <UsageCount Value="33"/>
<Loaded Value="True"/>
</Unit3> </Unit3>
<Unit4> <Unit4>
<Filename Value="rxdbgridexportpdf.pas"/> <Filename Value="rxdbgridexportpdf.pas"/>
@ -87,18 +86,17 @@
<Unit10> <Unit10>
<Filename Value="../../rxdbgridexportpdf.pas"/> <Filename Value="../../rxdbgridexportpdf.pas"/>
<UnitName Value="RxDBGridExportPdf"/> <UnitName Value="RxDBGridExportPdf"/>
<EditorIndex Value="1"/> <EditorIndex Value="-1"/>
<TopLine Value="572"/> <TopLine Value="472"/>
<CursorPos X="87" Y="593"/> <CursorPos X="41" Y="488"/>
<UsageCount Value="57"/> <UsageCount Value="57"/>
<Bookmarks Count="5"> <Bookmarks Count="5">
<Item0 X="3" Y="457" ID="2"/> <Item0 X="3" Y="457" ID="2"/>
<Item1 Y="421" ID="3"/> <Item1 Y="421" ID="3"/>
<Item2 Y="610" ID="4"/> <Item2 Y="610" ID="4"/>
<Item3 X="15" Y="334" ID="5"/> <Item3 X="15" Y="334" ID="5"/>
<Item4 X="12" Y="647" ID="1"/> <Item4 X="12" Y="646" ID="1"/>
</Bookmarks> </Bookmarks>
<Loaded Value="True"/>
</Unit10> </Unit10>
<Unit11> <Unit11>
<Filename Value="../../rxdbgridprintgrid.pas"/> <Filename Value="../../rxdbgridprintgrid.pas"/>
@ -275,9 +273,9 @@
<Unit34> <Unit34>
<Filename Value="../../vclutils.pas"/> <Filename Value="../../vclutils.pas"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="125"/> <TopLine Value="257"/>
<CursorPos Y="155"/> <CursorPos X="11" Y="269"/>
<UsageCount Value="4"/> <UsageCount Value="10"/>
</Unit34> </Unit34>
<Unit35> <Unit35>
<Filename Value="../../rxshortcutunit.pas"/> <Filename Value="../../rxshortcutunit.pas"/>
@ -458,12 +456,10 @@
<HasResources Value="True"/> <HasResources Value="True"/>
<ResourceBaseClass Value="Form"/> <ResourceBaseClass Value="Form"/>
<UnitName Value="RxDBGridExportPdfSetupUnit"/> <UnitName Value="RxDBGridExportPdfSetupUnit"/>
<EditorIndex Value="2"/> <EditorIndex Value="-1"/>
<TopLine Value="43"/> <TopLine Value="88"/>
<CursorPos X="78" Y="60"/> <CursorPos X="78" Y="60"/>
<UsageCount Value="22"/> <UsageCount Value="22"/>
<Loaded Value="True"/>
<LoadedDesigner Value="True"/>
</Unit58> </Unit58>
<Unit59> <Unit59>
<Filename Value="../../rxdbgridexportspreadsheet_paramsunit.pas"/> <Filename Value="../../rxdbgridexportspreadsheet_paramsunit.pas"/>
@ -486,9 +482,8 @@
</Unit60> </Unit60>
<Unit61> <Unit61>
<Filename Value="/home/OPTORG/alexs/1/1/testfppdf.lpr"/> <Filename Value="/home/OPTORG/alexs/1/1/testfppdf.lpr"/>
<EditorIndex Value="4"/> <EditorIndex Value="-1"/>
<UsageCount Value="39"/> <UsageCount Value="39"/>
<Loaded Value="True"/>
</Unit61> </Unit61>
<Unit62> <Unit62>
<Filename Value="/home/install/source/fpcsrc/packages/fcl-pdf/src/fppdf.pp"/> <Filename Value="/home/install/source/fpcsrc/packages/fcl-pdf/src/fppdf.pp"/>
@ -623,11 +618,10 @@
<Unit80> <Unit80>
<Filename Value="/home/install/source/fpcsrc/packages/fcl-image/src/fpimage.pp"/> <Filename Value="/home/install/source/fpcsrc/packages/fcl-image/src/fpimage.pp"/>
<UnitName Value="FPimage"/> <UnitName Value="FPimage"/>
<EditorIndex Value="5"/> <EditorIndex Value="-1"/>
<TopLine Value="10"/> <TopLine Value="10"/>
<CursorPos X="3" Y="25"/> <CursorPos X="3" Y="25"/>
<UsageCount Value="15"/> <UsageCount Value="15"/>
<Loaded Value="True"/>
</Unit80> </Unit80>
<Unit81> <Unit81>
<Filename Value="/home/install/source/fpcsrc/packages/fcl-image/src/fpreadbmp.pp"/> <Filename Value="/home/install/source/fpcsrc/packages/fcl-image/src/fpreadbmp.pp"/>
@ -677,127 +671,39 @@
<UsageCount Value="10"/> <UsageCount Value="10"/>
</Unit86> </Unit86>
</Units> </Units>
<JumpHistory Count="30" HistoryIndex="29"> <JumpHistory Count="8" HistoryIndex="7">
<Position1> <Position1>
<Filename Value="../../rxdbgridexportpdf.pas"/> <Filename Value="unit1.pas"/>
<Caret Line="599" TopLine="584"/> <Caret Line="96" Column="3" TopLine="80"/>
</Position1> </Position1>
<Position2> <Position2>
<Filename Value="../../rxdbgridexportpdf.pas"/> <Filename Value="unit1.pas"/>
<Caret Line="601" TopLine="584"/> <Caret Line="96" Column="3" TopLine="80"/>
</Position2> </Position2>
<Position3> <Position3>
<Filename Value="../../rxdbgridexportpdf.pas"/> <Filename Value="unit1.pas"/>
<Caret Line="570" TopLine="555"/> <Caret Line="95" Column="3" TopLine="79"/>
</Position3> </Position3>
<Position4> <Position4>
<Filename Value="../../rxdbgridexportpdf.pas"/> <Filename Value="unit1.pas"/>
<Caret Line="610" TopLine="595"/> <Caret Line="94" Column="3" TopLine="78"/>
</Position4> </Position4>
<Position5> <Position5>
<Filename Value="../../rxdbgridexportpdf.pas"/> <Filename Value="unit1.pas"/>
<Caret Line="553" TopLine="537"/> <Caret Line="93" Column="3" TopLine="77"/>
</Position5> </Position5>
<Position6> <Position6>
<Filename Value="../../rxdbgridexportpdf.pas"/> <Filename Value="unit1.pas"/>
<Caret Line="555" TopLine="537"/> <Caret Line="99" Column="59" TopLine="77"/>
</Position6> </Position6>
<Position7> <Position7>
<Filename Value="../../rxdbgridexportpdf.pas"/> <Filename Value="unit1.pas"/>
<Caret Line="556" TopLine="537"/> <Caret Line="99" Column="59" TopLine="77"/>
</Position7> </Position7>
<Position8> <Position8>
<Filename Value="../../rxdbgridexportpdf.pas"/> <Filename Value="unit1.pas"/>
<Caret Line="558" TopLine="537"/> <Caret Line="9" Column="3"/>
</Position8> </Position8>
<Position9>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="566" TopLine="560"/>
</Position9>
<Position10>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="567" TopLine="560"/>
</Position10>
<Position11>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="569" TopLine="560"/>
</Position11>
<Position12>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="570" TopLine="560"/>
</Position12>
<Position13>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="572" TopLine="560"/>
</Position13>
<Position14>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="573" TopLine="560"/>
</Position14>
<Position15>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="575" TopLine="560"/>
</Position15>
<Position16>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="577" TopLine="560"/>
</Position16>
<Position17>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="578" TopLine="560"/>
</Position17>
<Position18>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="579" TopLine="560"/>
</Position18>
<Position19>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="580" TopLine="560"/>
</Position19>
<Position20>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="582" TopLine="560"/>
</Position20>
<Position21>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="583" TopLine="560"/>
</Position21>
<Position22>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="584" TopLine="560"/>
</Position22>
<Position23>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="580" TopLine="560"/>
</Position23>
<Position24>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="590" TopLine="566"/>
</Position24>
<Position25>
<Filename Value="../../rxdbgridexportpdf.pas"/>
<Caret Line="593" Column="87" TopLine="572"/>
</Position25>
<Position26>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="659" Column="50" TopLine="635"/>
</Position26>
<Position27>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="101" Column="15" TopLine="79"/>
</Position27>
<Position28>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="2837" Column="8" TopLine="2822"/>
</Position28>
<Position29>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="101" Column="5" TopLine="76"/>
</Position29>
<Position30>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="2838" TopLine="2822"/>
</Position30>
</JumpHistory> </JumpHistory>
</ProjectSession> </ProjectSession>
<Debugging> <Debugging>

View File

@ -532,24 +532,4 @@ object Form1: TForm1
0000000000000000000000000000 0000000000000000000000000000
} }
end end
object frReport1: TfrReport
InitialZoom = pzDefault
Options = []
PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbHelp, pbExit]
DataType = dtDataSet
left = 304
top = 88
end
object RxDBGridExportSpreadSheet1: TRxDBGridExportSpreadSheet
Caption = 'Экспорт в электронную таблицу'
Options = []
left = 304
top = 154
end
object RxDBGridPrint1: TRxDBGridPrint
Caption = 'Печать списка'
Options = [rxpoShowTitle, rxpoShowFooter, rxpoShowGridColor, rxpoShowFooterColor, rxpoShowReportTitle]
left = 346
top = 154
end
end end

View File

@ -6,7 +6,7 @@ interface
uses uses
Classes, SysUtils, FileUtil, rxmemds, rxdbgrid, RxDBGridExportPdf, Classes, SysUtils, FileUtil, rxmemds, rxdbgrid, RxDBGridExportPdf,
RxDBGridExportSpreadSheet, RxDBGridPrintGrid, LR_Class, Forms, Controls, Forms, Controls,
Graphics, Dialogs, ExtCtrls, StdCtrls, ComCtrls, Spin, db; Graphics, Dialogs, ExtCtrls, StdCtrls, ComCtrls, Spin, db;
type type
@ -16,15 +16,12 @@ type
TForm1 = class(TForm) TForm1 = class(TForm)
Button1: TButton; Button1: TButton;
DataSource1: TDataSource; DataSource1: TDataSource;
frReport1: TfrReport;
ImageList1: TImageList; ImageList1: TImageList;
Memo1: TMemo; Memo1: TMemo;
PageControl1: TPageControl; PageControl1: TPageControl;
Panel1: TPanel; Panel1: TPanel;
RxDBGrid1: TRxDBGrid; RxDBGrid1: TRxDBGrid;
RxDBGridExportPDF1: TRxDBGridExportPDF; RxDBGridExportPDF1: TRxDBGridExportPDF;
RxDBGridExportSpreadSheet1: TRxDBGridExportSpreadSheet;
RxDBGridPrint1: TRxDBGridPrint;
RxMemoryData1: TRxMemoryData; RxMemoryData1: TRxMemoryData;
RxMemoryData1Country: TStringField; RxMemoryData1Country: TStringField;
RxMemoryData1FLAG: TLongintField; RxMemoryData1FLAG: TLongintField;

View File

@ -39,6 +39,18 @@ msgstr "SCircularEnlaceDato"
msgid "Column name" msgid "Column name"
msgstr "" msgstr ""
#: rxdconst.scompressfonts
msgid "Compress fonts"
msgstr ""
#: rxdconst.scompressimages
msgid "Compress images"
msgstr ""
#: rxdconst.scompresstext
msgid "Compress text"
msgstr ""
#: rxdconst.sconfirmpasswordlabel #: rxdconst.sconfirmpasswordlabel
msgid "&Confirm:" msgid "&Confirm:"
msgstr "&Confirmar:" msgstr "&Confirmar:"
@ -97,6 +109,10 @@ msgstr ""
msgid "Export footer formula" msgid "Export footer formula"
msgstr "" msgstr ""
#: rxdconst.sexportimages
msgid "Export images"
msgstr ""
#: rxdconst.sexportparams #: rxdconst.sexportparams
msgid "Export params" msgid "Export params"
msgstr "" msgstr ""
@ -205,6 +221,10 @@ msgstr ""
msgid "Sum" msgid "Sum"
msgstr "" msgstr ""
#: rxdconst.sglobal
msgid "Global"
msgstr ""
#: rxdconst.shidezerovalues #: rxdconst.shidezerovalues
msgid "Hide zero values" msgid "Hide zero values"
msgstr "" msgstr ""
@ -295,6 +315,10 @@ msgstr ""
msgid "Other options" msgid "Other options"
msgstr "" msgstr ""
#: rxdconst.soutline
msgid "Out line"
msgstr ""
#: rxdconst.soverwriteexisting #: rxdconst.soverwriteexisting
msgid "Overwrite existing" msgid "Overwrite existing"
msgstr "" msgstr ""
@ -327,6 +351,10 @@ msgstr "Clave no cambio"
msgid "New password and confirmation not equal" msgid "New password and confirmation not equal"
msgstr "Nueva clave y confirmacion no son iguales" msgstr "Nueva clave y confirmacion no son iguales"
#: rxdconst.spdfoptions
msgid "PDF options"
msgstr ""
#: rxdconst.sportrait #: rxdconst.sportrait
msgid "Portrait" msgid "Portrait"
msgstr "" msgstr ""
@ -629,6 +657,10 @@ msgstr ""
msgid "Show column title" msgid "Show column title"
msgstr "" msgstr ""
#: rxdconst.stitlecolor
msgid "Title color"
msgstr ""
#: rxdconst.stoolsexportpdf #: rxdconst.stoolsexportpdf
msgid "Export to PDF file" msgid "Export to PDF file"
msgstr "" msgstr ""
@ -661,6 +693,10 @@ msgstr "Desbloquear"
msgid "Enter your password" msgid "Enter your password"
msgstr "Entre su clave" msgstr "Entre su clave"
#: rxdconst.suserawjpeg
msgid "Use raw JPEG"
msgstr ""
#: rxdconst.susernamelabel #: rxdconst.susernamelabel
msgid "&User name:" msgid "&User name:"
msgstr "&Nombre usuario:" msgstr "&Nombre usuario:"

View File

@ -37,6 +37,18 @@ msgstr ""
msgid "Column name" msgid "Column name"
msgstr "" msgstr ""
#: rxdconst.scompressfonts
msgid "Compress fonts"
msgstr ""
#: rxdconst.scompressimages
msgid "Compress images"
msgstr ""
#: rxdconst.scompresstext
msgid "Compress text"
msgstr ""
#: rxdconst.sconfirmpasswordlabel #: rxdconst.sconfirmpasswordlabel
msgid "&Confirm:" msgid "&Confirm:"
msgstr "" msgstr ""
@ -93,6 +105,10 @@ msgstr ""
msgid "Export footer formula" msgid "Export footer formula"
msgstr "" msgstr ""
#: rxdconst.sexportimages
msgid "Export images"
msgstr ""
#: rxdconst.sexportparams #: rxdconst.sexportparams
msgid "Export params" msgid "Export params"
msgstr "" msgstr ""
@ -197,6 +213,10 @@ msgstr ""
msgid "Sum" msgid "Sum"
msgstr "" msgstr ""
#: rxdconst.sglobal
msgid "Global"
msgstr ""
#: rxdconst.shidezerovalues #: rxdconst.shidezerovalues
msgid "Hide zero values" msgid "Hide zero values"
msgstr "" msgstr ""
@ -281,6 +301,10 @@ msgstr ""
msgid "Other options" msgid "Other options"
msgstr "" msgstr ""
#: rxdconst.soutline
msgid "Out line"
msgstr ""
#: rxdconst.soverwriteexisting #: rxdconst.soverwriteexisting
msgid "Overwrite existing" msgid "Overwrite existing"
msgstr "" msgstr ""
@ -313,6 +337,10 @@ msgstr ""
msgid "New password and confirmation not equal" msgid "New password and confirmation not equal"
msgstr "" msgstr ""
#: rxdconst.spdfoptions
msgid "PDF options"
msgstr ""
#: rxdconst.sportrait #: rxdconst.sportrait
msgid "Portrait" msgid "Portrait"
msgstr "" msgstr ""
@ -607,6 +635,10 @@ msgstr ""
msgid "Show column title" msgid "Show column title"
msgstr "" msgstr ""
#: rxdconst.stitlecolor
msgid "Title color"
msgstr ""
#: rxdconst.stoolsexportpdf #: rxdconst.stoolsexportpdf
msgid "Export to PDF file" msgid "Export to PDF file"
msgstr "" msgstr ""
@ -635,6 +667,10 @@ msgstr ""
msgid "Enter your password" msgid "Enter your password"
msgstr "" msgstr ""
#: rxdconst.suserawjpeg
msgid "Use raw JPEG"
msgstr ""
#: rxdconst.susernamelabel #: rxdconst.susernamelabel
msgid "&User name:" msgid "&User name:"
msgstr "" msgstr ""

View File

@ -1,5 +1,15 @@
msgid "" msgid ""
msgstr "Content-Type: text/plain; charset=UTF-8" msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Project-Id-Version: \n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: ru\n"
"X-Generator: Poedit 1.8.8\n"
#: rxdconst.sapptitlelabel #: rxdconst.sapptitlelabel
msgid "Application \"%s\"" msgid "Application \"%s\""
@ -37,6 +47,18 @@ msgstr "Перекрёстная ссылка данных"
msgid "Column name" msgid "Column name"
msgstr "Имя столбца" msgstr "Имя столбца"
#: rxdconst.scompressfonts
msgid "Compress fonts"
msgstr "Сжимать шрифты"
#: rxdconst.scompressimages
msgid "Compress images"
msgstr "Сжимать изображения"
#: rxdconst.scompresstext
msgid "Compress text"
msgstr "Сжимать текст"
#: rxdconst.sconfirmpasswordlabel #: rxdconst.sconfirmpasswordlabel
msgid "&Confirm:" msgid "&Confirm:"
msgstr "&Подтверждение:" msgstr "&Подтверждение:"
@ -93,6 +115,10 @@ msgstr "Имя файла экспорта"
msgid "Export footer formula" msgid "Export footer formula"
msgstr "Экспортирововать формулы итоговой строки" msgstr "Экспортирововать формулы итоговой строки"
#: rxdconst.sexportimages
msgid "Export images"
msgstr "Экспорт изображений"
#: rxdconst.sexportparams #: rxdconst.sexportparams
msgid "Export params" msgid "Export params"
msgstr "Параметры экспорта" msgstr "Параметры экспорта"
@ -197,6 +223,10 @@ msgstr "Текст"
msgid "Sum" msgid "Sum"
msgstr "Сумма" msgstr "Сумма"
#: rxdconst.sglobal
msgid "Global"
msgstr "Общее"
#: rxdconst.shidezerovalues #: rxdconst.shidezerovalues
msgid "Hide zero values" msgid "Hide zero values"
msgstr "Не отображать нулевые значения" msgstr "Не отображать нулевые значения"
@ -281,6 +311,10 @@ msgstr "Ориентация"
msgid "Other options" msgid "Other options"
msgstr "Прочие параметры" msgstr "Прочие параметры"
#: rxdconst.soutline
msgid "Out line"
msgstr "Контуры"
#: rxdconst.soverwriteexisting #: rxdconst.soverwriteexisting
msgid "Overwrite existing" msgid "Overwrite existing"
msgstr "Перезаписать существующее" msgstr "Перезаписать существующее"
@ -295,7 +329,7 @@ msgstr "Имя страницы"
#: rxdconst.spapertype #: rxdconst.spapertype
msgid "Paper type" msgid "Paper type"
msgstr "" msgstr "Тип бумаги"
#: rxdconst.spasswordchanged #: rxdconst.spasswordchanged
msgid "Password changed" msgid "Password changed"
@ -313,6 +347,10 @@ msgstr "Пароль не изменён"
msgid "New password and confirmation not equal" msgid "New password and confirmation not equal"
msgstr "Новый пароль и подтверждение не совпадают" msgstr "Новый пароль и подтверждение не совпадают"
#: rxdconst.spdfoptions
msgid "PDF options"
msgstr "Параметры PDF"
#: rxdconst.sportrait #: rxdconst.sportrait
msgid "Portrait" msgid "Portrait"
msgstr "Портрет" msgstr "Портрет"
@ -607,9 +645,13 @@ msgstr "Отображать заголовок отчёта"
msgid "Show column title" msgid "Show column title"
msgstr "Отображать заголовки столбцов" msgstr "Отображать заголовки столбцов"
#: rxdconst.stitlecolor
msgid "Title color"
msgstr "Цвет заголовков"
#: rxdconst.stoolsexportpdf #: rxdconst.stoolsexportpdf
msgid "Export to PDF file" msgid "Export to PDF file"
msgstr "" msgstr "Экспорт в PDF файл"
#: rxdconst.stoolsexportspeadsheet #: rxdconst.stoolsexportspeadsheet
msgid "Export to speadsheet" msgid "Export to speadsheet"
@ -635,7 +677,10 @@ msgstr "Разблокировать"
msgid "Enter your password" msgid "Enter your password"
msgstr "Введите ваш пароль" msgstr "Введите ваш пароль"
#: rxdconst.suserawjpeg
msgid "Use raw JPEG"
msgstr "Использовать сырой JPEG"
#: rxdconst.susernamelabel #: rxdconst.susernamelabel
msgid "&User name:" msgid "&User name:"
msgstr "&Имя пользователя" msgstr "&Имя пользователя"

View File

@ -48,6 +48,18 @@ msgstr "Перехресне посилання даних"
msgid "Column name" msgid "Column name"
msgstr "Назва стовпця" msgstr "Назва стовпця"
#: rxdconst.scompressfonts
msgid "Compress fonts"
msgstr ""
#: rxdconst.scompressimages
msgid "Compress images"
msgstr ""
#: rxdconst.scompresstext
msgid "Compress text"
msgstr ""
#: rxdconst.sconfirmpasswordlabel #: rxdconst.sconfirmpasswordlabel
msgid "&Confirm:" msgid "&Confirm:"
msgstr "&Підтвердження:" msgstr "&Підтвердження:"
@ -104,6 +116,10 @@ msgstr "Експортувати назву файлу"
msgid "Export footer formula" msgid "Export footer formula"
msgstr "" msgstr ""
#: rxdconst.sexportimages
msgid "Export images"
msgstr ""
#: rxdconst.sexportparams #: rxdconst.sexportparams
msgid "Export params" msgid "Export params"
msgstr "" msgstr ""
@ -209,6 +225,10 @@ msgstr "Статичний текст"
msgid "Sum" msgid "Sum"
msgstr "Сума" msgstr "Сума"
#: rxdconst.sglobal
msgid "Global"
msgstr ""
#: rxdconst.shidezerovalues #: rxdconst.shidezerovalues
msgid "Hide zero values" msgid "Hide zero values"
msgstr "Ховати нульові значення" msgstr "Ховати нульові значення"
@ -293,6 +313,10 @@ msgstr "Орієнтація"
msgid "Other options" msgid "Other options"
msgstr "" msgstr ""
#: rxdconst.soutline
msgid "Out line"
msgstr ""
#: rxdconst.soverwriteexisting #: rxdconst.soverwriteexisting
msgid "Overwrite existing" msgid "Overwrite existing"
msgstr "Переписати існуючий" msgstr "Переписати існуючий"
@ -325,6 +349,10 @@ msgstr "Пароль не змінено"
msgid "New password and confirmation not equal" msgid "New password and confirmation not equal"
msgstr "Новий пароль і підтвердження не співпадають" msgstr "Новий пароль і підтвердження не співпадають"
#: rxdconst.spdfoptions
msgid "PDF options"
msgstr ""
#: rxdconst.sportrait #: rxdconst.sportrait
msgid "Portrait" msgid "Portrait"
msgstr "Книжна" msgstr "Книжна"
@ -621,6 +649,10 @@ msgstr "Показати заголовок звіту"
msgid "Show column title" msgid "Show column title"
msgstr "Показати заголовок стовпця" msgstr "Показати заголовок стовпця"
#: rxdconst.stitlecolor
msgid "Title color"
msgstr ""
#: rxdconst.stoolsexportpdf #: rxdconst.stoolsexportpdf
msgid "Export to PDF file" msgid "Export to PDF file"
msgstr "" msgstr ""
@ -649,6 +681,10 @@ msgstr "Розблокувати"
msgid "Enter your password" msgid "Enter your password"
msgstr "Введіть ваш пароль" msgstr "Введіть ваш пароль"
#: rxdconst.suserawjpeg
msgid "Use raw JPEG"
msgstr ""
#: rxdconst.susernamelabel #: rxdconst.susernamelabel
msgid "&User name:" msgid "&User name:"
msgstr "&Ім'я користувача" msgstr "&Ім'я користувача"

View File

@ -2901,8 +2901,6 @@ end;
procedure TRxDBGrid.OutCaptionCellText(aCol, aRow: integer; const aRect: TRect; procedure TRxDBGrid.OutCaptionCellText(aCol, aRow: integer; const aRect: TRect;
aState: TGridDrawState; const ACaption: string); aState: TGridDrawState; const ACaption: string);
//var
// T1, T2: TTextStyle;
begin begin
if (TitleStyle = tsNative) then if (TitleStyle = tsNative) then
DrawThemedCell(aCol, aRow, aRect, aState) DrawThemedCell(aCol, aRow, aRect, aState)
@ -2914,12 +2912,6 @@ begin
if ACaption <> '' then if ACaption <> '' then
begin begin
{ T1:=Canvas.TextStyle;
T2:=T1;
T1.Wordbreak:=true;
Canvas.TextStyle:=T1;
DrawCellText(aCol, aRow, aRect, aState, ACaption);
Canvas.TextStyle:=T2; }
if not (rdgDisableWordWrapTitles in OptionsRx) then if not (rdgDisableWordWrapTitles in OptionsRx) then
WriteTextHeader(Canvas, aRect, ACaption, GetColumnAlignment(aCol, True)) WriteTextHeader(Canvas, aRect, ACaption, GetColumnAlignment(aCol, True))
else else

View File

@ -155,6 +155,7 @@ type
FDataSet:TDataSet; FDataSet:TDataSet;
FPosY : integer; FPosY : integer;
procedure InitFonts;
procedure DoSetupDocHeader; procedure DoSetupDocHeader;
procedure DoSetupFonts; procedure DoSetupFonts;
// //
@ -170,13 +171,9 @@ type
procedure DoExportFooter; procedure DoExportFooter;
procedure DoSaveDocument; procedure DoSaveDocument;
function DoExecTools:boolean;override; function DoExecTools:boolean;override;
function DoSetupTools:boolean; override; function DoSetupTools:boolean; override;
//
//procedure DoTest;
//
procedure InitFonts;
public public
constructor Create(AOwner: TComponent); override; constructor Create(AOwner: TComponent); override;
destructor Destroy; override; destructor Destroy; override;
@ -405,7 +402,7 @@ end;
procedure TRxDBGridExportPDF.WriteTextRect(AExportFont: TExportFontItem; X, Y, procedure TRxDBGridExportPDF.WriteTextRect(AExportFont: TExportFontItem; X, Y,
W, H: integer; AText: string; ATextAlign: TAlignment); W, H: integer; AText: string; ATextAlign: TAlignment);
var var
FTW, FTH, ADescender, FTH1, FTH2: Single; FTW, FTH, FTH1, FTH2: Single;
X1: TPDFFloat; X1: TPDFFloat;
Y1, fX, fY: TPDFFloat; Y1, fX, fY: TPDFFloat;
fW, fH: Extended; fW, fH: Extended;
@ -485,7 +482,7 @@ begin
fW1 := ConvetUnits(FPDFDocument.Images[IDX].Width); fW1 := ConvetUnits(FPDFDocument.Images[IDX].Width);
fH1 := ConvetUnits(FPDFDocument.Images[IDX].Height); fH1 := ConvetUnits(FPDFDocument.Images[IDX].Height);
fX:=ConvetUnits(X); fX:=ConvetUnits(X);
fY:=ConvetUnits(Y); fY:=ConvetUnits(Y + constCellPadding);
fW:=ConvetUnits(W); fW:=ConvetUnits(W);
fH:=ConvetUnits(H); fH:=ConvetUnits(H);
@ -540,7 +537,7 @@ end;
procedure TRxDBGridExportPDF.DoExportTitle; procedure TRxDBGridExportPDF.DoExportTitle;
var var
i, X, CP, K, KY, TH1, J, X1, W1: Integer; i, X, CP, K, KY, TH1, X1, W1, WNext: Integer;
C, FStartCol: TRxColumn; C, FStartCol: TRxColumn;
CT: TRxColumnTitle; CT: TRxColumnTitle;
H: LongInt; H: LongInt;
@ -572,7 +569,13 @@ begin
TH1:=CT.CaptionLine(K).Height * RxDBGrid.DefaultRowHeight; TH1:=CT.CaptionLine(K).Height * RxDBGrid.DefaultRowHeight;
if K < CT.CaptionLinesCount-1 then if K < CT.CaptionLinesCount-1 then
begin begin
if not Assigned(CT.CaptionLine(K).Next) then
if i < FRxDBGrid.Columns.Count-1 then
WNext:=FRxDBGrid.Columns[i+1].Width
else
WNext:=0;
if (not Assigned(CT.CaptionLine(K).Next)) or (X + C.Width + WNext > FPageWidth - FPageMargin.Right) then
begin begin
KL:=CT.CaptionLine(K); KL:=CT.CaptionLine(K);
X1:=X; X1:=X;
@ -584,20 +587,14 @@ begin
W1:=W1 + KL.Col.Width; W1:=W1 + KL.Col.Width;
end; end;
//DrawRect(X, KY, {CT.CaptionLine(K).Width} C.Width, TH1, FRxDBGrid.BorderColor, FTitleColor);
DrawRect(X1, KY, W1, TH1, FRxDBGrid.BorderColor, FTitleColor); DrawRect(X1, KY, W1, TH1, FRxDBGrid.BorderColor, FTitleColor);
//WriteTextRect(ActivateFont(C.Title.Font, FRxDBGrid.TitleFont), X, KY, C.Width, TH1, CT.CaptionLine(K).Caption, C.Title.Alignment);
WriteTextRect(ActivateFont(C.Title.Font, FRxDBGrid.TitleFont), X1, KY, W1, TH1, CT.CaptionLine(K).Caption, C.Title.Alignment); WriteTextRect(ActivateFont(C.Title.Font, FRxDBGrid.TitleFont), X1, KY, W1, TH1, CT.CaptionLine(K).Caption, C.Title.Alignment);
end; end;
KY:=KY + TH1; KY:=KY + TH1;
end end
else else
begin begin
DrawRect(X, KY, {CT.CaptionLine(K).Width} C.Width, FPosY + H - KY, FRxDBGrid.BorderColor, FTitleColor); DrawRect(X, KY, C.Width, FPosY + H - KY, FRxDBGrid.BorderColor, FTitleColor);
WriteTextRect(ActivateFont(C.Title.Font, FRxDBGrid.TitleFont), X, KY, C.Width, FPosY + H - KY, CT.CaptionLine(K).Caption, C.Title.Alignment); WriteTextRect(ActivateFont(C.Title.Font, FRxDBGrid.TitleFont), X, KY, C.Width, FPosY + H - KY, CT.CaptionLine(K).Caption, C.Title.Alignment);
end; end;
end; end;
@ -619,7 +616,6 @@ procedure DoWriteRow;
var var
i, X, CP: Integer; i, X, CP: Integer;
C: TRxColumn; C: TRxColumn;
S: String;
B: TBitmap; B: TBitmap;
AImageIndex: LongInt; AImageIndex: LongInt;
begin begin
@ -702,7 +698,6 @@ begin
end; end;
var var
F: TExportFontItem;
i: Integer; i: Integer;
sDefFontName:string; sDefFontName:string;
begin begin
@ -728,7 +723,7 @@ procedure TRxDBGridExportPDF.DoExportFooter;
procedure WriteFooterRow(AFooterRow:Integer); procedure WriteFooterRow(AFooterRow:Integer);
var var
i, X, CP, FS: Integer; i, X, CP: Integer;
S: String; S: String;
C: TRxColumn; C: TRxColumn;
begin begin
@ -833,9 +828,6 @@ begin
end; end;
procedure TRxDBGridExportPDF.DoExportPage; procedure TRxDBGridExportPDF.DoExportPage;
var
P: TPDFPage;
i: Integer;
begin begin
StartNewPage; StartNewPage;
@ -983,85 +975,7 @@ begin
end; end;
RxDBGridExportPdfSetupForm.Free; RxDBGridExportPdfSetupForm.Free;
end; end;
(*
procedure TRxDBGridExportPDF.DoTest;
var
lPt1:TPDFCoord;
lFntPtSize, FtText1: Integer;
lFC: TFPFontCacheItem;
lFntInfo: TTFFileInfo;
lHeight, lTextHeightInMM, lDescenderHeightInMM, A1: Extended;
lWidth, lTextWidthInMM: Single;
sFontName, sSampleText: String;
begin
//setup
sSampleText:='Это привет мир!';
lFntPtSize := 23;
lPt1.X := 25; // units in MM
lPt1.Y := 40; // units in MM
StartNewPage;
{ sFontName:='FreeSans';
lFC := gTTFontCache.Find(sFontName, False, False);
if not Assigned(lFC) then
raise Exception.Create('FreeSans font not found');
lFntInfo := lFC.FontData;
FPDFDocument.FontDirectory:=ExtractFileDir(lFC.FileName);
FtText1 := FPDFDocument.AddFont(ExtractFileName(lFC.FileName), sFontName); // TODO: this color value means nothing - not used at all
}
sFontName:=FFontItems.FDefaultFontNormal.FontName;
lFC := gTTFontCache.Find(sFontName, False, False);
if not Assigned(lFC) then
raise Exception.Create('FreeSans font not found');
lFntInfo := lFC.FontData;
FtText1 := FFontItems.FDefaultFontNormal.FPdfFont;
FCurPage:=TPDFPage(FWorkPages[0]);
FCurPage.UnitOfMeasure := uomMillimeters;
{ Page title }
//FCurPage.SetFont(FFontItems.DefaultFontNormal.FPdfFont, 23);
FCurPage.SetFont(FtText1, lFntPtSize);
FCurPage.SetColor(clBlack, false);
FCurPage.WriteText(lPt1.X, lPt1.Y, sSampleText);
{ draw a rectangle around the Page Title text }
{ result is in pixels }
lHeight := lFntInfo.CapHeight * lFntPtSize * gTTFontCache.DPI / (72 * lFntInfo.Head.UnitsPerEm);
{ convert pixels to mm as our PDFPage.UnitOfMeasure is set to mm. }
lTextHeightInMM := (lHeight * 25.4) / gTTFontCache.DPI;
// lTextHeightInMM := lHeight;
lWidth := lFC.TextWidth(sSampleText, lFntPtSize);
{ convert the Font Units to Millimeters }
lTextWidthInMM := (lWidth * 25.4) / gTTFontCache.DPI;
// lTextWidthInMM := lWidth;
{ result is in pixels }
lHeight := Abs(lFntInfo.Descender) * lFntPtSize * gTTFontCache.DPI / (72 * lFntInfo.Head.UnitsPerEm);
A1:=lHeight;
{ convert pixels to mm as you PDFPage.UnitOfMeasure is set to mm. }
lDescenderHeightInMM := (lHeight * 25.4) / gTTFontCache.DPI;
// lDescenderHeightInMM := lHeight;
{ adjust the Y coordinate for the font Descender, because
WriteUTF8Text draws on the baseline. Also adjust the TextHeight
because CapHeight doesn't take into account the Descender. }
FCurPage.SetColor(clRed, true);
FCurPage.DrawRect(lPt1.X, lPt1.Y+lDescenderHeightInMM, lTextWidthInMM, lTextHeightInMM+lDescenderHeightInMM, 1, false, true);
//lFntInfo.Free;
DrawRect(10, 100, Round(lWidth), Round(lHeight + A1), Graphics.clBlack, Graphics.clRed);
end;
*)
procedure TRxDBGridExportPDF.DoSaveDocument; procedure TRxDBGridExportPDF.DoSaveDocument;
var var
F: TFileStream; F: TFileStream;

View File

@ -69,10 +69,10 @@ object RxDBGridExportPdfSetupForm: TRxDBGridExportPdfSetupForm
Height = 212 Height = 212
Top = 75 Top = 75
Width = 510 Width = 510
ActivePage = TabSheet1 ActivePage = TabSheet2
Anchors = [akTop, akLeft, akRight, akBottom] Anchors = [akTop, akLeft, akRight, akBottom]
BorderSpacing.Around = 6 BorderSpacing.Around = 6
TabIndex = 0 TabIndex = 1
TabOrder = 2 TabOrder = 2
object TabSheet1: TTabSheet object TabSheet1: TTabSheet
Caption = 'Global' Caption = 'Global'

View File

@ -107,14 +107,22 @@ begin
PageControl1.ActivePageIndex:=0; PageControl1.ActivePageIndex:=0;
Caption:=sExportParams; Caption:=sExportParams;
TabSheet1.Caption:=sGlobal;
TabSheet2.Caption:=sPDFOptions;
Label1.Caption:=sExportFileName; Label1.Caption:=sExportFileName;
//Label3.Caption:=sPageName;
cbOpenAfterExport.Caption:=sOpenAfterExport; cbOpenAfterExport.Caption:=sOpenAfterExport;
cbExportColumnHeader.Caption:=sExportColumnHeader; cbExportColumnHeader.Caption:=sExportColumnHeader;
cbExportColumnFooter.Caption:=sExportColumnFooter; cbExportColumnFooter.Caption:=sExportColumnFooter;
cbExportCellColors.Caption:=sExportCellColors; cbExportCellColors.Caption:=sExportCellColors;
cbOverwriteExisting.Caption:=sOverwriteExisting; cbOverwriteExisting.Caption:=sOverwriteExisting;
CheckBox6.Caption:=sExportImages;
Label2.Caption:=sPaperType; Label2.Caption:=sPaperType;
Label5.Caption:=sTitleColor;
CheckBox1.Caption:=sOutLine;
CheckBox2.Caption:=sCompressText;
CheckBox3.Caption:=sCompressFonts;
CheckBox4.Caption:=sCompressImages;
CheckBox5.Caption:=sUseRawJPEG;
RadioGroup1.Caption:=sOrientation; RadioGroup1.Caption:=sOrientation;
RadioGroup1.Items[0]:=sPortrait; RadioGroup1.Items[0]:=sPortrait;

View File

@ -182,6 +182,7 @@ resourcestring
sExportColumnFooter = 'Export column footer'; sExportColumnFooter = 'Export column footer';
sExportCellColors = 'Export cell colors'; sExportCellColors = 'Export cell colors';
sExportFormula = 'Export footer formula'; sExportFormula = 'Export footer formula';
sExportImages = 'Export images';
sOverwriteExisting = 'Overwrite existing'; sOverwriteExisting = 'Overwrite existing';
sShowColumnHeaderOnAllPage = 'Show column header on all pages'; sShowColumnHeaderOnAllPage = 'Show column header on all pages';
sPageMargins = 'Page margins'; sPageMargins = 'Page margins';
@ -195,6 +196,14 @@ resourcestring
sLandscape = 'Landscape'; sLandscape = 'Landscape';
sPrintOptions = 'Print options'; sPrintOptions = 'Print options';
sPaperType = 'Paper type'; sPaperType = 'Paper type';
sTitleColor = 'Title color';
sGlobal = 'Global';
sPDFOptions = 'PDF options';
sOutLine = 'Out line';
sCompressText = 'Compress text';
sCompressFonts = 'Compress fonts';
sCompressImages = 'Compress images';
sUseRawJPEG = 'Use raw JPEG';
sShowTitle = 'Show column title'; sShowTitle = 'Show column title';
sShowFooter = 'Show footer'; sShowFooter = 'Show footer';