QuickRep1.Prepare;
meta := QRPreview.QRPrinter.GetPage(1);

解决方案 »

  1.   

    procedure TForm1.Button1Click(Sender: TObject);
    var meta: tmetafile;
    begin
    //要PREPARE!
    quickrep1.prepare;
    meta := quickrep1.QRPrinter.GetPage(1);
    image1.Canvas.Draw(0,0,meta);
    meta.SaveToFile('c:\c.emf');
    end;
      

  2.   

                  QRVoucher_xfysh.Prepare;
                  QRVoucher_xfysh.Preview;
                  //QRPreview.PaintTo(T_bmp.Canvas.Handle,10,10);
                  //Image2.Picture.Bitmap := T_bmp;
                  meta := QRPreview.QRPrinter.GetPage(1);
    可是meta总是空 nil
    天~~~
    我都试了无数种方法了555555555555
      

  3.   

    用QRPREVIEW?
    它怎么知你是用它来PREVIEW的?呵呵
    要在PREPARE后加入:view1.QRPrinter:=quickrep1.QRPrinter;
      

  4.   

    to lxl(蚊蚊) 
    我已经在QR1的on preview中写了呀
    QRPreview.QRPrinter := TQRPrinter(Sender);
      

  5.   

    你是PREVIEW处写了有什么用?
    要在PREPARE后面写!!
    全文:
    procedure TForm1.Button1Click(Sender: TObject);
    var meta: tmetafile;
    begin
    //要PREPARE!
    quickrep1.prepare;
    QRPreview.QRPrinter := TQRPrinter(Sender); 
    meta := quickpreview1.QRPrinter.GetPage(1);
    image1.Canvas.Draw(0,0,meta);
    meta.SaveToFile('c:\c.emf');
    end; 
      

  6.   

    你的代码过不去呀
    再说,我在取meta之前就在QR的preview事件中
    写了
    QRPreview.QRPrinter := TQRPrinter(Sender);了,我得代码:
                  QRVoucher_xfysh.Prepare;
                  QRVoucher_xfysh.Preview;
                  meta := QRVoucher_xfysh.QRPrinter.GetPage(1);
      

  7.   

    to lxl(蚊蚊)
    用你的方法,得到的meta还是空nil呀
    我的QQ是5733173
      

  8.   

    改为:
    QRVoucher_xfysh.Preview;
    QRVoucher_xfysh.Prepare;
    meta := QRVoucher_xfysh.QRPrinter.GetPage(1); 
      

  9.   

    建议改为这样问:
    在用QRPRIVWER来玉兰后,怎么又在程序中动态改回到QR的DEFAULT玉兰?