Probably not possible with current versions.  Your print job will
probably take more than 60 seconds on some machines and timeout.
Someday, I hope the Flash Player will fix the bug that will allow
printing in the background.

 

________________________________

From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of sondang paruliant
Sent: Saturday, July 19, 2008 5:12 AM
To: flexcoders@yahoogroups.com
Subject: [flexcoders] need help urgent - multiple images printing

 

Dear all  need help

how to printing multiple images (1000 images)  

 I try using images loader to printing but cannot shown in printing
result.
when Using Reperter to call multiple images Good work but to heavy  and
make long time loading.
I try Using mx:list and itemRenderer to Get images data source and how
to accessing itemRenderer component Object from application

This my printing function source :


            public function PrintAllbyGroups(): void {
                
                CursorManager.setBusyCursor();
                

                var i:int;
                var DataRows:ArrayCollection = globalArrayData;


                var myPrintJob:FlexPrintJob = new FlexPrintJob();
                
                myPrintJob.printAsBitmap = false;
                var pageLimit: int = 3; // limit data tiap halaman
                var counterData: int = 0; // counter data tiap halaman
                var counterPage: int = 0; // counter halaman tiap
dokumen        
                var lastGroupName: String = DataRows.getItemAt(0).Kelas;
                
                var printState:Boolean = false;
                
                if(myPrintJob.start())
                {    
                    for( i = 0; i < DataRows.length; i++)
                    {    
                        // bila terjadi perubahan groupName
                        if(lastGroupName !==
DataRows.getItemAt(i).Kelas)
                        {    
                            // tambahkan ke halaman pencetakan
 
myPrintJob.addObject(mySheet,FlexPrintJobScaleType.NONE);

                            // tambahkan counter halaman
                            counterPage++;
                            // kembalikan counterData ke normal
                            counterData    = 0;
                            // ubah nama grup terakhir

                            lastGroupName = DataRows.getItemAt(i).Kelas;
                        }
                        // iterasi
                        counterData++;
                        // normalkan system
                        if(counterData === 1)
                        {    
                            printRow1.visible = false;
                            printRow2.visible = false;
                            printRow3.visible = false;        
                        }    
                        
                        printGroupName.text = "Grup " + lastGroupName;
                        
                        if(counterData === 1)
                        {    
                            printRow1.visible = true;
                            printName1.text =
DataRows.getItemAt(i).Name;
                            
                            printClass1.text =
DataRows.getItemAt(i).Class;
                            
                            printAuthorityCode1.text =
DataRows.getItemAt(i).AuthorityCode;
 
if(StringUtil.trim(DataRows.getItemAt(i).AreaCode)=="0"){
                                printKliringArea1.text = "Kantor Pusat";
             &n! bsp;              }else{
                                printKliringArea1.text = "Wilayah " +
DataRows.getItemAt(i).AreaCode + ", " +
DataRows.getItemAt(i).KliringArea;
                            }
                            printSpecimen1.width = imageWidth;
                            printSpecimen1.height = imageHeight;
                            
                            
                            printSpecimen1.source = //// this place how
to get object in mx:list itemRendere component
                        }
                        
                        if(counterData === 2)
                        {    
                            printRow2.visible = true;
                            printName2.text =
DataRows.getItemAt(i).Name;
                            printClass2.text =
DataRows.getItemAt(i).Class;
                            printAuthorityCode2.text =
DataRows.getItemAt(i).AuthorityCode;
 
if(StringUtil.trim(DataRows.getItemAt(i).AreaCode)=="0"){
                      &nbs! p;         printKliringArea2.text = "Kantor
Pusat";
                            }else{
                                printKliringArea2.text = "Wilayah " +
DataRows.getItemAt(i).AreaCode + ", " +
DataRows.getItemAt(i).KliringArea;
                            }
                            printSpecimen2.width = imageWidth;
                            printSpecimen2.height = imageHeight;
                            //printSpecimen2.source = newRepeat
                        }                
                        
                        if(counterData === 3)
                        {    
                            printRow3.visible = true;
                            printName3.text =
DataRows.getItemAt(i).Name;
                            printClass3.text =
DataRows.getItemAt(i).Class;
                            printAuthorityCode3.text =
DataRows.getItemAt(i).AuthorityCode;
 
if(StringUtil.trim(DataRows.getItemAt(i).AreaCode)=="0"){
                                printKliringArea3.text = "Kantor
Pusat";! 
                            }else{
                                printKliringArea3.text = "Wilayah " +
DataRows.getItemAt(i).AreaCode + ", " +
DataRows.getItemAt(i).KliringArea;
                            }
                            printSpecimen3.width = imageWidth;
                            printSpecimen3.height = imageHeight;
                            //printSpecimen3.source = newRepeat
                                                        
                        }
                    
                        // bila melebihi limit data atau data sudah
habis
                        if(counterData === pageLimit  || i ===
DataRows.length - 1)
                        {
                            
                            // tambahkan ke halaman pencetakan
 
myPrintJob.addObject(mySheet,FlexPrintJobScaleType.NONE);

                            // tambahkan counter halaman
                            counterPage++;
                            // kembalikan counterData ke normal
                            counterData = 0;
                            
                        }
                        
                    }
                    
                    if(counterPage > 0)
                    {
                        myPrintJob.send(); // kirim ke pencetak
                        myPrintJob = null;
                        Search();
                    }
                
                }
                else
                {
                    //mdm.Dialogs.prompt("Cannot print page, please
check your printer configuration !!");
                }
                
                CursorManager.removeBusyCursor();
            
            }    

 

 

Reply via email to