Witam. Mam problem.
W moim programie jes jedna forma, która ma służyć do wyświetlenia faktury.
Program wygenerował już ją wcześniej i zapisał do pliku XML w folderze tymczasowym.
W tym momencie chiciałbym wyświetlić ten dokument w programie i po naciśnięciu przycisku drukuj chciałbym aby faktura się wydrukowała.
Problem leży w tym, że WebBrowser, który działa na siliniku InternetExplorera kompletnie się do tego zadanie nie nadaje, gdyż zupełnie źle interpretuje CSSa, który został użyty do wystylowania XMLa. Dlatego właśnie chciałem zrobić coś na silniku firefoxa.
Pierwsza próba to użycie TMozillaBrowser. Wszystko łasnie, przeglądarka siedzi już na formie, wyświetla ładnie fakturę i tu stoję. Pod przycisk drukujący podpinam MozillaBrowser1.Navigate('javascript: window.print'). Wyskakuje okienko drukowania, wybieram drukarkę itp, klikam drukuj i najzwyczajniej w śiwecie nie drukuje. Próbowałem przez OLE, ale w tym wypadku nie wiem jak zmienić ustawienia tej przeglądarki aby drukowała tła (co jest mi potrzebne).
Drugie podejście to komponent GeckoBrowser. Tu działało najwięcej. Komponent siedzi na formie, faktura wyświetlona window.print() wyświetla okienko ustawień i drukuje. No ale... Nie ma drukuje teł, które ustawiłem w CSS, oraz drukuje w narożnikach informacje o dokumencie. Po znawigowaniu tego browsera na about:config widze, że ma ustawione print.print_bgimages i print.print_bgcolors na true, a jedna uparła sie i nie drukuje. Aby program sięskompilował muszą być też w folderze z brogramem biblioteki DLL GRE. tam jest folder greprefs i plik all.js, ale zmieniam tam co chcę, a komponent sie tego nie ima.
Jak jużkompletnie nie będę wiedział co zrobić to chyba użyję firefox portable z rozszerzeniem printcmdline, no ale wtedy nie mogę wybrać drukarki, którą chciałbym drukować.
Najbardziej jednak liczę, że ktoś bedzie wiedział gdzie można ustawić tego GeckoBrowsera.
Liczę na pomoc. Pozdrawiam.