Exemplo n.º 1
0
int32_t GFX_Lib::PStr(const char *Str, int32_t X, int32_t Y, float Size) {
    while(*Str) {
        X = PChar(*Str, X, Y, Size);
        Str++;
    }

    return X;
}
//---------------------------------------------------------------------------
bool __fastcall TRawPrint::DispositivoAberto(void)
{
 const AnsiString cRaw = "RAW";
 _DOC_INFO_1A DocInfo;
 bool Retorno;

 Retorno = OpenPrinter(PChar(NomeDispositivo.c_str()), &hPrinter, NULL);

 try
  {
   if(Retorno)
    {
     DocInfo.pDocName = NomeTrabalho.c_str();
     DocInfo.pOutputFile = PChar(char(0));
     DocInfo.pDatatype = PChar(char(0));
     if (StartDocPrinter(hPrinter, 1, (LPBYTE)&DocInfo) == 0)
      {
       Erro("Erro ao iniciar Documento para Impressora");
       ClosePrinter(hPrinter);
       Retorno = false;
      }
     else
      {
       DispAberto = True;
       NovaPagina();
       Retorno = true;
      }
    }
   else
    {
     Erro("Erro ao abrir a Impressora: " + NomeDispositivo);
     Retorno = false;
    }
  }
 catch(Exception & E)
  {
   Erro("Erro ao abrir a Impressora: " + NomeDispositivo + ".\r\n\r\n" + E.Message + "\r\n");
  }
 return(Retorno);
};
void LoadImageFromRes(Graphics::TBitmap* ABitmap, String AResName)
{
    Graphics::TBitmap* Bitmap = new Graphics::TBitmap();
    TResourceStream* Rs = new TResourceStream((int)HInstance, AResName, PChar(RT_RCDATA));
    try {
        Bitmap->LoadFromStream(Rs);
        ABitmap->Assign(Bitmap);
    }
    __finally {
        delete Bitmap;
        delete Rs;
    }
}