2015-05-27 3 views
3

Я хочу инвертировать текст в строке, а другие строки отображаются нормально и без инверсии в verifone vx520. Я использую функцию inverse_toggle(), но эта функция инвертирует всю страницу, а не строку. как я могу инвертировать только строку, а другие строки показывают как обычно?как инвертировать текст в verifone vx520

вот мой код:

int display = open(DEV_CONSOLE, 0); 
inverse_toggle(); 
write(display,"first line to inverse\n",22); //i want to inverse just this line 
write(display,"second line shown normally\n",27);//i want to show this line normally 

ответ

1

Я никогда не играл с inverse_toggle или setinverse, но я заметил, что вы не переключая его отступить. Попробуйте следующее:

int display = open(DEV_CONSOLE, 0); 
inverse_toggle(); 
write(display,"first line to inverse\n",22); 
inverse_toggle(); // new line 
write(display,"second line shown normally\n",27); 

Для получения дополнительной информации используйте setinverse. Кроме того, проверьте display_at. Я думаю, вы найдете это более удобный вариант, чем write

int display = open(DEV_CONSOLE, 0); 
setinverse(1); // explicitly turn inverse on 
display_at(1, // x 
      1, // y 
      "first line to inverse", // no /n needed since we are specifying x and y 
      NO_CLEAR); //defined in ACLCONIO.H. Other options are CLR_LINE and CLR_EOL 
setinverse(0); // explicitly turn inverse off 
display_at(1, 2, display,"second line shown normally", NO_CLEAR); 

Если это не работает, вы всегда можете использовать инструмент шрифта, чтобы сделать новый шрифт вместо (хотя это было бы больше работы).

+0

при использовании inverse_toggle() вся страница будет инверсной. и для display_at я не нашел никакой функции, подобной той, что только gotoxy (x, y), и это не работает правильно и инвертирует всю страницу. –

+0

Тогда вам, вероятно, понадобится создать или найти обратный шрифт. – David

+0

Я просто проверил, поможет ли использование команды 'window', но это не похоже (увы). Я думаю, вы собираетесь застрять в использовании инструмента для создания шрифтов. Хорошей новостью является то, что вы можете просто загрузить существующий шрифт, а затем использовать команду «inverse». Плохая новость заключается в том, что вы должны сделать это для каждого персонажа - я не знаю, как можно «инвертировать» весь шрифт одновременно. Что касается «display_at», это часть файла aclconio.h'. – David