A lo primero, yo suelo utilizar esa técnica y me funciona correctamente quizás tengas que recalibrar la impresora.
A lo segundo:
Código Delphi
[-]procedure TForm1.QRDBText1Print(sender: TObject; var Value: String);
begin
if table1busqueda.Value ='yeyo' then
QrDbTExt1.Font.Color:=ClRed
else
QrDbTExt1.Font.Color:=ClBlack;
end;
Un Saludo.