-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathmanual.html
1330 lines (1234 loc) · 83.5 KB
/
manual.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<!DOCTYPE html>
<html lang="ja">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>PSDTool Reference Manual</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u"
crossorigin="anonymous">
<link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Roboto+Condensed:700'>
<link href="css/main.css" rel="stylesheet">
<body>
<div id="manual" class="container">
<h1>
PSDTool Reference Manual
<small>取扱説明書</small>
</h1>
<ol>
<li>
<a href="#about">PSDTool とは?</a>
<ol>
<li><a href="#about-movie">PSDTool 紹介動画</a></li>
</ol>
</li>
<li><a href="#env">動作環境</a></li>
<li>
<a href="#feature">機能の説明</a>
<ol>
<li><a href="#feature-options">ファイルを開く前のオプション</a></li>
<li><a href="#feature-mainview">メイン画面</a></li>
<li><a href="#feature-layer-tree">レイヤーツリー画面 / シンプルビュー画面</a></li>
<li><a href="#feature-favview">お気に入り編集画面</a></li>
<li><a href="#feature-filter">フィルター編集画面</a></li>
<li><a href="#feature-faview">シンプルビュー</a></li>
</ol>
</li>
<li>
<a href="#supported-filetype">読み込める PSD ファイル</a>
<ol>
<li><a href="#supported-filetype-zip">ZIP ファイルの読み込み</a></li>
<li><a href="#supported-filetype-direct">ダイレクト読み込み</a></li>
</ol>
</li>
<li>
<a href="#original-feature">独自拡張機能</a>
<ol>
<li><a href="#original-feature-asterisk">ラジオボタン化「*」</a></li>
<li><a href="#original-feature-exclamation">強制表示化「!」</a></li>
<li><a href="#original-feature-flip">反転表示用レイヤー「:flipx」「:flipy」「:flipxy」</a></li>
</ol>
</li>
<li><a href="#pfv-spec">PFV ファイルについて</a></li>
<li>
<a href="#faq">よくある質問</a>
<ol>
<li><a href="#faq-zip-mojibake">ZIP ファイルを解凍したら、ファイル名が文字化けしている</a></li>
<li><a href="#faq-layer-check">レイヤーのチェックが外せない / レイヤーの変なところがラジオボタンになっている</a></li>
</ol>
</li>
<li><a href="#privacy">プライバシーポリシー</a></li>
<li><a href="#changes">変更履歴</a></li>
<li><a href="#credits">クレジット</a></li>
</ol>
<h2 id="about">PSDTool とは?</h2>
<p><img src="img/about.png" width="346" height="265" class=" psdtool-thumb" alt="PSDTool のスクリーンショット"></p>
<p>
PSDTool は Photoshop 形式(*.psd または *.psb) のファイルをブラウザで読み込んでレイヤーの表示/非表示を切り替えたり、合成された画像に名前を付けて保存したりできるツールです。
<br><strong>読み込む PSD ファイルはサーバーには一切送信されず完全にブラウザだけで処理される</strong>ため、プライベートな用途にも使用できます。
</p>
<p>
このツールは「イラストを描く人がレイヤーの表示/非表示を切り替えた様々なパターンを PNG で書き出したものを配布する」といった時間の浪費と手間を減らすために、 また配布されているイラストを利用したい人がソフトウェアを何も用意しなくても最新のブラウザさえあれば PSD ファイルを扱えるようにすることを目的に作りました。
</p>
<p>
Photoshop 形式は sai、CLIP STUDIO PAINT、openCanvas、Krita、メディバンペイント、FireAlpaca など様々なペイントソフトで保存可能な共通の保存フォーマットです。
<br>これを機に、是非 Photoshop 形式での配布を検討してみてください。
</p>
<h3 id="about-movie">PSDTool 紹介用動画</h3>
<p>PSDTool の使い方を紹介する動画があります。</p>
<p>
<a target="_blank" href="http://www.nicovideo.jp/watch/sm28712861">
<img src="img/movie-thumb.jpg" width="130" height="100" class="psdtool-thumb" alt=""> 立ち絵支援ツール PSDTool の使い方
</a>
</p>
<h2 id="env">動作環境</h2>
<p>
Microsoft Edge / Google Chrome / Mozilla Firefox 上でブラウザ画面サイズ 1024x600 以上を基準に動作確認しています。
<br>Mac を持っていないので Apple Safari ではテストしていません。
</p>
<p>
ブラウザは常に最新版をお使いください。
</p>
<h3>Chrome で絵が出なくなったりする場合</h3>
<p>
chrome://flags/ をブラウザで開いて「アクセラレーションによる 2D キャンバス表示」を無効にしてみてください。
<br> この設定によって症状が改善される場合があります。
</p>
<h2 id="feature">機能の説明</h2>
<ol>
<li><a href="#feature-options">ファイルを開く前のオプション</a></li>
<li><a href="#feature-mainview">メイン画面</a></li>
<li><a href="#feature-layer-tree">レイヤーツリー画面 / シンプルビュー画面</a></li>
<li><a href="#feature-favview">お気に入り編集画面</a></li>
<li><a href="#feature-filter">フィルター編集画面</a></li>
</ol>
<h3 id="feature-options">ファイルを開く前のオプション</h3>
<p>ファイルを開く際に、いくつかのオプションが設定可能です。</p>
<dl>
<dt>自動トリミング</dt>
<dd>
<p>
自動トリミングを有効にすると PSD ファイルに存在する全てのレイヤーを表示したとしても使われることがない、完全な余白のみを削ります。
<br>ある瞬間に表示している内容でトリミングするわけではないので、「ウサギの耳」「翼」のように一部または全部の方向へ突出するようなレイヤーが存在する場合、その分の余白は常に確保されます。
</p>
<p><img src="img/trim-sample.png" width="400" height="340" class="psdtool-thumb" alt="自動トリミングの使用サンプル"></p>
<p>
上記サンプルでは、自動トリミングありの場合は左右はギリギリまでカットされ、上部は「左向き用・主線」レイヤーを表示するための余白が数ピクセルだけ残っています。
</p>
<p>
なお縮小する場合、縮小後のサイズを例えば 320px としても上記サンプルのように余白の有無によって画像の縮小率が変わってきます。 余白を上手く使って複数の PSD ファイル間で同程度のサイズ感になるよう整えられている場合などもあるため、自動トリミングの使用には注意が必要です。
</p>
</dd>
<dt>独自拡張機能を無効化</dt>
<dd>
<p>
独自拡張機能を無効化は PSDTool での使用を想定していない PSD ファイルを読む際に使う機能で、<a href="#original-feature">PSDTool が持つ独自拡張機能</a> が認識されないようにします。 レイヤー名が独自拡張機能と衝突してしまい、レイヤー表示切替のチェックボックスがラジオボタンになったり消えてしまっている場合に有用です。
</p>
</dd>
</dl>
<h3 id="feature-mainview">メイン画面</h3>
<p>ファイルを開くと画面には以下の様なインターフェイスが現れます。</p>
<p><img src="img/head.png" width="769" height="180" class="psdtool-thumb" alt="PSDTool の画面上部にあるインターフェイスのスクリーンショット"></p>
<dl>
<dt>1. タブ</dt>
<dd>
<p><a href="#feature-layer-tree">レイヤーツリー画面</a>と<a href="#feature-favview">お気に入り編集画面</a>を切り替えるためのタブです。</p>
</dd>
<dt>2. レイヤーツリー</dt>
<dd>
<p>
タブで「レイヤー」が選ばれている時は<a href="#feature-layer-tree">レイヤーツリー画面 / シンプルビュー画面</a>、「お気に入り」が選ばれている時は<a href="#feature-favview">お気に入り編集画面</a>が表示されます。
</p>
</dd>
<dt>3. 反転</dt>
<dd>
<p>
⇄ を押すと左右、⇅ を押すと上下に画像を反転します。文字やアクセサリー、髪型や服の装飾などのように、反転すると問題がある場合もあるため使用には注意が必要ですが、<a href="#original-feature-flip">PSD ファイル側で独自拡張機能</a>を使って対策されている場合は正しく表示される場合もあります。
</p>
</dd>
<dt>4. 縮小</dt>
<dd>
<p>
読み込んだ画像が大きすぎる場合、ここで保存前に縮小することができます。 縦か横のどちらかの最大ピクセル数を指定すると、その大きさを超えないように必要に応じて縮小されます。この設定によって元のサイズより画像が拡大されることはありません。
</p>
</dd>
<dt>5. PNG で保存</dt>
<dd>
<p>
画像を通し番号付きで保存するための機能です。 スクリーンショットのように入力欄がそれぞれ「im5467479_」「0」の状態で「.png」ボタンを押すと「im5467479_0000.png」というファイル名で保存され、そのまま同じボタンを押す度に数字が足されていきます。
</p>
<p>
数字の入力欄を空欄にすることで、通し番号が付かない、ただの画像保存ボタンとしても利用可能です。
</p>
</dd>
<dt>6. 合成結果プレビュー / お気に入りプレビュー</dt>
<dd>
<p>
合成結果プレビューには現在のレイヤー選択状態が表示されます。
</p>
<p>
また、お気に入りを選択した時は一時的にお気に入りの内容を表示するお気に入りプレビューに変化します。 お気に入りプレビューモードはレイヤータブに切り替えたりすることで解除されます。
</p>
</dd>
</dl>
<h3 id="feature-layer-tree">レイヤーツリー画面 / シンプルビュー画面</h3>
<p>
タブで「レイヤー」を選ぶとレイヤー表示構成の切り替えができるレイヤーツリー画面またはシンプルビュー画面が表示されます。
<br>シンプルビュー画面を使うためには<a href="#feature-faview">お気に入りを適切に組み立てる</a>必要があり、使用できない状態の時は「シンプルビューに切り替え」ボタンも表示されません。
</p>
<p><img src="img/layertree.png" width="512" height="420" class="psdtool-thumb" alt="レイヤーツリー画面のスクリーンショット"></p>
<p>
レイヤーツリー画面ではチェックボックスやラジオボタンの切り替えで、シンプルビュー画面ではセレクトボックスやスライダーによる切り替えによって、画像のレイヤー表示構成を変更することができます。
</p>
<p>
また、Ctrl(Command) キーを押しながらチェックボックスをクリックすると、同じ階層にある他のレイヤーのチェックをすべて外すことができます。
</p>
<h3 id="feature-favview">お気に入り編集画面</h3>
<p>タブで「お気に入り」を選ぶとレイヤー表示構成の保存や読み込みができるお気に入り編集画面が表示されます。</p>
<p><img src="img/fav.png" width="350" height="263" class="psdtool-thumb" alt="お気に入り編集画面のスクリーンショット"></p>
<p>作成したお気に入りはシングルクリックでプレビュー、ダブルクリックでレイヤー一覧に読み込むことができます。その他、Shift や Ctrl(Command) を押しながらクリックで複数選択や、ドラッグで項目の入れ替え、Ctrl(Command) を押しながらドラッグでコピーなどもできます。</p>
<dl>
<dt><span class="glyphicon glyphicon-star"></span> 現在のレイヤー表示をお気に入りに追加(Ctrl + B / Command + B)</dt>
<dd>
<p>
現在レイヤータブで選択している構成をお気に入りに追加します。
</p>
<p>
ショートカットキーを使用するとレイヤータブを表示していてもお気に入りに追加することができます。
</p>
</dd>
<dt><span class="glyphicon glyphicon-folder-open"></span> 新規フォルダー(Ctrl + D / Command + D)</dt>
<dd>
<p>
項目の整理に利用可能なフォルダーを追加します。
</p>
</dd>
<dt><span class="glyphicon glyphicon-pencil"></span> 名前の変更(F2)</dt>
<dd>
<p>
項目の名前を変更します。
</p>
</dd>
<dt><span class="glyphicon glyphicon-remove"></span> 削除</dt>
<dd>
<p>
項目を削除します。削除の際には確認ダイアログはなく、元に戻す手段も用意されていないので気をつけて使用する必要があります。
</p>
</dd>
<dt><span class="glyphicon glyphicon-menu-hamburger"></span> → <span class="glyphicon glyphicon-folder-open"></span> 一括フォルダー作成</dt>
<dd>
<p>
複数のフォルダーを一気に作成するための機能です。フォルダー名を改行で区切って入力することで、効率的に複数のフォルダーを作成することができます。
</p>
</dd>
<dt><span class="glyphicon glyphicon-menu-hamburger"></span> → <span class="glyphicon glyphicon-pencil"></span> 一括名前変更</dt>
<dd>
<p>
お気に入りの項目の名前を効率的に変更するための機能です。変更したい項目が複数ある場合、こちらを使うことで作業効率が改善されるかもしれません。
</p>
<p>
入力欄を空欄にして名前の変更をすると自動的に連続した番号で埋めていく機能もあり、ダイアログの下に桁数や開始番号を指定する設定項目があります。
</p>
</dd>
<dt><span class="glyphicon glyphicon-menu-hamburger"></span> → <span class="glyphicon glyphicon-th-list"></span> シンプルビュー設定</dt>
<dd>
<p>
<a href="#feature-faview">シンプルビュー</a>に関する設定項目があるダイアログが表示されます。
</p>
<dl>
<dt>シンプルビューが使えるお気に入りデータを読み込んだ時の動作</dt>
<dd>
<p>
お気に入りを読み込んだ時に、シンプルビューが使える場合に振る舞いを変えることができます。
</p>
</dd>
</dl>
</dd>
<dt><span class="glyphicon glyphicon-menu-hamburger"></span> → <span class="glyphicon glyphicon-open-file"></span> インポート</dt>
<dd>
<p>
選ぶとダイアログが表示されます。
</p>
<dl>
<dt>PFV ファイルをインポート</dt>
<dd>
<p>
選択された PFV ファイルを読み込みます。
</p>
<p>
このダイアログを開かなくても、PSD ファイルを開く際に PFV ファイルも一緒にドラッグ&ドロップしたり、お気に入りタブ内のお気に入りツリーに PFV ファイルをドラッグ&ドロップすることで読み込むこともできます。できますが、マニュアルを読まない人は恐らく PFV ファイルを開くためにインポート内を探しに来ると思ったので、ここにも用意してある、というわけなんですよ。
</p>
</dd>
<dt>最近使ったお気に入りからインポート</dt>
<dd>
<p>
ブラウザに自動保存されたお気に入りからインポートします。手動でインポートしなくても PSD ファイルを読み込んだ時に、読むべき PFV ファイルが特になければこの中からひとつ自動的に読み込まれます。
</p>
<p>
青い項目は同じ画像から作成されたお気に入りで、読み込んで利用できることが期待できます。
<br>白い項目は読み込んでも画像のレイヤー構造の違いにより利用できない可能性もありますが、PFV ファイルにエクスポートし直すことはできます。
</p>
<p>
ここに現れるデータはブラウザのデータ削除などにより意図しないタイミングで読めなくなる可能性があるため、重要なデータは別途保存しておくことを推奨します。
</p>
</dd>
</dl>
</dd>
<dt><span class="glyphicon glyphicon-menu-hamburger"></span> → <span class="glyphicon glyphicon-save-file"></span> エクスポート</dt>
<dd>
<p>
選ぶとダイアログが表示されます。
</p>
<dl>
<dt>PFV ファイルをエクスポート</dt>
<dd>
<p>
お気に入りの情報を PFV(Psdtool FaVorites) ファイルに書き出します。
</p>
<p>
書き出した PFV ファイルはあとで自分でインポートして使用したり、PFV ファイルを配布して他人に利用してもらうこともできます。
</p>
<p>
また PFV ファイルは UTF-8 のテキストファイルなので、テキストエディタで開いて直接編集することもできます。
</p>
<p>
PSD ファイル / PFV ファイル / テキストファイルの3つを ZIP ファイルに入れておき、解凍せずに直接 PSDTool で開くと全てを読み込むことができます。
<br>この仕組みにより、ZIP ファイルを PSDTool で読み込むだけでおすすめのレイヤー表示構成を最初からお気に入りに読み込んだ状態にもできます。
</p>
</dd>
<dt>画像を ZIP ファイルでエクスポート</dt>
<dd>
<p>
お気に入りのすべての項目を PNG ファイルで ZIP ファイルに書き出すことができます。 書き出す際には現在の反転や縮小の設定が適用されます。
</p>
<p>
ZIP ファイルには PFV ファイルも一緒に書き出されており、これを読み込むことで左右反転や縮小率を変えて書き出し直したり、お気に入りに更に項目を追加したい場合などにも利用できます。
</p>
<p>
もし ZIP ファイルで書き出し可能な容量やファイル数を超過する場合は、自動的に ZIP64 フォーマットで書き出されます。
</p>
<p>なお、この項目は右端の ▼ をクリックすることで更に詳細な書き出しオプションを選ぶことができます。</p>
<dl>
<dt>フィルタリングされた項目は残ったパーツのみを出力</dt>
<dd>
通常のエクスポートではフィルタリングされたお気に入りは「お気に入りプレビュー」で表示される内容と同じもの(つまり「レイヤータブの選択状態」+「フィルタリングされたお気に入りの内容」)を出力しますが、こちらからエクスポートした場合は「フィルタリングされたお気に入りの内容」のみを出力します。
<br>そのため、例えば目のパーツ以外をフィルタリングしているお気に入りは目のパーツのみが画像として出力されます。
</dd>
</dl>
</dd>
<dt>シンプルビューの全パターンを ZIP ファイルでエクスポート</dt>
<dd>
<p>
シンプルビューの組み合わせで表現可能な全ての構成を PNG ファイルで ZIP ファイルに書き出すことができます。書き出す際には現在の反転や縮小の設定が適用されます。
</p>
<p>
ただし、「目」を変えるためのセレクトボックスが複数ある場合のように、全てのスライダーが同じ位置にあっても最後に触った項目によって結果が異なるような構成は正しく出力されません。
</p>
<p>
もし ZIP ファイルで書き出し可能な容量やファイル数を超過する場合は、自動的に ZIP64 フォーマットで書き出されます。
</p>
<p>このボタンを押す場合はサブメニューから書き出し構造を選択する必要があります。</p>
<dl>
<dt>パーツ名あり / 入れ子</dt>
<dd>
例: <samp>キャラ名\眉-困り\目-にっこり\口-笑い.png</samp>
</dd>
<dt>パーツ名あり / フラット</dt>
<dd>
例: <samp>キャラ名_眉-困り_目-にっこり_口-笑い.png</samp>
</dd>
<dt>パーツ名なし / 入れ子</dt>
<dd>
例: <samp>キャラ名\困り\にっこり\笑い.png</samp>
</dd>
<dt>パーツ名なし / フラット</dt>
<dd>
例: <samp>キャラ名_困り_にっこり_笑い.png</samp>
</dd>
<dt>Tiled Map Editor 用にエクスポート...</dt>
<dd>
<p>シンプルビューで表現できる画像データを <a href="http://www.mapeditor.org/" target="_blank">Tiled Map Editor</a> 用フォーマットでエクスポートするための設定ダイアログを新たに開きます。</p>
<p>
通常の「シンプルビューの全パターンを ZIP ファイルでエクスポート」でエクスポートした場合に 1GB を超えるようなケースでも、この方式で出力すると数十MB程度にまで容量を縮めることができることがあります。<br>ただしこの出力方式は 16x16 のタイルチップが集められた PNG ファイルとタイルデータ定義ファイルの組み合わせで出力されるため、一般的な用途に使いやすい形式ではなく、Tiled Map Editor で読み込んだり、ゲーム開発用フレームワークなどで読み込むような用途に向いています。
</p>
<p>
JavaScript + HTML の形式で出力した場合には簡易的なシンプルビューとして使える HTML ファイルが付属しています。<br>zip ファイルをそのまま配布することで PSD ファイルを公開しないままで表現可能な組み合わせを確認できるようにしたり、 zip ファイルの中身を解凍して Web にアップロードしてオンラインで使えるようにしたり、ちょっとした用途に使うことができます。
</p>
</dd>
</dl>
</dd>
<dt>レイヤー構造をテキストファイルでエクスポート</dt>
<dd>
<p>
PSD ファイルのレイヤー構造をタブで整形された文字コード UTF-8 改行コード '\n' のテキストファイルとして、概ね以下の様な形で出力します。
</p>
<pre>!眉
*(`・ω・´)
*(´・ω・`)
*普通
!くち
*あー!
*ふぇー
*ムー
*ワ
!目
*つぶり
*ぐるぐる
*にっこり
*通常
!下地
*左向き用・主線
*右向き用・主線</pre>
<p>
レイヤー名をテキストでコピーしたい場合など、レアケースで役に立ちます。
</p>
</dd>
</dl>
</dd>
<dt id="generate-items-from-group">グループからお気に入りを自動生成(Shift + Ctrl + G / Shift + Command + G)</dt>
<dd>
<p>
これはレイヤー一覧でラジオボタンやチェックボックスをクリックした後にショートカットキーを押すことで使用可能な機能です。現在フォーカスがある項目の階層をグループとして、それぞれを単独で選択した全てのパターンでお気に入りを自動生成します。
</p>
</dd>
<dt id="generate-items-from-group-folder">グループからフィルター適用済みフォルダーを自動生成(Shift + Ctrl + Alt + G / Shift + Command + Option + G)</dt>
<dd>
<p>
「グループからお気に入りを自動生成」とほとんど同じですが、生成した項目を入れるためのフィルター付きフォルダーも自動生成します。
</p>
</dd>
</dl>
<h3 id="feature-filter">フィルター編集画面</h3>
<p><img src="img/filter.png" width="620" height="320" class="psdtool-thumb" alt="フィルター編集画面のスクリーンショット"></p>
<p>お気に入りで作成したフォルダーをダブルクリックすると、フィルター設定画面が現れます。</p>
<p>フィルター機能を有効にすると、お気に入りを読み込む際に現在のレイヤー表示に対しお気に入りを一部にだけ適用することができるようになります。</p>
<p>フィルター機能が有効になっているフォルダーはアイコンが <span class="glyphicon glyphicon-folder-open"></span> から <span class="glyphicon glyphicon-filter"></span> に変わり、そのフォルダー以下にあるお気に入りはチェックが入っているレイヤーの項目だけを読み込むように変わります。</p>
<h4>使用例</h4>
<p>
<iframe width="853" height="480" class="embed-responsive-item" src="https://www.youtube-nocookie.com/embed/-L_IzlyGxNM?rel=0&showinfo=0" frameborder="0" allowfullscreen></iframe>
</p>
<p>
上記の例では元々は眉、目、口がそれぞれ異なるお気に入りが、フィルターを指定することにより口だけの変化に変わる様子を示しています。
<br>また、口以外は元々の状態を維持しようとするため、レイヤー一覧で他のパーツを変更すればその状態から口だけを変更をすることができます。
</p>
<p>この例の場合は直接口レイヤーを切り替えることと本質的な違いがありませんが、例えば複数のパーツの切り替えが必要な服装や、口だけではなく表情全体など大きな単位でフィルターを有効にすると、現在の服装やポーズを維持したまま表情だけをお気に入りから読み込むような使い方ができます。</p>
<h3 id="feature-faview">シンプルビュー</h3>
<p>
シンプルビューは<a href="#feature-layer-tree">レイヤーツリー</a>でチェックボックスやラジオボタンを操作する代わりに、セレクトボックスやスライダーから項目を選んで組み合わせられる画面です。シンプルビューを有効化するためには、<a href="#feature-favview">お気に入り</a>にシンプルビュー用の項目を作成する必要があります。
</p>
<h4>シンプルビューを有効化する方法</h4>
<p><img src="img/faview.png" width="820" height="600" class="psdtool-thumb" alt="シンプルビューを有効化する方法の解説"></p>
<dl>
<dt>1. シンプルビューの起点となる親のフォルダーの名前の先頭に「*」半角アスタリスクをつける</dt>
<dd>
<p>このフォルダーの中がシンプルビュー表示用であることを指定します。</p>
</dd>
<dt>2. <a href="#feature-filter">フィルター機能</a>を使ってパーツ単位でお気に入りをまとめる</dt>
<dd>
<p>
フォルダーを作り、その中にパーツを切り替えたお気に入りを一つ以上作成して、そのフォルダーでフィルター機能を有効化します。フィルター機能を有効化していない場合、シンプルビューの選択肢として現れません。
</p>
<p>
お気に入りの登録順はそのまま選択項目の順番として使用されます。また、選択項目内で一番上にある項目は一番最初にシンプルビューを開いた時のデフォルト項目として使用されます。
</p>
<p>
必要であればフォルダーはもっと階層を深くすることもできますが、深くなると利用する時の手間が増える可能性もあります。
</p>
</dd>
<dt>3. レイヤータブに画面を切り替える</dt>
<dd>
<p>
1 の手順が完了した時点で、レイヤータブに切り替えると「シンプルビューに切り替え」のボタンが表示されるようになります。
<br>2 の手順が完了していれば、作成した項目がシンプルビューでの選択項目として現れるようになります。
<br>なお、お気に入りを1つしか入れていないフォルダーがある場合、その項目はシンプルビュー上で変更できないためグレーアウト状態で表示されます。
</p>
</dd>
</dl>
<p><img src="img/faview-active.png" width="226" height="518" class="psdtool-thumb" alt="シンプルビューを有効化した時のスクリーンショット"></p>
<p>これが上記サンプルで作成したお気に入りのシンプルビュー表示例です。それぞれの各項目の一番上にあったものがデフォルトの表示項目として表示され、「体」に関してはお気に入りがひとつしか登録されていないためグレーアウトされています。</p>
<p>お気に入り内にシンプルビュー用の親フォルダーが複数ある場合、一番上の選択項目で選んで切り替えることができるようになります。</p>
<h4>使用例</h4>
<p>
<iframe width="853" height="480" class="embed-responsive-item" src="https://www.youtube-nocookie.com/embed/F1qPRdpZHd4?rel=0&showinfo=0" frameborder="0" allowfullscreen></iframe>
</p>
<p>実際にシンプルビュー用のお気に入りデータを作成する例です。</p>
<h2 id="supported-filetype">読み込める PSD ファイル</h2>
<p>PSDTool は「最大公約数的な PSD ファイル読み込みツール」というのを目標に開発しているため、Photoshop 以外のソフトでも頻繁に使われるであろう機能を優先的に実装しています。</p>
<ul>
<li>PSB ファイルにも対応しています。</li>
<li>カラーモードは「RGB カラー(8bit/チャンネル)」にのみ対応しています。</li>
<li>グループレイヤー(フォルダーレイヤー)に対応しています。</li>
<li>クリッピングマスク、レイヤーマスクに対応しています。</li>
<li>
レイヤーの合成モードは以下のものに対応しています。
<ul>
<li>通過(グループレイヤーのみ)</li>
<li>通常</li>
<li>比較(暗)</li>
<li>乗算</li>
<li>焼き込みカラー</li>
<li>焼き込み(リニア)</li>
<li>カラー比較(暗)</li>
<li>比較(明)</li>
<li>スクリーン</li>
<li>覆い焼きカラー</li>
<li>覆い焼き(リニア)</li>
<li>カラー比較(明)</li>
<li>オーバーレイ</li>
<li>ソフトライト</li>
<li>ハードライト</li>
<li>ビビッドライト</li>
<li>リニアライト</li>
<li>ピンライト</li>
<li>ハードミックス</li>
<li>差の絶対値</li>
<li>除外</li>
<li>減算</li>
<li>除算</li>
<li>色相</li>
<li>彩度</li>
<li>カラー</li>
<li>輝度</li>
</ul>
</li>
<li>テキストレイヤー、調整レイヤー、シェイプレイヤーなどには対応していません。</li>
</ul>
<h3 id="supported-filetype-zip">ZIP ファイルの読み込み</h3>
<p>
ZIP ファイルに格納されている PSD ファイルは、ファイルを取り出さずにそのまま開くことができます。
</p>
<ul>
<li>複数の PSD ファイルが ZIP ファイル内に存在する場合、最初に見つかったものが読み込まれます。</li>
<li>
PFV ファイルが ZIP ファイル内に存在する場合、自動的にお気に入りに読み込まれます。
<br>ただし、その PFV ファイルより更新日時が新しいお気に入りデータがブラウザに保存されているときは、ブラウザのものが優先されます。
</li>
<li>
テキストファイルが ZIP ファイル内に存在する場合、レイヤー一覧の一番上にテキストファイル表示用のボタンが現れます。
<br><a href="#feature-faview">シンプルビュー</a>が使えるお気に入りデータが一緒に読み込まれている場合はテキストを自動的に表示することもできます。
</li>
</ul>
<h3 id="supported-filetype-direct">ダイレクト読み込み</h3>
<p>
以下に示す条件のいずれかを満たすことで、PSDTool はあなたのサイトにあるファイルを読むことができます。
<br>あなたのサイトに配置された配布用の ZIP ファイルをこの仕組みで直接開くこともできます。
</p>
<ul>
<li>
読み込むファイルを置くサーバと同じドメイン上に HTML ファイルを設置し、その HTML をブラウザで表示可能なこと。
<ul>
<li>これは自作の HTML ファイルが設置できるサービスの多くで使用可能な、簡単な導入方法です。</li>
<li>以下の手順に従いアップロードした HTML ファイルをブラウザで開くと、ダイレクト読み込みで使用可能なリンクが表示されます。</li>
<ol>
<li><a href="remote.html" download="remote.html">HTML ファイル をダウンロード(右クリック保存)</a></li>
<li>HTML ファイルをテキストエディタで開き、設定を記入</li>
<li>読み込むファイルと同じサーバにアップロード</li>
</ol>
</ul>
</li>
<li>
読みたいファイルの HTTP レスポンスのヘッダで Access-Control-Allow-Origin の値に「https://oov.github.io」「http://oov.github.io」「*」などが含まれていること。
<ul>
<li>これは主にレンタルサーバーで .htaccess や PHP などのスクリプトを使える環境の場合などに使用可能な方法です。</li>
<li>設定方法については「Access-Control-Allow-Origin htaccess」などで検索してください。</li>
<li>
適切に設置できている場合 "https://oov.github.io/psdtool/#load:" + encodeURIComponent(設置URL) のアドレスで読み込むことができます。
<br>読み込みたいファイルの配置場所が https ではなく http の場合、PSDTool の URL も http にする必要があります。
</li>
</ul>
</li>
</ul>
<h2 id="original-feature">独自拡張機能</h2>
<p>
PSD ファイルを作る際にレイヤー名に特定の記号を付けることで、レイヤーの表示/非表示の使い勝手を改善することができます。
<br>これらの機能を使用しても画像編集ソフトで開く際には今まで通り使用でき、編集が不便になることはありません。
<br>また、PSDTool で読み込む場合でも<a href="#feature-options">オプションから独自拡張機能を無効化</a>することで、一般的なソフトと同じ状態で読み込むこともできます。
</p>
<h3 id="original-feature-asterisk">ラジオボタン化「*」</h3>
<p><img src="img/asterisk.png" width="620" height="239" class="psdtool-thumb" alt="ラジオボタン化の使用例"></p>
<p>
<strong>レイヤー名の先頭に半角のアスタリスク「*」をつける</strong>と、選択項目がチェックボックスではなくラジオボタンになります。
<br>ラジオボタンは親のグループレイヤー(画像例では「口」)に所属するようになります。
</p>
<ul>
<li>グループ内でひとつのみ選択できるため、二種類の表情が同時に表示されたりするのを防ぐことができます。</li>
<li>項目を選択すると前に選択されていた項目の選択解除も行われるため、切り替えのクリック数が半分で済みます。</li>
<li>ラジオボタンは選択解除できませんが、親のグループレイヤーで非表示にもできます。</li>
<li>最後にクリックしたラジオボタンはキーボードの上下キーで選択を切り替えることもできます。</li>
</ul>
<p>
ラジオボタン内のレイヤーが複数表示されたまま PSD ファイルが保存されていた場合、その中で一番上のものがデフォルト表示されます。
</p>
<h3 id="original-feature-exclamation">強制表示化「!」</h3>
<p><img src="img/exclamation.png" width="620" height="239" class="psdtool-thumb" alt="強制表示化の使用例"></p>
<p>
<strong>レイヤー名の先頭に半角のエクスクラメーションマーク「!」をつける</strong>と、選択項目からチェックボックスが消えます。
<br>チェックボックスがない項目は表示状態になり、非表示にできなくなります。
</p>
<ul>
<li>必須のパーツが外れるのを防ぐことができます。</li>
<li>選択項目を減らせるので、使う時に迷う要素を画面から減らすことができます。</li>
<li>ユーザーの操作で非表示にはできませんが、ZIP エクスポート機能や反転表示機能などで非表示にされることはあります。</li>
</ul>
<p>
強制表示設定にしたレイヤーを非表示にして PSD ファイルを保存しても、PSDTool で表示する際は強制的に表示状態になります。
</p>
<h3 id="original-feature-flip">反転レイヤー指定「:flipx」「:flipy」「:flipxy」</h3>
<p><img src="img/flip.png" width="620" height="201" class="psdtool-thumb" alt="反転レイヤー指定の使用例"></p>
<p>
レイヤー名の最後に「:flipx」「:flipy」「:flipxy」のいずれかをつけると、そのレイヤーはそれぞれ左右反転、上下反転、上下左右反転をしている時にだけ使用するレイヤーとして扱われます。<strong>同じ階層内に「通常表示用のレイヤー」と「反転表示用のレイヤー」の2つのレイヤーを用意し、その名前を「通常用の名前」「通常用の名前:flipx」のようにする</strong>ことで、この機能が有効化されます。
</p>
<p>
例えば「体」というレイヤーを「通常用」と「左右反転用」の2種類用意する場合、それぞれの名前を「体」「体:flipx」などのようにしておきます。正しく設定すると PSDTool で読み込んだ時にレイヤー一覧から「体:flipx」が消え、「体」レイヤーを表示している状態で左右反転すると「体:flipx」の内容で自動的に表示されます。
</p>
<p>
この機能はグループレイヤーで使うこともできますが、グループレイヤーで使う場合は「通常用のグループレイヤー」と「反転表示用のグループレイヤー」の中に含まれる子レイヤーの名前を完全に一致させておく必要があります。 一致していないレイヤーがある場合、その場所は正しく反転が適用されません。
</p>
<ul>
<li>文字や襟など反転されるべきではない要素に対して柔軟に対処できます。</li>
<li>「体:flipx:flipy」のように、左右反転と上下反転で同じレイヤーを使う、という使い方もできます。</li>
<li>PSDTool のトップページから開くことができるサンプルは、この機能を利用して髪の結び目が切り替わるようになっています。</li>
</ul>
<h2 id="pfv-spec">PFV ファイルについて</h2>
<p>PFV ファイルは PSDTool で登録したお気に入りの情報が格納された PSDTool 独自のファイル形式です。</p>
<p>ファイルの実態は BOM なし UTF-8、改行コード '\n' のテキストファイルで、概ね以下の構造になっています。</p>
<pre>[PSDToolFavorites-v1]
root-name/お気に入り
//フォルダー名/お気に入り登録名
グループ1/レイヤー1
グループ2/*グループ3
//フォルダー名/空フォルダ~folder
</pre>
<p>まず固定のヘッダーとして必ずファイルの先頭から <code>[PSDToolFavorites-v1]</code> が現れ、行頭に <code>//</code> が現れるまではファイル全体に対する設定が続きます。<code>//</code> が現れたあとは次の <code>//</code> が現れるまでがそのお気に入りの設定です。</p>
<p>
日本語で書かれている箇所は実際にはそれぞれが以下の JavaScript で示す URL エンコードの亜種によりエンコードされています。 テキストエディタによる編集を容易にするためエンコードされる文字種は絞られていますが、デコードには通常の URL デコーダーが使用できます。
</p>
<pre>function encode(s) {
return s.replace(/[\x00-\x1f\x22\x25\x27\x2f\x5c\x7e\x7f]/g, function(m) {
return '%' + ('0' + m[0].charCodeAt(0).toString(16)).slice(-2);
});
}</pre>
<p>
ブックマーク内に空フォルダーがある場合にはそれを示すために <code>//</code> から始まる識別子は更に後ろに <code>~folder</code> が付与される場合があります。
<br>また、フィルターが有効になっているフォルダーがある場合は同じように <code>~filter</code> が付与され、通常のお気に入りと同じ形式でフィルタリングしない項目が列挙されます。
</p>
<p>
例えば <code>//グループ1/レイヤー1</code> を解析して階層ごとに取得したい場合、まず先頭2文字を捨ててから <code>~</code> の有無を検索し、ある場合はまず <code>~</code> で分割し、後ろが <code>folder</code> など既知の識別子であるか確認し、未知の識別子の場合は次の <code>//</code> まで読み飛ばすようにしてください。これを怠ると将来識別子が追加された際に正しく処理できなくなる可能性があります(やってても互換性が維持できるかはわかりませんが…)。</p>
</p>
<p><code>root-name</code> にはお気に入りツリーの一番上の名前が保存されています。</p>
<p>
レイヤー構造に関するデータは <code>レイヤー1/レイヤー2/レイヤー3</code> のような形になっていて、この場合だと「レイヤー1」「レイヤー2」「レイヤー3」全てにチェックが入っていることを示しています。また、それぞれのレイヤー名は上記の同じ URL エンコードの亜種によりエンコードされています。
</p>
<p>
しかし稀に <code>レイヤー1/レイヤー2\1/レイヤー3</code> のように <code>\</code> バックスラッシュ(円記号)と数字が入っていることがあり、これは PSD ファイルで同じレイヤーの階層に同じ名前のレイヤーが複数あることを示しています。<code>\</code> の後ろの数字はレイヤーの重ねあわせ順で、下から <code>0</code> から始まるインデックスで付与されていますが、<code>0</code> の場合は省略されます。
<br>この例の場合だと、<code>レイヤー1</code> の子階層に <code>レイヤー2</code> という名前のレイヤーが複数あり、<code>レイヤー2\1</code> は下から数えて2番めの <code>レイヤー2</code> です。
<br>レイヤー名自体に <code>\</code> が含まれている場合はエンコードによって <code>%5c</code> になっているため、<code>\</code> の存在はデコード処理の前にチェックすることで見つけることができます。
</p>
<h2 id="faq">よくある質問</h2>
<dl>
<dt id="faq-zip-mojibake">ZIP ファイルを解凍したら、ファイル名が文字化けしている</dt>
<dd>
<p>お使いの ZIP ファイル解凍ソフトが近年普及している仕様(UTF-8ファイル名)に対応していないのが原因です。</p>
<p>
Windows7 では <a href="https://support.microsoft.com/ja-jp/help/2704299/japanese-characters-in-file-names-are-displayed-as-garbled-text-after">KB2704299</a> が適用された環境で、Windows8 以降ならそのままで、標準で使用可能な「圧縮フォルダ」で正常に解凍できます。
フリーウェアでは <a href="https://sevenzip.osdn.jp/">7-zip</a> や <a href="http://www.peazip.org/">PeaZip</a>、<a href="https://www.ponsoftware.com/">Explzh</a>(家庭内や個人利用等の一般での使用のみ無償)などで解凍できます。
</p>
</dd>
<dt id="faq-layer-check">レイヤーのチェックが外せない / レイヤーの変なところがラジオボタンになっている</dt>
<dd>
<p>
明らかにおかしい場合は誤って<a href="#original-feature">独自拡張機能</a>が適用されているかもしれません。
</p>
<p>
画像を開く前に<a href="#feature-options">オプションから「独自拡張機能を無効化」</a>を選ぶと誤判定を回避することができます。
</p>
<p>
この問題は PSDTool で開くことを想定していない PSD ファイルで起こることがあります。<br>
ただし、<strong>世の中の大半の PSD ファイルは PSDTool で開くことを想定していません</strong>し、PSD ファイル側に問題があるわけでもありません。
</p>
</dd>
</dl>
<h2 id="privacy">プライバシーポリシー</h2>
<p>ユーザーが PSDTool(以下「本サービス」)をご利用になる際には事前に以下のプライバシーポリシーをお読みいただき、同意された場合にのみご利用ください。</p>
<p>なお、プライバシーポリシーは予告なく変更される場合があります。</p>
<h3>利用者数やトラフィック調査について</h3>
<p>本サービスでは、2018年1月9日より Google アナリティクスを使用しています。</p>
<p>Google アナリティクスを使用しているページにアクセスすると、Web ブラウザは Google に特定の情報(アクセスした Web ページのアドレスや IP アドレスなど)を自動的に送信します。また、Google が Web ブラウザの Cookie を設定および読み取りを行う場合があります。<br>(Google によるクッキーの収集および利用方法については <a href="https://www.google.com/analytics/terms/jp.html" target="_blank">Google アナリティクス利用規約</a> および <a href="http://www.google.co.jp/policies/privacy/" target="_blank">Google 社のプライバシーポリシー</a>によって定められています。)</p>
<p>本サービスではそれらの情報を本サービスの利用者数やトラフィック調査の目的に限り使用します。</p>
<p>なお、ユーザーは <a href="https://tools.google.com/dlpage/gaoptout" target="_blank">Google アナリティクス オプトアウト アドオン</a>を利用することにより、これらの情報収集を無効化することができます。</p>
<h3>本サービスで読み込む PSD/PSB/PFV ファイルについて</h3>
<p>ユーザーが本サービスで読み込む PSD/PSB/PFV ファイルに関わる全ての情報は本サービスを機能させる目的に限り使用されます。<br>これらの情報は Web ブラウザの内部でのみ使用され、外部に送信されることは一切ありません。</p>
<h3>お気に入りの情報保存について</h3>
<p>ユーザーが本サービスでお気に入りの編集を行う際、本サービスは Web ブラウザのローカルストレージにその情報を保存します。<br>この情報は同一の PSD/PSB ファイルを開いた際にお気に入りを復元させるため、またユーザーの操作によってお気に入りを復元する目的でのみ利用されます。<br>この情報が外部に送信されることは一切ありません。</p>
<h3>ZIP ファイル作成時の一時情報保存について</h3>
<p>本サービスのエクスポート機能で ZIP ファイルを作成する際に、本サービスは Web ブラウザの IndexedDB に一時的な情報を保存します。</p>
<p>これは巨大なファイルを作成する際に Web ブラウザがクラッシュするのを回避する目的で使用されており、保存された情報は ZIP ファイルの作成後に削除されます。<br>ただしブラウザを閉じるなどで ZIP ファイルの作成が中断された場合は、一定期間経過後に本サービスにアクセスした際に自動的に削除されます。<br>この情報が外部に送信されることは一切ありません。</p>
<h2 id="changes">変更履歴</h2>
<dl>
<dt>2022-04-15</dt>
<dd>レイヤーが1枚もない画像を読み込むとエラーが出ていたのを修正</dd>
<dt>2022-01-22</dt>
<dd>最近の FireAlpaca で作成したファイルでエラーが出ていたのを修正</dd>
<dt>2020-10-30</dt>
<dd>29日の修正に間違いがあったのを修正</dd>
<dt>2020-10-29</dt>
<dd>Photoshop で書き出した PSD ファイルが上手く開けないことがあったのを修正</dd>
<dt>2020-06-30</dt>
<dd>アイビスペイントで書き出した PSD ファイルが上手く開けないことがあったのを修正</dd>
<dt>2019-12-01</dt>
<dd>Photopea で書き出した PSD ファイルが上手く開けなかったのを修正</dd>
<dt>2019-10-15</dt>
<dd>記述が不十分なものが多すぎるためお問い合わせフォームを削除</dd>
<dd>iOS 13 上の Safari で PSD ファイルが選択できなくなったことへの対策</dd>
<dd>Autodesk 製品で生成した PSD ファイルが上手く開けなかったのを修正</dd>
<dt>2018-06-14</dt>
<dd>Ctrl + クリックで強制表示レイヤーが非表示になってしまうことがあるバグを修正</dd>
<dt>2018-01-09</dt>
<dd>サーバの転送量を調査するために Google Analytics の解析タグを追加</dd>
<dd>プライバシーポリシーの項目を追加</dd>
<dt>2017-10-19</dt>
<dd>「独自拡張機能を無効化」の存在意義を主張</dd>
<dd>レイヤー名が「!?」の時に独自拡張機能が動作しないように修正</dd>
<dd>エクスポートダイアログ内に ZIP ファイルのファイル名が文字化けする場合のリンクを追記</dd>
<dt>2017-09-16</dt>
<dd>ドキュメントに「よくある質問」の項目を追加</dd>
<dt>2017-09-01</dt>
<dd>ラジオとチェックが同じ階層に混在している時の振る舞いを明確にした</dd>
<dt>2017-08-31</dt>
<dd>排他チェック機能を追加</dd>
<dd>Ctrl(Command) キーを押しながらチェックボックスをクリックすると、同じ階層のチェックを外しながらチェックを入れることができます。以前から使える Shift + Ctrl(Command) + G による「ラジオグループからお気に入りを自動生成」機能も、今回からチェックボックスの時は同じ階層をグループとみなすことで使えるようになります。</dd>
<dd>「グループからフィルター適用済みフォルダーを自動生成」のショートカットキーを追加</dd>
<dt>2017-07-23</dt>
<dd>ソースコードの整理</dd>
<dd>縮小時に暗い色が劣化することがあったのを修正</dd>
<dt>2017-04-08</dt>
<dd>ソースコードの整理</dd>
<dd>エクスポート処理を最適化</dd>
<dd>画像縮小時に右端のデータが左端に回り込む問題を修正</dd>
<dd>画像縮小時にガンマ値を考慮するように改善</dd>
<dd>合成モード「通過」に関連する問題を修正</dd>
<dd>その他描画品質に関わるいくつかの問題を修正</dd>
<dd>UTF-16(BOMあり) のテキストファイルをサポート</dd>
<dd>※今回の変更により、一部のPSDファイル、特定の状況下、または縮小機能を使った場合などに以前とは描画結果が異なるケースがあります。現在こちらで把握できている範囲ではおかしかった部分が正常な挙動になった、または理想的な挙動に近づいたものしかありませんが、もしおかしくなってしまったものを発見した場合はトップページ右上にある「問い合わせ」からご連絡頂けると幸いです。</dd>
<dt>2016-08-31</dt>
<dd>PSD ファイルの読み込み速度を最適化</dd>
<dt>2016-08-30</dt>
<dd>シンプルビューの Tiled Map Editor 対応形式を追加</dd>
<dt>2016-08-29</dt>
<dd>PSDTool の使い方の文書を掲載</dd>
<dt>2016-08-11</dt>
<dd>マスクの位置がずれる問題を修正</dd>
<dd>ソースコードの整理</dd>
<dd>謝辞の追加</dd>
<dt>2016-07-30</dt>
<dd>メモリ使用量を削減</dd>
<dt>2016-07-20</dt>
<dd>文字コード検出処理を変更</dd>
<dd>4/19 から無効化されていた Web Worker 版 PSD ファイル読み込み処理を再度有効化</dd>
<dt>2016-07-19</dt>
<dd>PSD ファイルのつもりで PSB ファイルを公開する人をしばしば見かけるので PSB ファイルに対応</dd>
<dt>2016-05-29</dt>
<dd>フォルダーの合成モードが省略された時に正しく「通過」が選ばれなかったのを修正(thanks to <a href="https://twitter.com/zephid_phantasm" target="_blank">@zephid_phantasm</a>)</dd>
<dd>合成モード「通過」の時はクリッピングマスクにしないように改善</dd>
<dd>透明度 100% 以外での合成モード「通過」やレイヤーマスク併用時の挙動などで、まだ問題あり</dd>
<dt>2016-05-07</dt>
<dd>クリッピングマスクの処理を改善</dd>
<dt>2016-05-06</dt>
<dd>クリッピングマスクの処理を改善</dd>
<dt>2016-05-01</dt>
<dd>ショートカットキーからのお気に入り追加での名前のデフォルト値を最後にチェックを入れたレイヤーの名前に変更</dd>
<dd>上下反転、左右反転で必要になるクリック数を削減</dd>
<dd>ZIP エクスポート機能で 4GB 以上のアーカイブは ZIP64 で書き出すように改善</dd>
<dd>シンプルビューの全パターンエクスポート機能を実装</dd>
<dd>バグ修正</dd>
<dt>2016-04-26</dt>
<dd>動画へのリンクを追加</dd>
<dt>2016-04-25</dt>
<dd>文字コード検出処理を変更</dd>
<dt>2016-04-22</dt>
<dd>バグ修正</dd>
<dt>2016-04-19</dt>
<dd>Chrome 50 で起こる問題を回避</dd>
<dt>2016-04-09</dt>
<dd>反転時に自動でレイヤーを切り替える独自拡張機能を追加</dd>
<dd>シンプルビュー機能を追加</dd>
<dd>デザインの調整</dd>
<dd>操作性の改善</dd>
<dt>2016-04-08</dt>
<dd>操作性の改善</dd>
<dt>2016-04-04</dt>
<dd>バグ修正</dd>
<dt>2016-04-01</dt>
<dd>バグ修正</dd>
<dd>操作性の改善</dd>
<dd>書き出しオプションの追加</dd>
<dt>2016-03-31</dt>
<dd>同じ階層に同じ名前のレイヤーが複数ある場合にお気に入りが使用できなかったのを修正</dd>
<dd>フィルター機能を追加</dd>
<dt>2016-03-22</dt>
<dd>バグ修正</dd>
<dt>2016-03-21</dt>
<dd>お気に入りの ZIP エクスポート機能で 500MB の容量上限を撤廃</dd>
<dt>2016-03-18</dt>
<dd>バグ修正</dd>
<dt>2016-03-17</dt>
<dd>バグ修正</dd>
<dt>2016-03-16</dt>
<dd>ファイル読み込みとキャンバス作成を並列化</dd>
<dt>2016-03-10</dt>
<dd>バグ修正</dd>
<dt>2016-03-06</dt>
<dd>お気に入り機能を追加</dd>
<dd>連番ダウンロードで番号の省略を可能にした</dd>
<dd>デザインの調整</dd>
<dd>ドキュメントを整理</dd>
<dd>左カラムの幅をドラッグで変えられるように</dd>
<dd>縮小と連番ダウンロードに全角数字を入れても認識するように</dd>
<dd>巨大な ZIP ファイル(1GB以上)からの読み込みに対応</dd>
<dt>2016-02-18</dt>
<dd>オプション「自動トリミング」「独自機能を無効化」を追加</dd>
<dt>2016-02-17</dt>
<dd>操作性の改善</dd>
<dd>バグ修正</dd>
<dt>2016-02-15</dt>
<dd>バグ修正</dd>
<dt>2016-02-07</dt>
<dd>バグ修正</dd>
<dt>2016-02-06</dt>
<dd>縮小のサイズ計算が誤っていたのを修正</dd>
<dd>ZIP ファイルを開いた時はテキストファイルを表示できる機能を追加</dd>
<dd>ダイレクト読み込み機能を追加</dd>
<dt>2016-02-05</dt>
<dd>ZIP 圧縮された PSD ファイルの読み込みに対応</dd>
<dt>2016-02-04</dt>
<dd>合成モード「通過(グループレイヤーのみ)」「通常」「比較(暗)」「乗算」「焼き込みカラー」「焼き込み(リニア)」「カラー比較(暗)」「比較(明)」「スクリーン」「覆い焼きカラー」「覆い焼き(リニア)」「カラー比較(明)」「オーバーレイ」「ソフトライト」「ハードライト」「ビビッドライト」「リニアライト」「ピンライト」「ハードミックス」「差の絶対値」「除外」「減算」「除算」「色相」「彩度」「カラー」「輝度」の実装を追加</dd>
<dt>2016-02-02</dt>
<dd>操作性の改善</dd>
<dt>2016-02-01</dt>
<dd>描画負荷の軽減</dd>
<dd>縮小処理中にUIが硬直しないように</dd>
<dt>2016-01-29</dt>
<dd>透過領域でアニメーション</dd>
<dd>縮小機能を追加</dd>
<dd>連番ダウンロード機能を追加</dd>
<dd>バグ修正</dd>
<dt>2016-01-28</dt>
<dd>合成モード「覆い焼き(リニア)」に対応</dd>
<dd>レイヤーマスク、ベクトルマスクに対応</dd>
<dd>バグ修正</dd>
<dt>2016-01-26</dt>
<dd>クリッピングマスクに対応</dd>
<dd>読み込み状況の進捗表示</dd>
<dd>バグ修正</dd>
<dt>2016-01-22</dt>
<dd>初版</dd>
</dl>
<h2 id="credits">クレジット</h2>
<p>PSDTool は以下のオープンソースソフトウェア/ライブラリ/ソースコードを使用して開発されました。</p>
<dl>
<dt><a href="https://golang.org/" target="_blank">The Go Programming Language</a></dt>
<dd><pre>
Copyright (c) 2009 The Go Authors. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of Google Inc. nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
</pre></dd>
<dt><a href="https://github.com/gopherjs/gopherjs" target="_blank">GopherJS - A compiler from Go to JavaScript</a></dt>
<dd><pre>
Copyright (c) 2013 Richard Musiol. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
</pre></dd>
<dt><a href="https://github.com/monochromegane/the_platinum_searcher" target="_blank">The Platinum Searcher</a></dt>
<dd><pre>
The MIT License (MIT)
Copyright (c) [2014] [the_platinum_searcher]
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
</pre></dd>
<dt><a href="https://jquery.com/" target="_blank">jQuery</a></dt>
<dd><pre>
Copyright jQuery Foundation and other contributors, https://jquery.org/
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
</pre></dd>
<dt><a href="http://getbootstrap.com/" target="_blank">Bootstrap</a></dt>
<dd><pre>
The MIT License (MIT)
Copyright (c) 2011-2016 Twitter, Inc.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
</pre></dd>
<dt><a href="https://github.com/eligrey/FileSaver.js" target="_blank">FileSaver.js</a></dt>
<dd><pre>
Copyright © 2016 Eli Grey.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE