Des changements dynamiques de sous-titres ou d'images sont souvent visibles dans les films ou à la télévision. Lors de la production de documents de présentation multimédia tels que des logiciels pédagogiques multimédia ou des publicités, des changements dynamiques d'images et de textes sont souvent nécessaires. En tant que puissant outil de développement pour les logiciels Windows, VB6.0 offre de larges perspectives d'application dans la programmation multimédia. Cet article traite de l'utilisation des minuteries VB6.0 combinées aux fonctions de l'API Windows pour obtenir des effets spéciaux tels que la mise à l'échelle dynamique et la décoloration des images ou du texte.
1. Méthode de programmation pour réaliser des effets de mise à l'échelle et de fondu dynamiques des graphiques et du texte
1.Interface du programme
Nommez le formulaire Form1 et définissez sa propriété Windowstate sur 2. Définissez les contrôles et propriétés suivants dans le formulaire Form1 : un contrôle d'étiquette Label1, dont la couleur de fond est égale à la couleur de fond de form1 est 0 et Autosize est True ; Une image de contrôle image1, son Stratch et son Visible sont tous deux vrais ; Bordstyle est 0. Deux contrôles de zone d'image Picture1 et Picture2, la propriété Visible Picture1 est False et Picture2 est True ; la propriété AutoRedraw Picture1 est True et Picture est False ; la propriété ScaleModel est toutes les deux Pixels ; la propriété Bondstyle est toutes deux égale à 0. Trois contrôles de minuterie Timer1, Timer2 et Tirner3 ; tableau de contrôle des boutons de commande cmd(0),...,Cmd(4), dont les attributs de légende sont : "Zoom texte", "Zoom image", "Texte" Masquer", "Image Masquer » et « Quitter ».
2. Mise à l'échelle dynamique du texte
En modifiant régulièrement la propriété Size du texte via le contrôle de minuterie de VB6.0, l'effet d'agrandissement ou de réduction dynamique du texte peut être obtenu. Dans le programme, la taille du texte de l'attribut de légende de l'étiquette Label1 est contrôlée via le processus de réglage de timer1. L'événement cmd_click déclenché par cmd(0) déclenche le processus timer1_time, qui contrôle la façon dont le texte change via une variable logique 1(0) (élément de tableau). Lorsque 1(0)=true, la police est agrandie dynamiquement, et lorsque . 1(0)=false Réduit dynamiquement les polices.
3. Mise à l'échelle dynamique des graphiques
Définissez la propriété stretch du contrôle d'image image1 sur true, de sorte que la taille de l'image dans le contrôle change à mesure que la taille du contrôle imagel change. En modifiant régulièrement la taille du contrôle de l'image via le processus de réglage de timer2, l'effet de mise à l'échelle dynamique de l'image est obtenu. L'événement cmd_click déclenché par cmd(1) déclenchera le processus timer2_time, qui contrôle la façon dont l'image change via la variable logique 1(1) Lorsque 1(1)=true, il contrôle l'agrandissement dynamique de l'image. (1)=false, il contrôle la réduction dynamique de l'image.
4. Effet de fondu d'entrée et de sortie du texte
Prenez plusieurs mots de la chaîne comme valeur de légende de l'étiquette Label1. Si le nombre de mots interceptés de la chaîne augmente (jusqu'à ce qu'il soit égal au nombre total de mots dans la chaîne), l'effet de fondu du texte sera obtenu et si ; le nombre de mots interceptés diminue (à partir du nombre de mots dans la chaîne) (le nombre total de caractères dans la chaîne est réduit à 0) et l'effet de fondu du texte est obtenu. Cet effet est obtenu en modifiant régulièrement le nombre de mots interceptés au fil du temps : processus de timer3. Déclenché par cmd(2). L'événement md_click déclenche le processus timer3_time et contrôle la façon dont le texte change via la variable logique 1(2)=true, le texte apparaît en fondu, et lorsque 1(2)=false, le texte disparaît. .
5. L'effet de fondu d'entrée et de sortie des graphiques
Ceci est réalisé en utilisant la fonction BitBlt de l'API Windows pour copier des images. L'utilisation de la fonction BitBlt est la suivante :
La signification de chaque paramètre est la suivante : hDestDC et hSrcDC représentent respectivement le handle de la table de description du périphérique cible et le handle de la table de description du périphérique source. Il s'agit de copier l'image de hSrcDC vers hDestDC. La propriété hDC du contrôle Picturellox est le handle de contexte de périphérique que nous souhaitons utiliser. x, Y représentent la position du coin supérieur gauche de la cible, nWidth, nHeight représentent la largeur et la hauteur de la cible. Autrement dit, où dans la table contextuelle du périphérique cible l'image doit-elle être copiée, et quelle largeur et quelle hauteur doit-elle être copiée. xsrc et ySrc représentent la position du coin supérieur gauche de l'image source, c'est-à-dire l'endroit où commencer la copie. Le paramètre DwRop représente une méthode de dessin et la méthode de copie directe est couramment utilisée. Dans ce cas, SRCCOPY est utilisée.
2. Code de programme pour réaliser une mise à l'échelle dynamique des images et des textes et des effets spéciaux de fondu d'entrée et de sortie.
Le programme ci-dessus a été débogué sous les environnements VB6.0 et Windows98/2000.
->