¿Cómo usar el módulo de diferencia de pantalla remota de Easy Language? Vi que los ejemplos escritos por otros son muy buenos y no se estancan en absoluto, y no usan el reloj, pero los que escribí necesitan usar el reloj. !
La diferencia de pantalla no puede usar el reloj ~~ Hay dos tipos de diferencias de pantalla, una es el escaneo entrelazado de fantasmas y la otra es la paloma gris. Diferencia de pantalla de bloqueo
Escaneo entrelazado, busque el algoritmo de escaneo entrelazado en Baidu
Déjeme contarle sobre el algoritmo de bloqueo
Imagen = imagen de pantalla (escriba su propio código para encontrar una solución Obtener pantalla)
A=Obtener la longitud del conjunto de bytes (imagen)
n=32
Bucle (n, 32)
{
if (An=0)
Salir del bucle
n=n-1
}
------------------ Del contenido anterior, el significado general es: el tamaño de la imagen se puede reducir a tamaño completo.
Crear fragmentos de diferencia de variable de conjunto de bytes y enviar la pantalla;
Bucle (n1, n)//n es el número de bloques n1 es el número de grabaciones de bucle
{
Porciones existentes = buscar conjuntos de bytes (n1-1, A/n, pantalla anterior)
Porciones de diferencia = buscar conjuntos de bytes (n1-1, A/n, pantalla anterior) screen) )
Diferencia de fragmentos = recuperar conjuntos de bytes (n1-1, A/n, última pantalla).imagen).
If (¡fragmentos existentes! = fragmentos de diferencias)
Enviar pantalla = Enviar fragmentos de diferencias de pantalla al conjunto de bytes (n1-1) // Coloca la diferencia de pantalla con la posición de diferencia de cada diferencia Juntos
}
El cliente envía byteset (enviar pantalla)
Luego, el servidor analiza los datos y realiza un bucle,
Después del servidor completa la modificación, envía el mensaje al cliente y el cliente envía la pantalla de diferencia nuevamente
Simplemente lo escribí, aunque la expresión es incorrecta, el significado es muy claro ~. Reservados todos los derechos.