七行プログラミング part2at TECH
七行プログラミング part2 - 暇つぶし2ch37: ◆Air.TtTk
02/04/16 19:21
PDT びゅーわ(10行)
某社ゲームの、PDT形式画像ビューワ。
>java P filename

PDT10 のみ対応。
透明度、PDT11、アーカイブ 未対応。

import java.awt.*;import java.awt.image.*;import java.io.*;public class P
extends Frame{byte[]s;int[]q;int m,w,h,S=12,c,v,M,Q=0;Image I;public static void
main(String[]_){(new P(new File(_[0]))).show();}public P(File f){s=new byte[(int
)f.length()];try{InputStream R=new FileInputStream(f);R.read(s);R.close();}catch
(Exception e){}w=L(4);h=L(4);S=32;q=new int[w*h];while(Q<q.length){m=s[S++];for(
M=0;M<8&&Q<q.length;M++){if((m<<M&128)!=0)q[Q++]=255<<24|L(3);else{v=(s[S+1]&255
)<<4;v+=((s[S]>>4)&15)+1;for(c=s[S]&15;c>=0;c--){q[Q]=q[Q++-v];}S+=2;}}}setSize(
w+80,h+80);I=createImage(new MemoryImageSource(w,h,q,0,w));}public void paint(
Graphics g){g.drawImage(I,40,40,this);}int L(int l){v=c=0;while(c<l)v+=(s[S++]&
255)<<(c++)*8;return v;}}

自分の言語知識の無さを感じたよ…。
加えて、最近Swingばっかりやってたので、Frameの挙動がよく分からなかった…。

…、つか、なんでインクリメントにカッコつけてんだ俺…。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch