


Comment utiliser JS pour faire pivoter l'aper?u de la photo IOS prise de 90 degrés
Apr 17, 2018 pm 04:43 PMCette fois, je vais vous montrer comment utiliser JS pour faire pivoter l'aper?u de la photo IOS prise de 90 degrés. Quelles sont les précautions pour faire pivoter l'aper?u de la photo IOS prise de 90 degrés. en utilisant JS Ce qui suit est un cas pratique, jetons un coup d'?il.
Pour résoudre ce problème, vous devez introduire une bibliothèque JS tierce?: exif.js Adresse de téléchargement?: https://github.com/exif-js/exif-js Grace à exif.js, nous pouvons obtenir les méta-informations de l'image, qui incluent la direction dans laquelle la photo a été prise.
L'attribut photo direction donné par exif.js est utilisé dans IOS pour obtenir la direction de l'image photographiée via exif.js. La valeur renvoyée est 6, ce qui est le cas du F le plus à gauche dans l'image ci-dessus. . C'est là que réside notre bug. Par conséquent, nous effectuons le traitement correspondant en jugeant la valeur de la direction. Si la valeur est 6, nous effectuons une correction de rotation sur l'image.
Le code spécifique est le suivant :
//獲取圖片方向 function?getPhotoOrientation(img)?{ ???var?orient; ???EXIF.getData(img,?function?()?{ ??????orient?=?EXIF.getTag(this,?'Orientation'); ???}); ???return?orient; }
Ensuite, nous modifions la fonction de compression dans l'article précédent comme suit?:
//圖片壓縮 function?compress(img,?width,?height,?ratio)?{ ???var?canvas,?ctx,?img64,?orient; ???? ???//獲取圖片方向 ???orient?=?getPhotoOrientation(img); ???canvas?=?document.createElement('canvas'); ???canvas.width?=?width; ???canvas.height?=?height; ???ctx?=?canvas.getContext("2d"); ???//如果圖片方向等于6?,則旋轉(zhuǎn)矯正,反之則不做處理 ???if?(orient?==?6)?{ ??????ctx.save(); ??????ctx.translate(width?/?2,?height?/?2); ??????ctx.rotate(90?*?Math.PI?/?180); ??????ctx.drawImage(img,?0?-?height?/?2,?0?-?width?/?2,?height,?width); ??????ctx.restore(); ???}?else?{ ??????ctx.drawImage(img,?0,?0,?width,?height); ???} ???img64?=?canvas.toDataURL("image/jpeg",?ratio); ???return?img64; }
Je pense que vous ma?trisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes. sur le site PHP chinois !
Lecture recommandée?:
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment configurer le démarrage du clavier sur la carte mère de Gigabyte Tout d'abord, s'il doit prendre en charge le démarrage du clavier, il doit s'agir d'un clavier PS2 ! ! Les étapes de configuration sont les suivantes : étape 1 : appuyez sur Suppr ou F2 pour entrer dans le BIOS après le démarrage, et entrez dans le mode avancé (avancé) du BIOS. Les cartes mères ordinaires entrent dans le mode EZ (facile) de la carte mère par défaut. pour appuyer sur F7 pour passer au mode avancé. Les cartes mères de la série ROG entrent dans le BIOS par défaut (nous utilisons le chinois simplifié pour démontrer) étape 2 : Sélectionnez - [Avancé] - [Gestion avancée de l'alimentation (APM)] étape 3 : Recherchez l'option [Réveil par le clavier PS2] étape 4?: Cette option est désactivée par défaut. Après avoir tiré vers le bas, vous pouvez voir trois options de configuration différentes, à savoir appuyer sur [barre d'espace] pour allumer l'ordinateur, appuyer sur groupe.

WebSocket et JavaScript : technologies clés pour réaliser des systèmes de surveillance en temps réel Introduction : Avec le développement rapide de la technologie Internet, les systèmes de surveillance en temps réel ont été largement utilisés dans divers domaines. L'une des technologies clés pour réaliser une surveillance en temps réel est la combinaison de WebSocket et de JavaScript. Cet article présentera l'application de WebSocket et JavaScript dans les systèmes de surveillance en temps réel, donnera des exemples de code et expliquera leurs principes de mise en ?uvre en détail. 1. Technologie WebSocket

Comment utiliser WebSocket et JavaScript pour mettre en ?uvre un système de reconnaissance vocale en ligne Introduction : Avec le développement continu de la technologie, la technologie de reconnaissance vocale est devenue une partie importante du domaine de l'intelligence artificielle. Le système de reconnaissance vocale en ligne basé sur WebSocket et JavaScript présente les caractéristiques d'une faible latence, d'un temps réel et d'une multiplateforme, et est devenu une solution largement utilisée. Cet article explique comment utiliser WebSocket et JavaScript pour implémenter un système de reconnaissance vocale en ligne.

JavaScript et WebSocket : Construire un système efficace de prévisions météorologiques en temps réel Introduction : Aujourd'hui, la précision des prévisions météorologiques revêt une grande importance pour la vie quotidienne et la prise de décision. à mesure que la technologie évolue, nous pouvons fournir des prévisions météorologiques plus précises et plus fiables en obtenant des données météorologiques en temps réel. Dans cet article, nous apprendrons comment utiliser la technologie JavaScript et WebSocket pour créer un système efficace de prévisions météorologiques en temps réel. Cet article démontrera le processus de mise en ?uvre à travers des exemples de code spécifiques. Nous

Tutoriel JavaScript : Comment obtenir le code d'état HTTP, des exemples de code spécifiques sont requis Préface : Dans le développement Web, l'interaction des données avec le serveur est souvent impliquée. Lors de la communication avec le serveur, nous devons souvent obtenir le code d'état HTTP renvoyé pour déterminer si l'opération a réussi et effectuer le traitement correspondant en fonction de différents codes d'état. Cet article vous apprendra comment utiliser JavaScript pour obtenir des codes d'état HTTP et fournira quelques exemples de codes pratiques. Utilisation de XMLHttpRequest

En tant que marque de sport de renommée mondiale, les chaussures Nike ont attiré beaucoup d'attention. Cependant, il existe également un grand nombre de produits contrefaits sur le marché, notamment de fausses bo?tes à chaussures Nike. Distinguer les véritables bo?tes à chaussures des fausses est crucial pour protéger les droits et les intérêts des consommateurs. Cet article vous fournira quelques méthodes simples et efficaces pour vous aider à faire la distinction entre les vraies et les fausses bo?tes à chaussures. 1 : Titre de l'emballage extérieur En observant l'emballage extérieur des bo?tes à chaussures Nike, vous pouvez découvrir de nombreuses différences subtiles. Les véritables bo?tes à chaussures Nike contiennent généralement des matériaux en papier de haute qualité, doux au toucher et sans odeur acre évidente. Les polices et les logos des bo?tes à chaussures authentiques sont généralement clairs et détaillés, et il n'y a pas de flou ni d'incohérence de couleur. 2?:?titre de marquage à chaud du logo. Le logo sur les bo?tes à chaussures Nike est généralement imprimé à chaud. La partie de marquage à chaud sur la bo?te à chaussures authentique s'affichera.

Comment convertir le port réseau 100 M d'un ordinateur en port réseau Gigabit Pour mettre à niveau le port réseau 100 M d'un ordinateur en port réseau Gigabit, vous devez généralement suivre les étapes suivantes : 1. Confirmez si la carte réseau prend en charge la vitesse réseau Gigabit : Tout d'abord, vous devez confirmer que l'ordinateur si la carte réseau prend en charge Gigabit Ethernet, sinon, il ne sera pas possible d'accélérer le port réseau 100M vers Gigabit. 2. Remplacez le cable réseau : pour atteindre une vitesse de réseau Gigabit, vous devez utiliser un cable réseau Cat5e ou de spécification supérieure, car le cable réseau Cat5e peut prendre en charge Gigabit Ethernet, et pour Ethernet 100 Mbits, il vous suffit d'utiliser un cable réseau Cat5. 3. Modifiez le pilote de la carte réseau : Si votre carte réseau prend en charge Gigabit Ethernet, vous devez mettre à jour le pilote de la carte réseau. Vous pouvez vous rendre sur le site officiel du fabricant de la carte réseau pour télécharger et installer la dernière version.

Introduction à la méthode d'obtention du code d'état HTTP en JavaScript : Dans le développement front-end, nous devons souvent gérer l'interaction avec l'interface back-end, et le code d'état HTTP en est une partie très importante. Comprendre et obtenir les codes d'état HTTP nous aide à mieux gérer les données renvoyées par l'interface. Cet article explique comment utiliser JavaScript pour obtenir des codes d'état HTTP et fournit des exemples de code spécifiques. 1. Qu'est-ce que le code d'état HTTP ? Le code d'état HTTP signifie que lorsque le navigateur lance une requête au serveur, le service
