モノ・ツール

格安(500円)のEEPROM Reader Writerを使ってみた。

aliexpressにて、安いEEPROM Reader Writerを購入

メモリの読み書きが目的。

US $3.34 / piece

私が買ったのはこちら。(購入は自己責任で)

送料込みで、$ 4.92。


発注から1週間ほどで到着。
ソフトウェアが付いていない。販売元に照会したら、メールアドレスを教えれば、ソフトを送付するとのこと。aliexpressのチャットでやりとりで、ソフトを依頼。(gmailだと先方からの送付が出来ないらしく、他のウェブメールを指定。)


1週間ほど待たされたが、ソフトをメールで受領。(ウェブ上のウィルスチェックでチェックしたところ、ひっかからないでもないが、大丈夫と判断。(これ 。使用判断は自己責任で。))ただし、中国語版で全般文字化け。文字が読めないなりに操作したが、うまくワークしない。断念。


類似の「CH341A」なるプログラマーは、ワークする風だったので、そのソフトウェアを導入してみる。駄目もと。


取得元はこちら。日本語対応もしてくださってて、素晴らしい。(複製はこれ 。取得と使用は自己責任で。)

ソフトは無事起動。
Image1_2


MICROCHIPのMIC24FC256で、実験してみる。
(2つ用意して、Aに書き込み、Bに書き込み、Aで読み取り、Bで読み取りが、それぞれ出来るか試す。)


うまくいかず。さすがに駄目か。


駄目もとで、画面の図とは逆に差し込んで実験。これが奏功!
(レバーとは逆方向に凹が向くようにする。写真参照。)


格安で、EEPROMの読み書きが実現できた。非常にうれしい。
Image2

| | コメント (0) | トラックバック (0)

エクセルのファイルサイズの縮小の方法。(画像がベタベタ貼ってるファイル編)

1.概要

『エクセルのファイルサイズ(ファイル容量)が、どうにも重くなって困った。』
ということが多く、なんとかサイズを小さく、縮小する方法を考えました。

この方法は、画像がたくさん貼ってあって、重いデータに有効な方法です。

 注(1) 一度「図の圧縮」をした後、さらに圧縮したい場合について提案します。
 注(2) 文字データや数式が多いことが原因で容量大のファイルでは、効果がありません。
 注(3) 「ブックの共有」により、ファイルサイズが巨大化した場合にも効果ありません。(この場合は、一旦共有をはずし、再度共有化する方法が有効です。)

 注(4) エクセルのバージョンは 2000~2003程度を想定しています。

 注(5) この提案はエクセルマクロ(VBA)を使用します
 注(6) 「図の圧縮」自体はマクロ化が不可能な様子なので、この部分の作業は「手作業」になります。

2.「図の圧縮」について

このやり方は、「図の圧縮」を行うやり方であり、
ここで紹介するのは、「図の圧縮」を、より強固に行うものです。

まず、その基本となる、「図の圧縮」については、以下の方法です。

エクセル>表示>ツールバー>図
で、出てくる 2 をクリックすることで以下が、表示されます。

1

ここで「ドキュメント内のすべての図」と解像度の「Web/画面 解像度:96dpi」を
選ぶことで、エクセルファイル内の画像ファイルの解像度が低減され、うまくすれば、ファイル容量を減らすことができます。

ただし、すでに圧縮済みの画像等であれば、本方法による圧縮はあまり望めません。

3.より「圧縮する」(=ファイルサイズを減らす)方法について

上述2の方法で、うまくいけばファイルサイズを減らすことができますが、
実際には、あまり減らないことの方が多いです。

なので、より一層減らす方法をここで紹介します。

手順としては以下のとおりです。

(1) マクロにより、エクセル中の画像を、すべて小さいサイズに変更する
(2) その小さいサイズの状態で、「図の圧縮」を実行する
(3) マクロにより、エクセル中の画像を、すべて元のサイズに変更する

4.実際にやってみる

実際にやってみると、以下のような形になります

