Drukowanie WebBrowser i orientacja strony.

0

Witam!

W programie do drukowania raportów chciałem wykorzystać WebBrowser. Strona jest tworzona dynamicznie, potem ładowana do WebBrowsera i trzeba ja wydrukować. Drukuję za pomocą:

WB.ControlInterface.ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER, vIn, vOut) ;

Problem jest taki, ze zawsze drukuje stronę pionowo, a ja potrzebuje poziomo. Wywołanie przed tym Printer,Orientation:=poLandscape; nic nie dało, tak samo jak dodanie do formatki PrinterSetupDialog i ustawienie w nim na poziomą. Odpaliłem IE, wszedłem w ustawienia strony i tam zmieniłem. Ofc przy ponownym uruchomieniu nie zapamietał tej zmiany. Ktoś ma pomysł jak rozwiazać ten problem?
Piszę w Delpi6.

0

Misiekd

Już sie prawie cieszyłem ze się udało, a tutaj dalej zonk:/

Ta funkcja, którą podałeś, powinna być wywołana po otworzeniu urządzenia (funkcja OpenThePrinterDevice; z FAQ#19 na tej stronie). Zrobiełem tak jak tam było napisane, czyli

OpenThePrinterDevice;
SetPrinterSettings(Printer);

oczywiscie zmienne

FDevice: PChar;
FDriver: PChar;
FPort: PChar;
DeviceMode: THandle;
DevMode: PDeviceMode;

zadeklarowane globalnie, zeby obie procedury mogły się do nich odwoływać
Napisałem sobie krótki program, (http://www.misiakufal.pl/pt1.rar). Na formiw WebBrowser, obok 3 buttony. Pierwszy łąduke stronę do WB, drugi wykonuje ww procedury a trzeciu drukuje za pomocą

WB.ControlInterface.ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER, vIn, vOut) ;

Jednak nadal pionowe strony...:/

0

sprawdzałem, cytat:
"Może się zdarzyć, że trzeba programowo zmienić ustawienia drukowania w programie Internet Explorer lub formancie WebBrowser. Tylko ustawienia dotyczące marginesów strony oraz nagłówka i stopki mogą być zmienione w ten sposób. Jednak nie można zmienić w ten sposób innych ustawień, takich jak orientacja strony czy drukarka."

Swoją drogą strasznie dziwne, ze takiej podstawowej rzeczy nie da się zmienić:/ no cóż. Teraz może inne pytanie. Skoro z tym są takie problemy, czy są jakieś darmowe dobre komponenty do zastosowania komercyjnego do tworzenia raportów? znalazłem coś takiego: http://freereport.sourceforge.net/en/index.php wersje sprzed 9 lat, 2002r.. zainstalowałem ale jeszcze nie testowałem. Warte to coś?

1

w zależności od wersji delphi masz tam quickreport (chyba do wersji 7 i w 2k9), ravereport (D7) i w XE2 jest fastreport. O ile w QR i RR wydruki da się robić o tyle w FR to sama przyjemność.
FreeReport to protoplasta FR. Jeśli nie potrzebujesz wydruków na igłówki i kupy eksportów (w tym do PDF) to FreeReport jest rozwiązaniem

1 użytkowników online, w tym zalogowanych: 0, gości: 1