2019年12月18日

クリップボードの中身が画像の場合に対応してみました…マウスのお供v1.62.04β

本日付で「マウスのお供v1.62.04β」を公開しています。
更新内容は、数日前に予告した、クリップボードビューア的な機能について、これまでは対象が文字列とファイル名だけだったところに加え、画像を追加したこととなります。

20191218_mtmo_imageclip.jpg
▲イメージ

技術的には、クリップボード内が画像の時に GetClipboardData(CF_BITMAP) を実行すると、ビットマップのハンドル(HBITMAP)が得られますので、CopyImage() APIでビットマップの複製を作っておき、それを保持しておいて、本ソフトで時計と共に表示しています。

画像の表示にはBitBlt() APIを使用していますが、画像が大きすぎる場合にStretchBlt() APIで縮小表示するかどうかは検討中です。そもそもどんな場合を「画像が大きすぎる」とみなすべきかとか、そもそも画像の左上だけなんとなく表示していればOKとみなすかどうか…、このあたりは、要望があったら取り入れていくのが良いかとも思っています。


また、本ソフト起動時のクリップボードの内容から表示するようにし、文字列の修飾除去機能も本ソフト起動時より働くようにしました。

posted by ayacy at 00:19 | Comment(4) | TrackBack(0) | フリーソフト
この記事へのコメント
どうもお世話になってます
マウスのお供v1.62.04β(mtmo1.62.04beta.zip)
WinXp環境
で新機能の画像表示を試しましたが
何度かスクショを撮ってると
何故が途中から画像が崩れたり
最終的には表示されなくなりました

以前リソースリークの記事
を思い出し
ProcessExplorerPortableで確認すると
GDI Handles の数が増えていき200まで確認しました(起動時は28)
確認用にスクショに残そうとしましたがスクショが取れない状態でした
マウスのお供を終了でスクショは撮れる状態になりました

あと
縮小表示するかどうかは検討中とのことで
ぜひ実装お願いします
思ったより画像が表示邪魔でした
SageThumbs
http://www.cherubicsoft.com/en/projects/sagethumbs#.VTRcKvDdDuO
などは256x256ピクセルで縮小表示ですが
邪魔にならないサイズで綺麗に縮小され中身が確認できてます
これくらいのサイズがいいですね
あと
画像ですが
クリップボードを空にする
で空に出来ないです

mousenootomo.ini
[MD5Check]
LastNormalBoot= 2019/12/ 4 14:04:58
[tk]
WPOS=0
LEFT=20
TOP=50
FADEOUTSEC=2
INTERVAL=20
HIDEMOVE=0
TEXTCOLOR_R=0
TEXTCOLOR_G=0
TEXTCOLOR_B=0
BKCOLOR_R=0
BKCOLOR_G=255
BKCOLOR_B=0
WBKCOLOR_R=200
WBKCOLOR_G=200
WBKCOLOR_B=200
BG_ALPHA=0
FONTNAME=MS UI Gothic
FONTSIZE=10
FORMAT=yyyy/MM/dd [aaa] HH:mm:ss
ALARM=0
ALARM_HOUR=14
ALARM_MIN=59
ALARM_WAV=
ALARM_WAV_BSEC=10
ALARM_NOKORI=0
ALARM_NOKORI_COLOR_R=102
ALARM_NOKORI_COLOR_G=0
ALARM_NOKORI_COLOR_B=0
ALARM_BK_COLOR_R=255
ALARM_BK_COLOR_G=0
ALARM_BK_COLOR_B=0
JIHOU=1
JIHOU_WAV=
JIHOU_WAV_BSEC=10
CLIPBOARD=1
CLIPBOARD_COLOR_R=0
CLIPBOARD_COLOR_G=0
CLIPBOARD_COLOR_B=255
CLIPBOARD_COLOR_F_R=128
CLIPBOARD_COLOR_F_G=0
CLIPBOARD_COLOR_F_B=128
MEMO=
MEMO_COLOR_R=0
MEMO_COLOR_G=102
MEMO_COLOR_B=0
GAIBU=1
GAIBU_COLOR_R=255
GAIBU_COLOR_G=0
GAIBU_COLOR_B=255
CPUMEM=1
CPUMEM_COLOR_R=170
CPUMEM_COLOR_G=0
CPUMEM_COLOR_B=170
AUTO_DEL_ATTR=0
AUTO_DEL_CLIP=1
AUTO_DEL_CLIPSEC=180
CBTEXT_MAX=0
WND_WIDTH=0
WND_HEIGHT=0
ROUNDRECT=0
FONTBOLD=0
FONTITALIC=0
ALARM_SEC=46
YOREI_COLOR=1
IMESTATE=1
IMESTATE_COLOR_R=184
IMESTATE_COLOR_G=85
IMESTATE_COLOR_B=71
KAKOMI_COLOR_R=0
KAKOMI_COLOR_G=255
KAKOMI_COLOR_B=0
FORMATCPU=CPU:{c}% メモリ:{mM}MB BT:{b}%
ALARM_FLUSH=1
JIHOU_FLUSH=1
CUSTCOLORS=00000000C8C8C80066000000FF0000000000FF0080008000006600000000FF0000FFFF00FF00FF00FF000000FFFF0000FFFFFF0000007F00007F7F00007F000013
FADEOUTMSEC=2000
CBDELAY=1
NoOpeningDlg=1
INSTANTLY=0
JIHOU_WAV00=
JIHOU_WAV01=
JIHOU_WAV02=
JIHOU_WAV03=
JIHOU_WAV04=
JIHOU_WAV05=
JIHOU_WAV06=
JIHOU_WAV07=
JIHOU_WAV08=
JIHOU_WAV09=
JIHOU_WAV10=
JIHOU_WAV11=
JIHOU_WAV12=
JIHOU_WAV13=
JIHOU_WAV14=
JIHOU_WAV15=
JIHOU_WAV16=
JIHOU_WAV17=
JIHOU_WAV18=
JIHOU_WAV19=
JIHOU_WAV20=
JIHOU_WAV21=
JIHOU_WAV22=
JIHOU_WAV23=
JIHOU_MULTI=0
SHOW_CLOCK=1
GAP_BETWEEN_ITEMS=0
SHOW_LINE=0
BIGDIALOG=0
HOTKEY_SETTING=0
HOTKEY_MEMO=0
HOTKEY_HIDE=0
HOTKEY_HIDE_P1=0
HOTKEY_HIDE_P0=0
HOTKEY_CLEARCLIPBOARD=0
HOTKEY_DELATTR=0
HOTKEY_CHECK_ALARM_NOKORI=0
TITLESUBSTR=
HideOut=0
WarnDiskSize=0
WATCHDRIVEFREE_SIZE_A=0
WATCHDRIVEFREE_UNIT_A=2
WATCHDRIVEFREE_SIZE_B=0
WATCHDRIVEFREE_UNIT_B=2
WATCHDRIVEFREE_SIZE_C=0
WATCHDRIVEFREE_UNIT_C=2
WATCHDRIVEFREE_SIZE_D=0
WATCHDRIVEFREE_UNIT_D=2
WATCHDRIVEFREE_SIZE_E=0
WATCHDRIVEFREE_UNIT_E=2
WATCHDRIVEFREE_SIZE_F=0
WATCHDRIVEFREE_UNIT_F=2
WATCHDRIVEFREE_SIZE_G=0
WATCHDRIVEFREE_UNIT_G=2
WATCHDRIVEFREE_SIZE_H=0
WATCHDRIVEFREE_UNIT_H=2
WATCHDRIVEFREE_SIZE_I=0
WATCHDRIVEFREE_UNIT_I=2
WATCHDRIVEFREE_SIZE_J=0
WATCHDRIVEFREE_UNIT_J=2
WATCHDRIVEFREE_SIZE_K=0
WATCHDRIVEFREE_UNIT_K=2
WATCHDRIVEFREE_SIZE_L=0
WATCHDRIVEFREE_UNIT_L=2
WATCHDRIVEFREE_SIZE_M=0
WATCHDRIVEFREE_UNIT_M=2
WATCHDRIVEFREE_SIZE_N=0
WATCHDRIVEFREE_UNIT_N=2
WATCHDRIVEFREE_SIZE_O=0
WATCHDRIVEFREE_UNIT_O=2
WATCHDRIVEFREE_SIZE_P=0
WATCHDRIVEFREE_UNIT_P=2
WATCHDRIVEFREE_SIZE_Q=0
WATCHDRIVEFREE_UNIT_Q=2
WATCHDRIVEFREE_SIZE_R=0
WATCHDRIVEFREE_UNIT_R=2
WATCHDRIVEFREE_SIZE_S=0
WATCHDRIVEFREE_UNIT_S=2
WATCHDRIVEFREE_SIZE_T=0
WATCHDRIVEFREE_UNIT_T=2
WATCHDRIVEFREE_SIZE_U=0
WATCHDRIVEFREE_UNIT_U=2
WATCHDRIVEFREE_SIZE_V=0
WATCHDRIVEFREE_UNIT_V=2
WATCHDRIVEFREE_SIZE_W=0
WATCHDRIVEFREE_UNIT_W=2
WATCHDRIVEFREE_SIZE_X=0
WATCHDRIVEFREE_UNIT_X=2
WATCHDRIVEFREE_SIZE_Y=0
WATCHDRIVEFREE_UNIT_Y=2
WATCHDRIVEFREE_SIZE_Z=0
WATCHDRIVEFREE_UNIT_Z=2
WATCHDRIVEFREEWAV=
HOTKEY_SUSPEND_WARNDISKSIZE=0
IBEAMHIDE=0
Posted by kiyohiro at 2019年12月18日 15:52
ご報告ありがとうございます。
まだハンドルリークが残っていそうですね。
設定のご提供もありがとうございます。本日帰宅しましたら、この設定を適用して確認したいと思います。
縮小表示については、私の感覚では、320x320ピクセルくらいを上限にして、それを超えたら縮小表示させるくらいだと心地良かった感じなので、それで次のβ版を作ってみようかと思っております。
Posted by Ayacy at 2019年12月18日 18:39
対応ありがとうございます
マウスのお供 ver.1.62.05β
で報告分
GDI Handles数の増加
クリップボードを空にする
の修正確認しました
また、画像の縮小表示もいい感じです
Posted by kiyohiro at 2019年12月19日 15:23
ご確認、ありがとうございます。
引き続き、ご愛用ください。
Posted by Ayacy at 2019年12月19日 15:32
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。
この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/186930326
※ブログオーナーが承認したトラックバックのみ表示されます。
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック