Photoshop Part16at SOFTWAREPhotoshop Part16 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト305:名無しさん@お腹いっぱい。 10/12/22 02:51:02 hMI8OPvI0 PSDファイルのバイナリデータをいじって 透明度の保護のロックを外すプログラムを作りたいのですが アドヴァイスお願いします 今のところ以下サイトをみて ttp://d.hatena.ne.jp/hiroki0/20090802/1249208355 ttp://www.shiojiri.ne.jp/~openspc/format/Photoshop/index.html 上から順にデータを読みこみ、なんとか Layer and Mask Information Block, Image Dataの [1byte] name_lengthとその次のレイヤー名までは 読みこめたのですが その先が何が何バイトあるのかわかりません。 まだ、透明度の保護のロックを外せそうなデータも見当たらないため 途方に暮れています。 その先の何が何バイトあるのか教えて下さい。 306:名無しさん@お腹いっぱい。 10/12/22 07:43:02 wv7ZoG8I0 バッチじゃダメな理由が知りたい。 307:名無しさん@お腹いっぱい。 10/12/22 08:27:35 hMI8OPvI0 >>306 バッチってなんのことですか?? 308:名無しさん@お腹いっぱい。 10/12/22 10:27:59 pfvYlDra0 >>305 レイヤー1個のPSDファイルを作成してそれを見た限りで言うと、 | | [4byte] Blend Mode Signature "8BIM" | | [4byte] Blend Mode Key [char]x4 *後述 | | [1byte] Opacity 0-255 | | [1byte] Clipping 0のときbase 1のときnon-base | | [1byte] LayerFlags レイヤー情報フラグ まずここのLayerFlagsの1bit目が[1]のときロックで、[0]のときロック解除。 どの項目をロックするのかが次の項目。 | 以下Name | | [1byte] name_length | | ・・・ | | [時々ここに2byteのpaddingが入る。] | 以下Layer Resources | | [4byte] Signature "8BIM" | | [4byte] tag | | ・・・ ここの、Signature "8BIM" + tag が、"8BIMlspf"の名前で、名前から8バイトの値、つまり | | [4byte] Signature "8BIM" | | [4byte] tag "lspf" | | [8byte] [00 00 00 04 xx 00 00 yy] となっているときの 8byte目[yy]の値が、[00] 通常 [01] 透明ピクセルロック [02] 画像ピクセルロック [04] 位置をロック (ビットの加算) → [05]なら透明と位置をロック 4byte目[xx]の値が、[00] 通常 [80] すべてをロック (ビットの加算) みたいな感じになっていますね。間違っていたらごめんなさい。長文ごめんなさい。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch