HEX カラー (または RGB、およびカラーのブレンド) をプログラムで明るくまたは暗くする
問題
目標は、次のことができる関数を作成することです。 16 進カラーを特定の量だけ明るくまたは暗くします。さらに、RGB カラーを処理し、カラーをブレンドしたいとします。
解決策
<code class="javascript">function LightenDarkenColor(col, amt) { col = parseInt(col, 16); return (((col & 0x0000FF) + amt) | ((((col >> 8) & 0x00FF) + amt) > 16) + amt) <h3 id="説明">説明</h3> <p>この関数は、16 進数のカラーを整数に変換し、次の値を追加することによって機能します。または、指定された量を各 RGB チャネルから減算し、その結果を 16 進カラーに変換し直します。</p> <h3 id="機能拡張">機能拡張</h3> <p>関数を拡張するには、エラー処理とさまざまなサポートを追加できます。カラー形式 (RGB、HSL)。 2 番目のカラー パラメータを渡すことで、色をブレンドする機能を追加することもできます。</p> <h3 id="これが改良版です">これが改良版です:</h3> <pre class="brush:php;toolbar:false"><code class="javascript">function pSBC(p, c0, c1, l) { let r, g, b, P, f, t, h, i = parseInt; if (typeof(p) != "number" || p 1 || typeof(c0) != "string" || (c0[0] != 'r' && c0[0] != '#') || (c1 && !a)) return null; if (!this.pSBCr) this.pSBCr = (d) => { let n = d.length, x = {}; if (n > 9) { [r, g, b, a] = d = d.split(","); n = d.length; if (n 4) return null; x.r = i(r[3] == "a" ? r.slice(5): r.slice(4), 16); x.g = i(g); x.b = i(b); x.a = a ? parseFloat(a) : -1; } else { if (n == 8 || n == 6 || n 4 ? d[4] + d[4] : ""); d = i(d.slice(1), 16); if (n == 9 || n == 5) x.r = d >> 24 & 255, x.g = d >> 16 & 255, x.b = d >> 8 & 255, x.a = m((d & 255) / 0.255) /1000; else x.r = d >> 16, x.g = d >> 8 & 255, x.b = d & 255, x.a = -1; } return x; }; h = c0.length > 9; h = a ? c1.length > 9 ? true : c1 == "c"?!h : false : h; f = this.pSBCr(c0); P = p = 0 || t >= 0, a = f ? a <p>この改良版には次の機能が含まれています:</p> <ul> <li> <strong>エラー処理:</strong> この関数は無効な入力をチェックし、入力が無効な場合は null を返します。</li> <li> <strong>さまざまなカラー形式のサポート:</strong> 関数はサポートしています16 進数、RGB、および RGBA カラー形式。</li> <li> <strong>カラー ブレンド:</strong> 2 番目のカラー パラメーターを渡すことで、2 つの色をブレンドできます。</li> <li> <strong>線形または対数ブレンディング:</strong> 4 番目のパラメーターを渡すことで、線形ブレンディングを使用するか対数ブレンディングを使用するかを指定できます。</li> <li> <strong>アルファ チャネルのサポート:</strong> この関数はアルファ チャネルをサポートしており、アルファ チャネルをブレンドできます。色をブレンドするときに一緒にします。</li> </ul></code>
以上がプログラムで HEX カラーを明るくしたり暗くしたり、RGB カラーを処理したり、色をブレンドしたりするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

JavaScriptコアデータ型は、ブラウザとnode.jsで一貫していますが、余分なタイプとは異なる方法で処理されます。 1)グローバルオブジェクトはブラウザのウィンドウであり、node.jsのグローバルです2)バイナリデータの処理に使用されるNode.jsの一意のバッファオブジェクト。 3)パフォーマンスと時間の処理にも違いがあり、環境に従ってコードを調整する必要があります。

javascriptusestwotypesofcomments:シングルライン(//)およびマルチライン(//)

PythonとJavaScriptの主な違いは、タイプシステムとアプリケーションシナリオです。 1。Pythonは、科学的コンピューティングとデータ分析に適した動的タイプを使用します。 2。JavaScriptは弱いタイプを採用し、フロントエンドとフルスタックの開発で広く使用されています。この2つは、非同期プログラミングとパフォーマンスの最適化に独自の利点があり、選択する際にプロジェクトの要件に従って決定する必要があります。

PythonまたはJavaScriptを選択するかどうかは、プロジェクトの種類によって異なります。1)データサイエンスおよび自動化タスクのPythonを選択します。 2)フロントエンドとフルスタック開発のためにJavaScriptを選択します。 Pythonは、データ処理と自動化における強力なライブラリに好まれていますが、JavaScriptはWebインタラクションとフルスタック開発の利点に不可欠です。

PythonとJavaScriptにはそれぞれ独自の利点があり、選択はプロジェクトのニーズと個人的な好みに依存します。 1. Pythonは、データサイエンスやバックエンド開発に適した簡潔な構文を備えた学習が簡単ですが、実行速度が遅くなっています。 2。JavaScriptはフロントエンド開発のいたるところにあり、強力な非同期プログラミング機能を備えています。 node.jsはフルスタックの開発に適していますが、構文は複雑でエラーが発生しやすい場合があります。

javascriptisnotbuiltoncorc;それは、解釈されていることを解釈しました。

JavaScriptは、フロントエンドおよびバックエンド開発に使用できます。フロントエンドは、DOM操作を介してユーザーエクスペリエンスを強化し、バックエンドはnode.jsを介してサーバータスクを処理することを処理します。 1.フロントエンドの例:Webページテキストのコンテンツを変更します。 2。バックエンドの例:node.jsサーバーを作成します。

PythonまたはJavaScriptの選択は、キャリア開発、学習曲線、エコシステムに基づいている必要があります。1)キャリア開発:Pythonはデータサイエンスとバックエンド開発に適していますが、JavaScriptはフロントエンドおよびフルスタック開発に適しています。 2)学習曲線:Python構文は簡潔で初心者に適しています。 JavaScriptの構文は柔軟です。 3)エコシステム:Pythonには豊富な科学コンピューティングライブラリがあり、JavaScriptには強力なフロントエンドフレームワークがあります。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

SublimeText3 中国語版
中国語版、とても使いやすい

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。
