- Сообщения
- 3,556
- Репутация
- 628
Для печати использую библиотеку
Печать в файл происходит через виртуальные принтеры: CutePDF Writer или Microsoft Print to PDF
Строки чередуют четыре цвета: синий, красный, желтый, черный. Все цвета кроме желтого выводятся верно.
В чем проблема?
Пример кода
Этот же вопрос задал на официальном форуме, но пока нет ответа.
на скрине результат печати
нашел решение. какая то проблема в обработке кодировки цвета.
в итоге для получения желтого нужно указать - 0x00FFFF
хотя, в autoit это голубой.
printing using UDF and a dll
This is a printing UDF which allows you to print text in any font, size and colour at any position on the page, draw lines, curves, elipses, pies in any colour, and print images. Useful for labels, reports, graphs and standard forms. Can also print barcodes. It uses my printmg.dll. It is not inte...
www.autoitscript.com
Строки чередуют четыре цвета: синий, красный, желтый, черный. Все цвета кроме желтого выводятся верно.
В чем проблема?
Пример кода
Код:
#include <printMGv2.au3>
_TextToPrint('CutePDF Writer')
Func _TextToPrint($sNamePrint)
Local $aTextP = FileReadToArray(@ScriptDir & '\text.txt')
Local $hOD = _PrintDllStart()
_PrintSelectPrinter($hOD, $sNamePrint)
_PrintPageOrientation($hOD, 1)
_PrintStartPrint($hOD)
Local $y = 60, $iC = 0
Local $aCol[4] = [0xFF0000, 0x0000FF, 0xFFFF00, 0x000000];blue red yellow black
For $n = 0 To UBound($aTextP) - 1
If $iC = 4 Then $iC = 0
_PrintSetFont($hOD, 'Courier', 12, $aCol[$iC])
$iC += 1
_PrintText($hOD, $aTextP[$n], 35, $y)
$y += 43
Next
_PrintEndPrint($hOD)
_PrintNewPage($hOD)
_PrintDllClose($hOD)
EndFunc ;==>_TextToPrint
на скрине результат печати
Сообщение автоматически объединено:
нашел решение. какая то проблема в обработке кодировки цвета.
в итоге для получения желтого нужно указать - 0x00FFFF
хотя, в autoit это голубой.
Вложения
Последнее редактирование: