独自のスクリーンショット共有サービス(20分でひざまずく)

おはようございます%habr%



JIRA / Redmine / basecamp / Wikiで作業すると、馴染みのある画像を挿入する方法があります:!Http://blah.com/img.png! しかし、無料サービスでは、ある程度は効果的に働くことができません。



たとえば、Clip2netはファイルへの直接リンクを提供しません。20個のスクリーンショットがあり、それぞれにURLが必要な場合、ページからそれをルート化するのに時間がかかります...



無料アカウントのGyazoは使用時間が制限されています。URLの最後に「.png」を追加して修正する必要があります。写真の保存期間は限られています。



Dropboxを使用するというアイデアは、このコメントを思い付きました。 このアイデアは私にとっては面白そうで、自転車に座った。 「サービス」とその長所と短所を含むクライアント部分のDIY実装が削減されました。







必要条件





ロジック





ツール





構成は、プログラムでディレクトリ内のconfig.iniを編集することにより行われます。

config.ini

[MAIN] ;     DBOX_DIR = "C:\Dropbox\Public\pic\" ;      CAP = "C:\Program Files\MiniCap\MiniCap.exe" ;    (    Dropbox) ;  http://dl.dropbox.com/u/2058666/pic/1c40b047e22875c8396b029b00ea9a14.png DBOX_URL = "http://dl.dropbox.com/u/2058666/pic/" ; hotkey     shoot_key = "{PRINTSCREEN}"
      
      







実際、AutoITスクリプトは次のとおりです。

BoxShoot.au3

 #include <Crypt.au3> $hotkey = IniRead("config.ini", "MAIN", "shoot_key", "NotFound") $DBOX_DIR = IniRead("config.ini", "MAIN", "DBOX_DIR", "NotFound") $DBOX_URL = IniRead("config.ini", "MAIN", "DBOX_URL", "NotFound") $CAP = IniRead("config.ini", "MAIN", "CAP", "NotFound") HotKeySet ( $hotkey, "SHOOT" ) TraySetToolTip("BoxShoot") Opt("TrayMenuMode", 1) $exititem = TrayCreateItem("Exit") TraySetState() While 1 $msg = TrayGetMsg() Select Case $msg = 0 ContinueLoop Case $msg = $exititem CLOSE() EndSelect WEnd Func SHOOT() $CurTime = @YEAR & "_" & @MON & "_" & @MDAY & "_" & @HOUR & "_" & @MIN & "_" & @SEC $hash = _Crypt_HashData($CurTime, $CALG_MD5) $result = StringTrimLeft($hash, 2) $fname = $result & ".png" $fname = StringLower($fname) Run($CAP & " -captureregselect -exit -compress 7 -bordershadow -noaero -save " & $DBOX_DIR & $fname , "", @SW_MINIMIZE) ClipPut($DBOX_URL & $fname) EndFunc Func CLOSE() Exit 0 EndFunc
      
      





起動後、プログラムはトレイでハングし、PrintScreenを押すのを待ちます。



1.5MBのメモリ



自動起動-手動モード、つまり、「起動-起動」でショートカットを作成する





統計





ファイル:〜400

ボリューム:〜17mb

10月31日から使用しています



私はほぼ完全に満足しています。リンクはあまり見栄えが良くないので、URL短縮サービスをねじ込むと考えています。



ボーナス



scrot、xclip、およびBashスクリプトを使用して、お気に入りの* nixのアナログを簡単に取得できます。

 #!/bin/bash F_NAME=`date +%s | md5sum | awk '{ print $1}'`'.png' DBOX_DIR='/home/username/Dropbox/Public/pic/' DBOX_URL='http://dl.dropbox.com/u/2058666/pic/' S_NAME=$DBOX_DIR$F_NAME scrot -s -q 0 $S_NAME echo -n $DBOX_URL$F_NAME | xclip
      
      





XBindKeysを固定するために残ります。



ソースコードとすぐに使えるexeはGitHubで入手できます



PS



セキュリティ上の理由からDropBox IDが変更されました。IDがスクリプトに表示されている貧しい仲間に謝罪します。



All Articles