Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Gradiente horizontal sobre a lona.
O código foi ligeiramente melhorado e também introduziu uma variável responsável pela velocidade de renderização:
A alteração da velocidade de visualização é feita atualizando a tela não após cada desenho da linha, mas em intervalos.
O tamanho da lacuna é calculado utilizando a operação aritmética "restante da divisão":
Apliquei cores diferentes aqui: apliquei uma cor com transparência (canal alfa 255) à cor de fundo (canal alfa 128). Tenho uma pergunta - qual fórmula é usada para calcular a cor final dos pixels para os modos COLOR_FORMAT_ARGB_RAW e COLOR_FORMAT_ARGB_NORMALIZE.
Se você se referir ao artigo Calculando a cor resultante, os cálculos não coincidem.
Onde está errado: as constantes de cor estão armazenando os dados errados ou a função PrintFormat está funcionando mal?
Aqui está um roteiro que produz cores em forma inteira através do PrintFormat:
Resultado de saída:
Por que oclrRed é representado como0x000000FF e não como0x00FF0000? Porque o vermelho é C'255,0,0'.
Por queclrBlue é representado como0x00FF0000 e não como0x0000FF? Porque azul é C'0,0,255'.
Isto é correto. É que o ARGB tem um formato de armazenamento de dados diferente em comparação com o Color.
O formato de gravação deve ser o mesmo: primeiro o canal alfa (se houver um), depois o RGB. De acordo com o tipo de ajuda Cor registrada azul através de literais:
C'0x00,0x00,0xFF'// azul
ou seja, em representação inteira, a cor azul (sem canal alfa) deve ser escrita como: 0x0000FF. Mas o roteiro de teste produz a cor azul de trás para frente:
Acontece que a cor é escrita de trás para frente nas constantes de cor.
Acontece que a cor é escrita de trás para frente em constantes de cor.
Com COLOR_FORMAT_ARGB_RAW, o métodoTransparentLevelSet com parâmetro "0" (transparência total) produz quase transparência, mas claramente não transparência total.
COLOR_FORMAT_ARGB_RAW métodoTransparentLevelSet com parâmetro "0" (transparência total) torna a transparência próxima à transparência total, mas obviamente não à transparência total.
Esclarecimento: a transparência residual no nível de transparência "0" só é observada em x32. Não há transparência residual em x64:
Este comportamento kanvas no modo COLOR_FORMAT_ARGB_RAW é um bug ou uma característica de desenho em sistemas x32 e x64?
Esclarecimento: a transparência residual no nível de transparência "0" só é observada em x32. Não há transparência residual em x64:
Este comportamento kanvas no modo COLOR_FORMAT_ARGB_RAW é um bug ou uma característica de desenho em sistemas x32 e x64?