[wxPython] Multi-page print output

Hi

Can I get any idea about multi-page print and preview in the demo's
"PrintFrameWork" ?

Thanks

Can I get any idea about multi-page print and preview in the demo's
"PrintFrameWork" ?

It's very simple. Return true for all valid page numbers from HasPage,
specify the max pages in GetPageInfo, and be prepared to print each page on
request in OnPrintPage.

ยทยทยท

--
Robin Dunn
Software Craftsman
robin@AllDunn.com Java give you jitters?
http://wxPython.org Relax with wxPython!

begin 666 PrintFramework.py
M#0IF<F]M('=X4'ET:&]N+G=X(" @(" @(" @:6UP;W)T("H-"F9R;VT@=WA3
M8W)O;&QE9%=I;F1O=R @("!I;7!O<G0@37E#86YV87,-"@T*(RTM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2T-"@T*8VQA<W,@37E0<FEN=&]U="AW>%!R:6YT
M;W5T*3H-"B @("!D968@7U]I;FET7U\H<V5L9BP@8V%N=F%S+"!L;V<I.@T*
M(" @(" @("!W>%!R:6YT;W5T+E]?:6YI=%]?*'-E;&8I#0H@(" @(" @('-E
M;&8N8V%N=F%S(#T@8V%N=F%S#0H@(" @(" @('-E;&8N;&]G(#T@;&]G#0H-
M"B @("!D968@3VY"96=I;D1O8W5M96YT*'-E;&8L('-T87)T+"!E;F0I.@T*
M(" @(" @("!S96QF+FQO9RY7<FET951E>'0H(G=X4')I;G1O=70N3VY"96=I
M;D1O8W5M96YT7&XB*0T*(" @(" @("!R971U<FX@<V5L9BYB87-E7T]N0F5G
M:6Y$;V-U;65N="AS=&%R="P@96YD*0T*#0H@(" @9&5F($]N16YD1&]C=6UE
M;G0H<V5L9BDZ#0H@(" @(" @('-E;&8N;&]G+E=R:71E5&5X="@B=WA0<FEN
M=&]U="Y/;D5N9$1O8W5M96YT7&XB*0T*(" @(" @("!S96QF+F)A<V5?3VY%
M;F1$;V-U;65N="@I#0H-"B @("!D968@3VY"96=I;E!R:6YT:6YG*'-E;&8I
M.@T*(" @(" @("!S96QF+FQO9RY7<FET951E>'0H(G=X4')I;G1O=70N3VY"
M96=I;E!R:6YT:6YG7&XB*0T*(" @(" @("!S96QF+F)A<V5?3VY"96=I;E!R
M:6YT:6YG*"D-"@T*(" @(&1E9B!/;D5N9%!R:6YT:6YG*'-E;&8I.@T*(" @
M(" @("!S96QF+FQO9RY7<FET951E>'0H(G=X4')I;G1O=70N3VY%;F10<FEN
M=&EN9UQN(BD-"B @(" @(" @<V5L9BYB87-E7T]N16YD4')I;G1I;F<H*0T*
M#0H@(" @9&5F($]N4')E<&%R95!R:6YT:6YG*'-E;&8I.@T*(" @(" @("!S
M96QF+FQO9RY7<FET951E>'0H(G=X4')I;G1O=70N3VY0<F5P87)E4')I;G1I
M;F=<;B(I#0H@(" @(" @('-E;&8N8F%S95]/;E!R97!A<F50<FEN=&EN9R@I
M#0H-"B @("!D968@2&%S4&%G92AS96QF+"!P86=E*3H-"B @(" @(" @<V5L
M9BYL;V<N5W)I=&5497AT*")W>%!R:6YT;W5T+DAA<U!A9V4Z("5D7&XB("4@
M<&%G92D-"B @(" @(" @:68@<&%G92 \/2 R.@T*(" @(" @(" @(" @<F5T
M=7)N('1R=64-"B @(" @(" @96QS93H-"B @(" @(" @(" @(')E='5R;B!F
M86QS90T*#0H@(" @9&5F($=E=%!A9V5);F9O*'-E;&8I.@T*(" @(" @("!S
M96QF+FQO9RY7<FET951E>'0H(G=X4')I;G1O=70N1V5T4&%G94EN9F]<;B(I
M#0H@(" @(" @(')E='5R;B H,2P@,BP@,2P@,BD-"@T*(" @(&1E9B!/;E!R
M:6YT4&%G92AS96QF+"!P86=E*3H-"B @(" @(" @<V5L9BYL;V<N5W)I=&54
M97AT*")W>%!R:6YT;W5T+D]N4')I;G1086=E.B E9%QN(B E('!A9V4I#0H@
M(" @(" @(&1C(#T@<V5L9BY'971$0R@I#0H-"B @(" @(" @(RTM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T-"B @(" @(" @
M(R!/;F4@<&]S<VEB;&4@;65T:&]D(&]F('-E='1I;F<@<V-A;&EN9R!F86-T
M;W)S+BXN#0H-"B @(" @(" @;6%X6" ]('-E;&8N8V%N=F%S+F=E=%=I9'1H
M*"D-"B @(" @(" @;6%X62 ]('-E;&8N8V%N=F%S+F=E=$AE:6=H="@I#0H-
M"B @(" @(" @(R!,970G<R!H879E(&%T(&QE87-T(#4P(&1E=FEC92!U;FET
M<R!M87)G:6X-"B @(" @(" @;6%R9VEN6" ](#4P#0H@(" @(" @(&UA<F=I
M;ED@/2 U, T*#0H@(" @(" @(",@061D('1H92!M87)G:6X@=&\@=&AE(&=R
M87!H:6,@<VEZ90T*(" @(" @("!M87A8(#T@;6%X6" K("@R("H@;6%R9VEN
M6"D-"B @(" @(" @;6%X62 ](&UA>%D@*R H,B J(&UA<F=I;EDI#0H-"B @
M(" @(" @(R!'970@=&AE('-I>F4@;V8@=&AE($1#(&EN('!I>&5L<PT*(" @
M(" @(" H=RP@:"D@/2!D8RY'9713:7IE5'5P;&4H*0T*#0H@(" @(" @(",@
M0V%L8W5L871E(&$@<W5I=&%B;&4@<V-A;&EN9R!F86-T;W(-"B @(" @(" @
M<V-A;&58(#T@9FQO870H=RD@+R!M87A8#0H@(" @(" @('-C86QE62 ](&9L
M;V%T*&@I("\@;6%X60T*#0H@(" @(" @(",@57-E('@@;W(@>2!S8V%L:6YG
M(&9A8W1O<BP@=VAI8VAE=F5R(&9I=',@;VX@=&AE($1##0H@(" @(" @(&%C
M='5A;%-C86QE(#T@;6EN*'-C86QE6"P@<V-A;&59*0T*#0H@(" @(" @(",@
M0V%L8W5L871E('1H92!P;W-I=&EO;B!O;B!T:&4@1$,@9F]R(&-E;G1R:6YG
M('1H92!G<F%P:&EC#0H@(" @(" @('!O<U@@/2 H=R M("AS96QF+F-A;G9A
M<RYG9717:61T:"@I("H@86-T=6%L4V-A;&4I*2 O(#(N, T*(" @(" @("!P
M;W-9(#T@*&@@+2 H<V5L9BYC86YV87,N9V5T2&5I9VAT*"D@*B!A8W1U86Q3
M8V%L92DI("\@,BXP#0H-"B @(" @(" @(R!3970@=&AE('-C86QE(&%N9"!O
M<FEG:6X-"B @(" @(" @9&,N4V5T57-E<E-C86QE*&%C='5A;%-C86QE+"!A
M8W1U86Q38V%L92D-"B @(" @(" @9&,N4V5T1&5V:6-E3W)I9VEN*&EN="AP
M;W-8*2P@:6YT*'!O<UDI*0T*#0H@(" @(" @(",M+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM#0H-"B @(" @(" @<V5L9BYC
M86YV87,N1&]$<F%W:6YG*&1C*0T*(" @(" @("!D8RY$<F%W5&5X="@B4&%G
M93H@)60B("4@<&%G92P@;6%R9VEN6"\R+"!M87A9+6UA<F=I;EDI#0H-"B @
M(" @(" @<F5T=7)N('1R=64-"@T*#0HC+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+0T*#0H-"F-L87-S(%1E<W10<FEN=%!A;F5L*'=X4&%N96PI.@T*(" @
M(&1E9B!?7VEN:71?7RAS96QF+"!P87)E;G0L(&9R86UE+"!L;V<I.@T*(" @
M(" @("!W>%!A;F5L+E]?:6YI=%]?*'-E;&8L('!A<F5N="P@+3$I#0H@(" @
M(" @('-E;&8N;&]G(#T@;&]G#0H@(" @(" @('-E;&8N9G)A;64@/2!F<F%M
M90T*#0H-"B @(" @(" @<V5L9BYP<FEN=$1A=&$@/2!W>%!R:6YT1&%T82@I
M#0H@(" @(" @('-E;&8N<')I;G1$871A+E-E=%!A<&5R260H=WA005!%4E],
M151415(I#0H-"B @(" @(" @<V5L9BYB;W@@/2!W>$)O>%-I>F5R*'=X5D52
M5$E#04PI#0H@(" @(" @('-E;&8N8V%N=F%S(#T@37E#86YV87,H<V5L9BD-
M"B @(" @(" @<V5L9BYB;W@N061D*'-E;&8N8V%N=F%S+" Q+"!W>$=23U<I
M#0H-"B @(" @(" @<W5B8F]X(#T@=WA";WA3:7IE<BAW>$A/4DE:3TY404PI
M#0H@(" @(" @(&)T;B ]('=X0G5T=&]N*'-E;&8L(#$R,#$L(")0<FEN="!3
M971U<"(I#0H@(" @(" @($565%]"55143TXH<V5L9BP@,3(P,2P@<V5L9BY/
M;E!R:6YT4V5T=7 I#0H@(" @(" @('-U8F)O>"Y!9&0H8G1N+" Q+"!W>$=2
M3U<@?"!W>$%,3"P@,BD-"@T*(" @(" @("!B=&X@/2!W>$)U='1O;BAS96QF
M+" Q,C R+" B4')I;G0@4')E=FEE=R(I#0H@(" @(" @($565%]"55143TXH
M<V5L9BP@,3(P,BP@<V5L9BY/;E!R:6YT4')E=FEE=RD-"B @(" @(" @<W5B
M8F]X+D%D9"AB=&XL(#$L('=X1U)/5R!\('=X04Q,+" R*0T*#0H@(" @(" @
M(&)T;B ]('=X0G5T=&]N*'-E;&8L(#$R,#,L(")0<FEN="(I#0H@(" @(" @
M($565%]"55143TXH<V5L9BP@,3(P,RP@<V5L9BY/;D1O4')I;G0I#0H@(" @
M(" @('-U8F)O>"Y!9&0H8G1N+" Q+"!W>$=23U<@?"!W>$%,3"P@,BD-"@T*
M(" @(" @("!S96QF+F)O>"Y!9&0H<W5B8F]X+" P+"!W>$=23U<I#0H-"B @
M(" @(" @<V5L9BY3971!=71O3&%Y;W5T*'1R=64I#0H@(" @(" @('-E;&8N
M4V5T4VEZ97(H<V5L9BYB;W@I#0H-"@T*(" @(&1E9B!/;E!R:6YT4V5T=7 H
M<V5L9BP@979E;G0I.@T*(" @(" @("!P<FEN=&5R1&EA;&]G(#T@=WA0<FEN
M=$1I86QO9RAS96QF*0T*(" @(" @("!P<FEN=&5R1&EA;&]G+D=E=%!R:6YT
M1&EA;&]G1&%T82@I+E-E=%!R:6YT1&%T82AS96QF+G!R:6YT1&%T82D-"B @
M(" @(" @<')I;G1E<D1I86QO9RY'9710<FEN=$1I86QO9T1A=&$H*2Y39713
M971U<$1I86QO9RAT<G5E*0T*(" @(" @("!P<FEN=&5R1&EA;&]G+E-H;W=-
M;V1A;"@I.PT*(" @(" @("!S96QF+G!R:6YT1&%T82 ]('!R:6YT97)$:6%L
M;V<N1V5T4')I;G1$:6%L;V=$871A*"DN1V5T4')I;G1$871A*"D-"B @(" @
M(" @<')I;G1E<D1I86QO9RY$97-T<F]Y*"D-"@T*#0H@(" @9&5F($]N4')I
M;G10<F5V:65W*'-E;&8L(&5V96YT*3H-"B @(" @(" @<V5L9BYL;V<N5W)I
M=&5497AT*")/;E!R:6YT4')E=FEE=UQN(BD-"B @(" @(" @<')I;G1O=70@
M/2!->5!R:6YT;W5T*'-E;&8N8V%N=F%S+"!S96QF+FQO9RD-"B @(" @(" @
M<')I;G1O=70R(#T@37E0<FEN=&]U="AS96QF+F-A;G9A<RP@<V5L9BYL;V<I
M#0H@(" @(" @('-E;&8N<')E=FEE=R ]('=X4')I;G10<F5V:65W*'!R:6YT
M;W5T+"!P<FEN=&]U=#(L('-E;&8N<')I;G1$871A*0T*(" @(" @("!I9B!N
M;W0@<V5L9BYP<F5V:65W+D]K*"DZ#0H@(" @(" @(" @("!S96QF+FQO9RY7
M<FET951E>'0H(DAO=7-T;VXL('=E(&AA=F4@82!P<F]B;&5M+BXN7&XB*0T*
M(" @(" @(" @(" @<F5T=7)N#0H-"B @(" @(" @9G)A;64@/2!W>%!R979I
M97=&<F%M92AS96QF+G!R979I97<L('-E;&8N9G)A;64L(")4:&ES(&ES(&$@
M<')I;G0@<')E=FEE=R(I#0H-"B @(" @(" @9G)A;64N26YI=&EA;&EZ92@I
M#0H@(" @(" @(&9R86UE+E-E=%!O<VET:6]N*'-E;&8N9G)A;64N1V5T4&]S
M:71I;VXH*2D-"B @(" @(" @9G)A;64N4V5T4VEZ92AS96QF+F9R86UE+D=E
M=%-I>F4H*2D-"B @(" @(" @9G)A;64N4VAO=RAT<G5E*0T*#0H-"@T*(" @
M(&1E9B!/;D1O4')I;G0H<V5L9BP@979E;G0I.@T*(" @(" @("!P9&0@/2!W

%!R:6YT1&EA;&]G1&%T82@I#0H@(" @(" @('!D9"Y39710<FEN=$1A=&$H

M<V5L9BYP<FEN=$1A=&$I#0H@(" @(" @('!R:6YT97(@/2!W>%!R:6YT97(H
M<&1D*0T*(" @(" @("!P<FEN=&]U=" ]($UY4')I;G1O=70H<V5L9BYC86YV
M87,L('-E;&8N;&]G*0T*(" @(" @("!I9B!N;W0@<')I;G1E<BY0<FEN="AS
M96QF+F9R86UE+"!P<FEN=&]U="DZ#0H@(" @(" @(" @("!W>$UE<W-A9V5"
M;W@H(E1H97)E('=A<R!A('!R;V)L96T@<')I;G1I;F<N7&Y097)H87!S('EO
M=7(@8W5R<F5N="!P<FEN=&5R(&ES(&YO="!S970@8V]R<F5C=&QY/R(L(")0
M<FEN=&EN9R(L('=X3TLI#0H@(" @(" @(&5L<V4Z#0H@(" @(" @(" @("!S
M96QF+G!R:6YT1&%T82 ]('!R:6YT97(N1V5T4')I;G1$:6%L;V=$871A*"DN
M1V5T4')I;G1$871A*"D-"B @(" @(" @<')I;G1O=70N1&5S=')O>2@I#0H-
M"@T*(RTM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T-"@T*9&5F(')U;E1E<W0H
M9G)A;64L(&YB+"!L;V<I.@T*(" @('=I;B ](%1E<W10<FEN=%!A;F5L*&YB
M+"!F<F%M92P@;&]G*0T*(" @(')E='5R;B!W:6X-"@T*#0HC+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+0T*#0H-"@T*#0H-"F]V97)V:65W(#T@(B(B7 T*
'(B(B#0H-"@``
`
end