(1)元ファイル・・・作業前 542KByte (処理前のデータです)
 「0改善前」をダウンロード

(2)「図の圧縮」後・・・542KByte (サイズは変わりませんでした)
 「1図の圧縮後」をダウンロード

(3)マクロ処理による図の縮小後・・・542KByte (サイズはまだ変わってません)
 「2縮小後」をダウンロード

(4)再度、「図の圧縮」後・・・97KByte (縮小したあとで圧縮し、サイズが劇的に減りました)
 「3再、図の圧縮後」をダウンロード

(5)マクロ処理により、サイズを復元します・・・97KByte (見た目も当初とほぼ同じです)
 「4サイズ復元後」をダウンロード

上記の手順により、画像を劣化させることにより、ファイルサイズの大幅な削減が可能です。

5.画像の縮小・拡大のマクロについて

全シートの、全画像を、一括処理にて、縮小/拡大するマクロは以下です

Const RITSU As Double = 1.5

Sub doDownSize()
    Dim sht As Variant
    Dim shps As Shape
    For Each sht In ActiveWorkbook.Sheets
        sht.Select
        For Each shps In ActiveSheet.Shapes
            Debug.Print shps.Name
    '        If Left(shps.Name, Len("Picture")) = "Picture" Then
            shps.Select
            Selection.ShapeRange.Width = Selection.ShapeRange.Width / RITSU
            Selection.ShapeRange.Height = Selection.ShapeRange.Height / RITSU
    '        End If
        Next
    Next
End Sub

Sub doUpSize()
    Dim sht As Variant
    Dim shps As Shape
    For Each sht In ActiveWorkbook.Sheets
        sht.Select
        For Each shps In ActiveSheet.Shapes
            Debug.Print shps.Name
    '        If Left(shps.Name, Len("Picture")) = "Picture" Then
            shps.Select
            Selection.ShapeRange.Width = Selection.ShapeRange.Width * RITSU
            Selection.ShapeRange.Height = Selection.ShapeRange.Height * RITSU
    '        End If
        Next
    Next
End Sub

 doDownSize()→「4.(3)マクロ処理による図の縮小」に相当

 doUpSize()→「4.(5)マクロ処理により、サイズを復元」

RITSUの数字は大きい値にするほど、「画像が粗くなり」「縮小率も上がり」ます。

通常は1.2~1.8程度を代入してください。

