diff -ruN hplip-3.23.12.original/prnt/drv/hpcups.drv.in hplip-3.23.12/prnt/drv/hpcups.drv.in --- hplip-3.23.12.original/prnt/drv/hpcups.drv.in 2024-01-11 17:41:09.489078978 +0200 +++ hplip-3.23.12/prnt/drv/hpcups.drv.in 2024-01-11 23:02:38.938797456 +0200 @@ -20896,7 +20896,20 @@ // cupsMediaType values map to MEDIATYPE from global_types.h Option "MediaType/Media Type" PickOne AnySetup 10.0 - *Choice "Plain/Plain Paper" "<>setpagedevice" + *Choice "Plain/Plain" "<>setpagedevice" + Choice "Bond/Bond" "<>setpagedevice" + Choice "Cardstock/Cardstock" "<>setpagedevice" + Choice "Color/Color" "<>setpagedevice" + Choice "Envelope/Envelope" "<>setpagedevice" + Choice "Heavy/Heavy" "<>setpagedevice" + Choice "Labels/Labels" "<>setpagedevice" + Choice "Letterhead/Letterhead" "<>setpagedevice" + Choice "Light/Light" "<>setpagedevice" + Choice "Preprinted/Preprinted" "<>setpagedevice" + Choice "Prepunched/Prepunched" "<>setpagedevice" + Choice "Recycled/Recycled" "<>setpagedevice" + Choice "Rough/Rough" "<>setpagedevice" + Choice "Transparency/Transparency" "<>setpagedevice" // cupsCompression values map to QUALITY_MODE from global_types.h Option "OutputMode/Print Quality" PickOne AnySetup 10.0 diff -ruN hplip-3.23.12.original/prnt/hpcups/HPCupsFilter.cpp hplip-3.23.12/prnt/hpcups/HPCupsFilter.cpp --- hplip-3.23.12.original/prnt/hpcups/HPCupsFilter.cpp 2024-01-11 17:41:09.485078829 +0200 +++ hplip-3.23.12/prnt/hpcups/HPCupsFilter.cpp 2024-01-11 17:43:56.570150941 +0200 @@ -438,6 +438,9 @@ m_JA.media_attributes.physical_height = (cups_header->PageSize[1] * vert_res) / 72; m_JA.media_attributes.printable_width = cups_header->cupsWidth; m_JA.media_attributes.printable_height = cups_header->cupsHeight; + + // sova + strncpy(m_JA.media_attributes.MediaTypeName, cups_header->MediaType, sizeof(m_JA.media_attributes.MediaTypeName)); } if (m_iLogLevel & BASIC_LOG) { diff -ruN hplip-3.23.12.original/prnt/hpcups/LJFastRaster.cpp hplip-3.23.12/prnt/hpcups/LJFastRaster.cpp --- hplip-3.23.12.original/prnt/hpcups/LJFastRaster.cpp 2024-01-11 17:41:09.485078829 +0200 +++ hplip-3.23.12/prnt/hpcups/LJFastRaster.cpp 2024-01-11 18:02:00.965316195 +0200 @@ -144,6 +144,24 @@ // Set media source, type, size and quality modes. + // sova: fixed mising MediaType (paper type: Plain, Light, Heavy, Rough, e.t.c) + char* mt = m_pMA->MediaTypeName; + int mtl = strlen(mt); + if(mtl) + { + u_int8_t b; + b = 0xC8; addToHeader(&b, 1); // C8 = ubyte array + b = 0xC1; addToHeader(&b, 1); // C1 = uint16 + // length + b = mtl; addToHeader(&b, 1); + b = 0; addToHeader(&b, 1); // length is always less than 64 + // + addToHeader((BYTE*)mt, mtl); + b = 0xF8; addToHeader(&b, 1); // F8 = attr ubyte + b = 0x27; addToHeader(&b, 1); // 27 = media type + } + // + if (m_pMA->pcl_id == 96) // custom paper size { BYTE szCustomSize[16];