papi 0 Denunciar post Postado Maio 18, 2009 bom dia a todos, tenho uma rotina de impressão que segue abaixo, o problema e que quando ele imprime a figura em .BMP ele coloca uns caracteres antes que deve ser (não sei) sujeira de buffer de memoria. A minha necessidade é como limpo a memoria antes de imprimir a figura. deste ja agradeço a todos xLeft = tLeft; // ===> Inicio de cada linha yMaxHeight = 0; // ===> Desenho mais alto da linha for (i = 0; i <= strlen(ptx); i++) // ===> Percorre todos os caracteres da linha { tmp[0] = ptx[i]; // ===> Pega um caratere da linha tmp[1] = 0; // ===> adiciona 0 em seguida para finalizar a string strcat(tmp,".bmp"); // ===> concatena .bmp ao caractere hbitmap = (HBITMAP)LoadImage(GetModuleHandle(NULL),tmp,IMAGE_BITMAP,0,0,LR_LOADFROMFILE); // ===> Carrega imagem GetObject((HBITMAP)hbitmap,sizeof(BITMAP),&bitmapinfo); // ===> Pega informacoes da imagem xWidth = bitmapinfo.bmWidth; // ===> Pega largura yHeight = bitmapinfo.bmHeight; // ===> Pega altura if (yMaxHeight < yHeight) // ===> Se a ultima imagem maior for inferior a atual yMaxHeight = yHeight; // ===> Atualiza o tamanho da imagem maior hdc = GetDC(hWnd); image_dc = CreateCompatibleDC(hdc); SelectObject(image_dc,hbitmap); BitBlt(pd.hDC,xLeft,yTop,xWidth,yHeight,image_dc,0,0,SRCCOPY); // ===> Desenha imagem na folha DeleteObject(hbitmap); // ===> Apaga imagem ReleaseDC(hWnd, hdc); DeleteDC(image_dc); xLeft = (xLeft + xWidth); // ===> Aumenta coordenada para a proxima imagem/caractere } yTop = (yTop + yMaxHeight); // ===> Aumenta coordenada para proxima linha, com base na imagem maior da linha. // ================================================================================ ============ ptx = strtok(NULL,"\n"); Line++; } Compartilhar este post Link para o post Compartilhar em outros sites
omar.pessoa 1 Denunciar post Postado Junho 12, 2009 Talvez o ptx está com sujeira! Antes de usar, sugiro dar um memset nele! Veja onde ele é usado, para ver se está sendo inicializado! Compartilhar este post Link para o post Compartilhar em outros sites