(1.5と入力すると、縮小時に1÷1.5=67%に縮小されるということです。)

 注(1) If Left(shps.Name~の文をコメントアウトしているので、すべてのシェイプについて、縮小拡大を行っています。これは、画像を含めグループ化を行っている際に、shps.Nameが、"Picture"ではなく"Group"等になり、縮小拡大対象とならないことへの措置です。(他のシェイプも縮小拡大されますが、図の圧縮により影響を受けないため、処理前後で内容は変わりません。)

 注(2) マクロの作成、実行方法は他をご参考ください。(簡単に言うと、①ALT+F11により編集画面を開き、②編集画面にマクロを貼り付け、③F5で実行です。)

6.データ一式

上記のエクセルファイル及び、マクロデータは以下で一式ダウンロードできます。

「_set.zip」をダウンロード

(「0改善前.xls」「3再、図の圧縮後.xls」「4サイズ復元後.xls」「マクロです.xls」の4ファイルが含まれています。)

7.おさらい

ここでは、画像ファイルを多数保持するエクセルファイルの、
サイズ削減方法
を提案しています。

基本「図の圧縮」を利用する方法ですが、マクロにより、全画像を一旦縮小表示して、その状態で「図の圧縮」をすることでより容量の削減率の高い、ファイルサイズ圧縮を実現するものです。

画像は、劣化されますが、ファイルサイズを減らすことが可能になります。

以上

============================

8.補足

ちなみに、「図の圧縮」を利用せずに、画像のカット&ペーストにより、画像を圧縮する方法もありえます。

「other_sample.xls」をダウンロード

この方法であれば、

メリット: 全自動
 (すべてマクロで実行でき、「図の圧縮」のようにダイアログへのクリックが無い。)

という良さがあります。

反対に

デメリット1:○や□や△といった図形のオートシェイプと、写真などの画像を混在させていた場合に注意が必要。
(①図形のオートシェイプを画像として貼ると透過性などが失われるため、場合分けが必要です。②画像を切り貼りするで、前面背面が入れ替わります。背面に送る処理は可能ですが、画像同士の前面背面関係にも配慮が必要です。③また、グループ化を行っている場合の適用も複雑になるため、一旦グループ化の解除等が必要になります。) 

デメリット2:JPEG画像とPNG画像の適用を誤ると、かえってファイル容量が増えてしまう。
(写真画像の場合はJPEG形式、WEB画面などの図形画像であればPNG形式というように、形式を使い分ける必要があります。)

といった、使用上の難しさがあります。

Sub doDownUPSize2()
    Dim sht As Variant
    Dim shps As Shape
    Dim x As Double
    Dim y As Double
    Dim sw As Double
    Dim sh As Double
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    Call UngroupAll
    For Each sht In ActiveWorkbook.Sheets
        If sht.Visible = xlSheetVisible Then
        sht.Select
        For Each shps In ActiveSheet.Shapes
            Debug.Print shps.Name
            If Left(shps.Name, Len("Picture")) = "Picture" Then
                shps.Select
                x = shps.Left
                y = shps.Top
                sw = Selection.ShapeRange.Width
                sh = Selection.ShapeRange.Height
                Selection.Cut
                'ActiveSheet.Paste
                ActiveSheet.PasteSpecial Format:="図 (拡張メタファイル)", Link:=False, DisplayAsIcon:=False
                'ActiveSheet.PasteSpecial Format:="図 (JPEG)", Link:=False, DisplayAsIcon:=False
                Selection.ShapeRange.Width = sw
                Selection.ShapeRange.Height = sh
                Selection.Left = x
                Selection.Top = y
            Else
                If Left(shps.Name, Len("Drop Down")) = "Drop Down" Then
                Else
                    shps.Select
                    Selection.ShapeRange.ZOrder msoBringToFront
                End If
            End If
        Next
        End If
    Next
    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic
End Sub
Sub UngroupAll()
    For Each sht In ActiveWorkbook.Sheets
        If sht.Visible = xlSheetVisible Then
        sht.Select
label1:
        For Each shps In ActiveSheet.Shapes
        If Left(shps.Name, Len("Group")) = "Group" Then
            shps.Select
            Selection.ShapeRange.Ungroup.Select
            GoTo label1
        End If
        Next
        End If
    Next
End Sub


| | コメント (2) | トラックバック (0)

単語学習用のフラッシュ(SWF)、「単語くん」

単語学習用のフラッシュ(SWF)、「単語くん」作ったよ。

http://oimotabe.com/tango.swf

もしくは「tango.swf」をダウンロード

1.約1000単語入ってます
2.swf自体は83KBです
3.使用するキーは(携帯電話での使用も考慮して)

  「1,2,3,4,5」キーのみです

4.スタートすると一番上に英単語が出ます
5.その訳の候補がしたに3つ出ます。
6.「1,2,3」いずれかを押して解答します
7.正答であれば「○」、誤答であれば、「×」
8.解答後は、「4」キーで次の出題になります。
9.あいまいな問は「5」で、パスとなります。
10.間違いまたはパスした問題は7問目に再度復習として出題されます。

単体で、ネット通信なく利用できるので、地下鉄等でも、実直に
単語勉強ができます。

| | コメント (0) | トラックバック (0)

契約書等の日本語の文書比較ツール

1.背景】■

・契約書等の頻繁に改変が行われる日本語文書について、
 新旧文書や、過去文書との比較を行いたい。

2.課題

(1)ワード利用
(a)ワード(Microsoft Word)の標準機能である比較機能は、
 どちらかの文書に、吹き出し形式で差異を表現する形であり、
 並列で表示するものではない。
(b)ワードの標準機能の比較機能は、得てして日本語文書比較には
 あまり精度が良くなく、一部差異があるパラグラフは、
 パラグラフごと「違う」として、表現されてしまう。

(2)コンペアツール利用
(a)フリーウェア等でよくあるコンペアツールは、主な対象が
 テキスト形式(.txt)である。
 契約書等の日本語文書は、主にワード文書(.doc)である。
(b)コンペアツールは、比較対象が主にプログラム等のソース
 コードであり、行毎の比較が行われる。
 行内の比較も行われるが、日本語文書を対象としたものでは
 ないことが多く、表示も見やすいとはいえない。

(3)市販の文書比較ツール
(a)市販の文書比較ツールは、ワードやPDFを比較できるものが
 あるが、数万円超の費用がかかる


3.対応

 上記課題を解決するため以下の特徴を持つ
 文書比較ツールを作成した。

(1)フリーウェアのツール
(2)日本語文書を対象(簡易的に文書解析も行う)
(3)ファイル形式はワード(.doc)とテキスト(.txt)

※まとめ
20080810084656

4.ダウンロード

契約書等の日本語文書比較ツール
http://www.vector.co.jp/soft/win95/util/se458625.html

◆画面イメージ
20080810085238

5.比較結果

(1)結果(HTML)[※S-JISです→] 「BunshoHikaku_Result.html」をダウンロード

(2)イメージ
20080810085420
20080810085450

| | コメント (2) | トラックバック (0)

モアレ除去子さんを利用した、モアレ除去例

『特定周波数領域を除去する、モアレ除去子さん』

http://www.vector.co.jp/soft/win95/art/se457963.html

モアレを除去するフリーウェア(フリーソフト)を紹介。

過去の参考記事はこちら




【モアレ除去例 その1】 *画像はwikipediaより取得(リンク
芥川龍之介
Rei01

処理前ファイル  ●処理後ファイル  ●マスクファイル



【モアレ除去例 その2】 *画像はwikipediaより取得(リンク
アミルカレ・ポンキエッリ
Rei02

処理前ファイル  ●処理後ファイルド  ●マスクファイル



【モアレ除去例 その3】 *画像はwikipediaより取得(リンク
太宰治
Rei03

処理前ファイル  ●処理後ファイル  ●マスクファイル



【モアレ除去例 その4】 *画像はwikipediaより取得(リンク
エミール・ワルトトイフェル
Rei04

処理前ファイル  ●処理後ファイル  ●マスクファイル


| | コメント (0) | トラックバック (0)

モアレ除去(ツール、フリーウェア、フリーソフト)

『特定周波数領域を除去する、モアレ除去子さん』

http://www.vector.co.jp/soft/win95/art/se457963.html

モアレを除去するフリーウェア(フリーソフト)を紹介。

 

【画像の特定の周波数領域を除去するマスクを手作業で作成するツール: モアレ除去子さん】

※モアレ除去例

================================================================================

  前提条件

================================================================================

2008.6.29

本ツールはVisual Basic (.net) Express 2008にて作成しており、使用には、.Netフレームワークが必要となります。

使用開始は、moire_jokyoko.exeを実行してください。

※本ソフトウェア使用において発生したいかなる障害に対して作者は何ら一切の保証が出来ません。ご了承ください。

 

================================================================================

  使用方法概要

================================================================================

●起動画面

Index1

 

●「ファイル読込」押下

Index2

 

●画像が読み込まれる

左:幅256×高さ256pixelの画像

右:全体像

Index3

 

●左画像をドラッグして、位置を合わせます。

 (右画像では操作できません。)

Index4

 

●「マスク作成」押下

→「マスク作成画面」へ

 

●マスク作成画面

左上:元画像

左下:FFT(高速フーリエ変換)後画像、実数部

中下:FFT(高速フーリエ変換)後画像、虚数部

Index5

 

 

●FFT画像の「星状」の部分を、クリックし、「マスク」化します

※マスク領域は、なるべく小さい方が、元画像を崩さずに済みます。

※星状の部分を「点」でカバーするようなマスクが望ましいです。

※モアレ状の部分を除去することで、きれいな画像が入手できますが、

 モアレ部分も「光」の成分を保持しているので、除去後は、若干「暗く」なります。

※マスクの作成には、ある程度「経験」が必要です。いろいろな画像で試して、

 やり方をつかんでください。

Index6

 

●「お試し変換(マスク適用)」ボタン押下。

中上:変換後画像(=マスク適用後=マスク部分の周波数成分除去後)

右上:マスク部分の画像(=除去された周波数成分部分の画像)

右下:マスク部分の画像の反転画像(=白黒反転処理しただけのもの)

Index7

 

●(マスク部分に問題がなければ)「戻る」ボタン押下

→メイン画面に戻る  

●「マスク適用」ボタン押下。処理開始。

Index8_2

 

●ファイル保存画面。画像ファイル名とフォルダを選択し、保存。

 

Index9

●終了

Index10

●モアレ除去の前後比較

Zengo

●変換前

Index11

●変換後

Index12

 

| | コメント (0) | トラックバック (0)

市販ケシポンの印影がなんか納得いかないので、自作ケシポンを作った、という話。

市販ケシポンの印影がなんか納得いかないので、自作ケシポンを作った、という話。

ケシポンは、
ダイレクトメールなどの自分の住所を、第三者が見てもわからないようにするため、記載の住所や名前などに上からスタンプを押印することで、書いてある文字等をわからなくするための個人情報保護のために特化してあるハンコのこと。

ケシポン↓ \997

http://bungu.plus.co.jp/sta/product/office/keshipon/

001
↑外観

002
↑ハンコ面

003
↑印影

上記URLに曰く「ダイレクトメールの宛名や印刷物に多いゴシック字体・明朝字体を見えにくくする新開発特殊印面パターン。」
とあったのだが、どうにも、
見えにくくする、という機能を果たせてないと思った。

???

お題「住所を見えにくくする、のダミーの文字は???」

私の答え「住所を見えにくくすることができるのは、住所だろう」

ということで、
オンラインのハンコ作成サービスを使って、自作してみました。

004
↑自作ハンコのハンコ面

005
↑印影

006

「006.pdf」をダウンロード
↑ハンコやに送った画像ファイルのPDF(実際に送付したのイラレの.aiファイル「006.ai」をダウンロード

(なおダミーに使った住所は雑貨・服飾店の店舗所在地データ。)

株式会社ハンコヤドットコムhttp://www.hankoya.com/
↑利用した、サービス

角型印1551 価格     \3,020(税込
http://shachihata.hankoya.com/shachihata/item/kakugata/1551.html
↑つくったのは、15×51ミリの、角型1551ってやつ。

(ちなみに、ファイル送付してから、1日で届いた。早い。)

-------------

感想。

市販ケシポンは、インクが工夫してあり、

通常のハンコより、印刷物のインクに近い仕上がりで、

文字の消去に一役買っている様子。

自作ハンコは、住所を住所で消す、という発想で、

消しこみ力は結構うまくいったと思うが、もうすこしハンコ面の住所文字数は、もうちょっと少なくてもよかったかも。

----------------------

2008.7.19 追記

コクヨから、以下が発売!  パクられた!笑

でも、「転がす」は思いつかなかったなぁ。流石かも。

文字をなぞって隠すローラー式スタンプを発売
~セキュリティローラースタンプ「かくしタロー」~
http://www.kokuyo.co.jp/press/news/20080716-842.html

http://www.kokuyo.co.jp/press/news/page_img/20080716_01.jpg
20080716_01

http://www.kokuyo.co.jp/press/news/page_img/20080716_03.jpg
20080716_03


| | コメント (1) | トラックバック (1)

その他のカテゴリー

モノ・ツール | 書評