Patch level : 2.0 614

Files correlati     : xvaga.dll
Ricompilazione Demo : [ ]
Commento            :

Ao20109
Ho riscontrato che ci sono dei problemi nella visualizzazione dei caratteri
di alcune stampanti (riscontrato anche da alcuni clienti); in pratica se
passo ad esempio da una stampante Laser a una Generica / solo testo, i
caratteri della generica (Roman 10cpi, Roman 12cpi, Roman 17cpi nel caso di
Win9x) non vengono riportati, restano invece quelli della Laser.


git-svn-id: svn://10.65.10.50/trunk@11523 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 2003-10-22 10:56:09 +00:00
parent 154390d394
commit b09b711d7b

View File

@ -153,12 +153,16 @@ public:
unsigned long TwxPrintOutCache::Signature(TPRINT_RCD* prcd) const unsigned long TwxPrintOutCache::Signature(TPRINT_RCD* prcd) const
{ {
unsigned long signature = 1; const unsigned char* data = (const unsigned char*)prcd;
const unsigned char* data = (const unsigned char*)prcd + 4; unsigned long h = 0;
for (size_t i = 0; i < 32; i++) for (size_t c = 0; c < prcd->m_size; c++)
if (data[i] != 0) {
signature *= data[i]; h = (h << 2) + data[c];
return signature; const unsigned long i = h & 0xC0000000;
if (i) h = (h ^ (i >> 12)) & 0x3FFFFFFF;
}
return h;
} }
void TwxPrintOutCache::Reset() void TwxPrintOutCache::Reset()
@ -293,8 +297,8 @@ long xvt_fmap_get_family_sizes(PRINT_RCD *precp, char *family, long *size_array,
long xvt_fmap_get_families(PRINT_RCD *precp, char **family_array, long max_families) long xvt_fmap_get_families(PRINT_RCD *precp, char **family_array, long max_families)
{ {
long size = 1; long size = 0;
family_array[0] = xvt_str_duplicate(XVT_FFN_COURIER); family_array[0] = NULL;
if (precp != NULL) if (precp != NULL)
{ {