Hatena::ブログ(Diary)

genEx::基本的にASP.net このページをアンテナに追加 RSSフィード

2009-10-06

GEKIDAS届いた

そういえば日曜ぐらいに届いてた。

中身はというと、、、普段から激裏見てるせいか

今のところ目新しい物は無い感じかな(まだ前半しか見て無いけど)


ブラックジャック必勝法というか、効率の良いカードの引き方

見たいなチャートが出てたから、それを実践して見てるけど

勝率としては6割ぐらいでしょうか。


あと、UserHeartでググると本家を差し置いてこのブログが一番に・・・

何か申し訳無いですね( ´・ω・)

早くはてなで使えるようになればいいのに。


お礼も兼ねて再度リンクをペタリ。

f:id:genex:20090930174415p:image

UserHeart http://userheat.com/


2009-09-30

UserHeart::サイト上でのユーザーの動きを視覚的に把握

f:id:genex:20090930174415p:image

UserHeart http://userheat.com/


「訪問者が、Webのページのどこの段落を注目して読んでいるのか」と「どの場所がクリックされているか」を調べて、その調査結果を共有するシステム

だそうです。

残念ながらはてなでは今のところ使えないみたいですが

マウスの動きや、ユーザーがどの文脈に注目して

長時間読んでいるか等が分かるみたいです。

2009-09-04

銀行支店検索APIつくってみる

某所からデータ取りするツール作ってたら

一括でDLできるところがあったっぽいので

ありがたく拝借させていただきます( *´∀`)

これでAPIさくっと作れるぞっと

http://ykaku.com/ginkokensaku/index.php

2009-09-03

透過PNGを合成してGIFを吐き出してみる(FreeImageNet) 

FreeImageNetを拾ってくる

Site : The FreeImage Project

http://freeimage.sourceforge.net/download.html


展開して Bin ディレクトリに

FreeImageNET.dll

FreeImage.dll

を突っ込む


とりあえずページ先頭に以下のコードを追加

<%@ Assembly Name="FreeImageNet" %>

合成処理を用意

'/// infile で指定した画像を Drawing.Graphicsに描画
Public Function ImgOverWrite(byval infile as string, _
                             byref g as Drawing.Graphics)

    '/// 画像ファイルのロック防止の為、ReadでFileStreamを作成
    Dim fs as New IO.FileStream(infile, IO.FileMode.Open, IO.FileAccess.Read, IO.FileShare.Read)

    '/// 作成したFileStreamからBitmapを作成
    dim bmp As New Drawing.Bitmap(fs)

    '/// Drawing.Graphicsに描画
    g.DrawImage(bmp, 0, 0, bmp.Width, bmp.Height)

    '/// 後処理
    fs.Close()
    fs.Dispose()
    bmp.Dispose()
    	
End Function

画像読み込んで合成してバイナリ吐き出す


'/// 土台となるBitmapを作成(70x150px)
Dim basebmp As New Drawing.Bitmap(70, 150)

'/// 土台BitmapのGraphicsを取得
Dim g as Drawing.Graphics
g = Drawing.Graphics.FromImage(basebmp)

'/// 白で塗りつぶす
g.Clear(Drawing.Color.White)

'/// 土台に画像を上書き
ImgOverWrite("hogehoge.png", g)
ImgOverWrite("fugafuga.png", g)

'/// 出来上がった画像をMemoryStreamに読み込む
Dim ms As New System.IO.MemoryStream
basebmp.save(ms, Drawing.Imaging.ImageFormat.Png)

'/// FreeImageAPIを使ってPNG→GIFに変換
Dim dib As FreeImageAPI.FIBITMAP

'/// GIFを格納するMemoryStream
Dim ms_Gif As Stream.IO.MemoryStream

'/// 前で保存したMemoryStreamからFIBITMAPを作成
dib = FreeImageAPI.FreeImage.CreateFromBitmap(New Drawing.Bitmap(ms))

'/// GifとしてMemoryStreamに吐き出し
FreeImageAPI.FreeImage.SaveToStream(dib, ms_Gif, FreeImageAPI.FREE_IMAGE_FORMAT.FIF_GIF)

'/// ContentTypeをimage/gifに変更して書き出し
Response.Clear()
Response.ContentType = "image/gif"
Response.BinaryWrite(ms_Gif.GetBuffer)

'/// 後始末
ms_Gif.Close()
FreeImageAPI.FreeImage.Unload(dib)
dib.SetNull()

ms.Close()
basebmp.Dispose()

標準のBitmapで合成してGIFに書き出したらハーフトーンが出て酷かったからメモ