Come stampare i componenti Flex in FireFox3?
-
08-06-2019 - |
Domanda
Grazie all'implementazione difettosa dei componenti ActiveX di FireFox (dovrebbe davvero scattarne un'immagine durante la stampa), i componenti Flex (nel nostro caso i grafici) non vengono stampati in FX.
Stampano bene in IE7, anche in IE6.
Abbiamo bisogno di stampare questi grafici, ma hanno anche contenuto dinamico.Non voglio davvero ridisegnarli come immagini quando l'utente stampa: il componente Flex dovrebbe farlo.
Abbiamo trovato un potenziale soluzione alternativa, ma sfortunatamente non funziona in FireFox3 (in FireFox2 funziona più o meno, ma non abbastanza bene).
Qualcuno conosce una soluzione alternativa?
Soluzione
Usando ACPrintManager sono riuscito a far stampare perfettamente Firefox 3!
L'unica cosa che dovevo aggiungere all'esempio era controllare se stage era null e callLater se stage era null.
private function initPrint():void {
//if we don't have a stage, wait until the next frame and try again
if ( stage == null ) {
callLater(initPrint);
return;
}
PrintManager.init(stage);
var data:BitmapData = new BitmapData(stage.stageWidth, stage.stageHeight);
data.draw(myDataGrid);
PrintManager.setPrintableContent(data);
}
Altri suggerimenti
Grazie.Un carico di callLater
-s aggiunto al nostro codice grafico personalizzato sembra averlo fatto.