1

いくつかのソフトウェアによって提供されたXMLファイルを解析しています。解析の一部は、いくつかの属性から色を抽出することです。私が抱えている問題は、色が12桁の16進値であるということです。すなわち、

<Text AdornmentStyle="0" Background="#FFFFFFFFFFFF" Color="#DD6B08C206A2" Font="Courier Final Draft" RevisionID="0" Size="12" Style="">Test</Text>

ご覧のとおり、色は12桁の長さです。HTMLで正しく表示できるように、6桁の色を取得する必要があります。

誰かがこれに遭遇したことがありますか?

あなたがアドバイスできることを願っています。

4

1 に答える 1

4

これまでに12桁の16進カラー文字列を見たことがありません。チャネルごとに2バイトを使用する必要があります。つまり、変換すると、情報が少し失われます。

色はこの形式だと思います#RRRRGGGGBBBBので、4 hexgitsごとに(16 ^ 4/16 ^ 2)= 256で割り、必要に応じて丸めます。それはそれをする必要があります。

...それでも適切な色が得られない場合は、サイファーが提案するようにCMYKを試してください:(#CCCMMMYYYKKKチャネルあたり12ビット)。

たとえば、変換するにDD6B08C206A2は:

0xDD6B / 0x100 = 0xDD
0x08C2 / 0x100 = 0x08
0x06A2 / 0x100 = 0x06

それらを元に戻すと、が得られます#DD0806

于 2012-06-16T19:34:13.493 に答える