Название: QLinearGradient bugs? Отправлено: xokc от Март 16, 2010, 21:35 При использовании следующего кода
Код: const int w = 64 * 1024; Кроме того, даже для для случаев с w < 32 * 1024, цвет крайней правой точки равен не 0xFF0000 (Qt::red), а 0хFD0001 (для w = 32 * 1024 - 1). Qt 4.6.0, WinXP, MSVS и MinGW. Название: Re: QLinearGradient bugs? Отправлено: Rcus от Март 17, 2010, 04:09 Все в порядке.
Цитировать Limitations If you are using coordinates with Qt's raster-based paint engine, it is important to note that, while coordinates greater than +/- 2^15 can be used, any painting performed with coordinates outside this range is not guaranteed to be shown; the drawing may be clipped. This is due to the use of short int in the implementation. Название: Re: QLinearGradient bugs? Отправлено: GreatSnake от Март 17, 2010, 10:32 Остается 2 выхода - либо самому заполнять image градиентом либо тупо создать image (2^15 x 1) и залить его как делаете вы и уже потом scale-нуть этот image в image нужного вам размера. Для плавности переходов можно задействовать Qt::SmoothTransformation.
Название: Re: QLinearGradient bugs? Отправлено: xokc от Март 17, 2010, 19:41 Да я-то справлюсь и так. Просто как-то некрасиво получается - чем их short лимитирует? А по второй части вопроса мысли у кого-нибудь есть?
Название: Re: QLinearGradient bugs? Отправлено: GreatSnake от Март 17, 2010, 20:04 Цитировать Просто как-то некрасиво получается - чем их short лимитирует? Мне тоже не понятно, т.к. для QImage тролли декларируют, что у них свой отдельный QPaintEngine, который по идее не должен быть завязан на оконную систему. Значит что-то не до конца сделали.Цитировать А по второй части вопроса мысли у кого-нибудь есть? Похоже на баг либо на ошибку привидения. А для w = 32 * 1024 - 2 ?Название: Re: QLinearGradient bugs? Отправлено: xokc от Март 17, 2010, 20:15 Похоже на баг либо на ошибку привидения. А для w = 32 * 1024 - 2 ? Да по-фигу ей размер. Последний пиксель градиента все равно не равен тому, который задается в setColorAt(1, Qt::red)Название: Re: QLinearGradient bugs? Отправлено: GreatSnake от Март 18, 2010, 09:32 Имхо, точная передача цвета при градиенте не важна.
К тому же, опять-таки имхо, человеческий глаз различий между 0xFF0000 и 0хFD0001 не заметит. Название: Re: QLinearGradient bugs? Отправлено: xokc от Март 18, 2010, 19:59 А не человеческий не глаз заметит? Я же заметил. Это что за подход такой - 2 приблизительно равно 3?
|