印刷時のヘッダ部分の表示No.41597
cmgm4 さん 11/10/02 01:51
 
メールをプリンタで印刷することがあるのですが、

「印刷用ヘッダ」にチェックを入れて受信or送信したメールを印刷すると、ヘッダに
タイトル、送信/受信者、日付・時間が一行で印刷されますよね。

タイトルや送信/受信者が長い場合、日付と時間が一行に入りきらなくなりますが、
フォントサイズがある程度小さいと、タイトルや送信者の最後が「…」と表示され、
日付と時間が優先的に表示されるのですが、
フォントサイズがある程度(たとえば13)大きいと、日付と時間が表示されなくな
ってしまいます。

なんとか対処する方法はないでしょうか?

[ ]
RE:41597 印刷時のヘッダ部分の表示No.41598
Iranoan さん 11/10/02 02:27
 
 cmgm4 さん今日は、一ユーザの Iranoan です。
> 「印刷用ヘッダ」にチェックを入れて受信or送信したメールを印刷すると、ヘッダに
> タイトル、送信/受信者、日付・時間が一行で印刷されますよね。
>
> タイトルや送信/受信者が長い場合、日付と時間が一行に入りきらなくなりますが、
・「簡略表示」「すべて表示」でヘッダの表示する
・秀丸パブリッシャー利用する
のどちらかの方法があります。

[ ]
RE:41597 印刷時のヘッダ部分の表示No.41607
秀まるお2 さん 11/10/03 09:54
 
 Iranoanさんの話と重なりますが、秀丸パブリッシャーを使って印刷テンプ
レートを作って印刷するのがお勧めです。

 秀丸パブリッシャーで「レイアウト編集...」を押して、そこでツールバーの
「BOXの新規追加」をしてからBOXをダブルクリックして、テキストの属性を
「ファイル名」にすると、メールのタイトルが出てきます。

 属性を「タイムスタンプ」にすると、送受信日時が出てきます。

 その辺うまく活用していただくか、あとは印刷の時に簡略表示ヘッダをONにし
て印刷するとかの作戦があります。

 あと他には、うちのライブラリに印刷に便利なマクロがアップロードされてる
ので、その辺を探していただくと何か適当なのがあるかもしれません。

秀丸メールマクロライブラリ:
http://hide.maruo.co.jp/lib/tkmacro/index.html

[ ]
RE:41607 印刷時のヘッダ部分の表示No.41610
cmgm4 さん 11/10/03 13:59
 
Iranoanさん, 秀まるお2さん、ありがとうございます。

簡略ヘッダをONにして、送受信日時を印刷する方が簡単そうなのですが、Date: ヘ
ッダで
表示されるのは送受信日時ではないんですね。何か上手い方法ってあるのでしょうか?

秀丸パブリッシャーも試してみました。こんなすごいソフトが準備されているとは
つゆ知らず・・。 

> 秀丸パブリッシャーで「レイアウト編集...」を押して、そこでツールバーの
>「BOXの新規追加」をしてからBOXをダブルクリックして、テキストの属性を
>「ファイル名」にすると、メールのタイトルが出てきます。
>
> 属性を「タイムスタンプ」にすると、送受信日時が出てきます。

属性を「タイムスタンプ」にしてみたのですが、
送受信日時が表示されず、空欄のままになってしまっています。
なぜでしょうか??

[ ]
RE:41610 印刷時のヘッダ部分の表示No.41611
秀まるお2 さん 11/10/03 15:22
 
 秀丸パブリッシャーでタイムスタンプを表示させるのは、一応、特にこれとい
って難しいことは無いはずなんで、なぜうまく出てこないのかはちょっとよく分
からないですけども…

 僕の所での「BOX1」のプロパティと、さらにそれでプレビューした時の画面
ハードコピーをアップロードしたので、それと見比べてみて欲しいです。何か違
う所があったら同じにしていただけるとうまく出てくるようになるんじゃないか
と思います。

https://picasaweb.google.com/106323526345772586801/2011103#5659146541226896978

 プレビューウィンドウの左上付近に出てるのが送受信日時になります。

[ ]
RE:41611 印刷時のヘッダ部分の表示No.41612
cmgm4 さん 11/10/03 15:40
 
秀まるお2さん、ご親切にありがとうございます。

「BOX1のプロパティ」のダイアログで属性を「タイムスタンプ」以外にすると、ちゃ
んと表示されるんですが、「タイムスタンプ」を選ぶと空白になってしまうようです。

[ ]
RE:41612 印刷時のヘッダ部分の表示No.41613
秀まるお2 さん 11/10/03 16:00
 
 あと考えられるのは、秀丸メール/秀丸パブリッシャーのバージョンが古くて
ダメって可能性があるかもしれないので、もしも最新版でない場合は最新版を入
れてみるって作戦があります。

 秀丸メールはV5.70
 秀丸パブリッシャーは、V4.10

 が最新です。

 それでもダメでしたら、一度秀丸パブリッシャー担当に聞いてみます。

[ ]
RE:41613 印刷時のヘッダ部分の表示No.41615
cmgm4 さん 11/10/03 16:23
 
私の環境も、両方とも同じ、

> 秀丸メールはV5.70
> 秀丸パブリッシャーは、V4.10

最新版のようです。
お手数をおかけしますが、宜しくお願いします。

[ ]
RE:41615 印刷時のヘッダ部分の表示No.41617
秀まるお2 さん 11/10/03 16:46
 
 すみません。テストしてたら1つバグが見つかってしまいました。

 メールをエディタ・ウィンドウで開いて印刷すると、送受信日時が印刷されな
くなってしまうようです。

 秀丸メール本体ウィンドウ上で印刷した場合はうまく出ると思いますが、それ
でどうでしょうか。

 これはこれでバグなのでさっそく修正させていただきますけども…

[ ]
RE:41617 印刷時のヘッダ部分の表示No.41618
cmgm4 さん 11/10/03 17:21
 
バクでしたか! 修正して頂けるようで嬉しいです。

> 秀丸メール本体ウィンドウ上で印刷した場合はうまく出ると思いますが、それ
>でどうでしょうか。

いま、秀丸メール本体ウィンドウ上から印刷してみましたら、ばっちり上手く行きま
した!

[ ]
RE:41618 印刷時のヘッダ部分の表示No.41620
秀まるお2 さん 11/10/03 21:08
 
 お手数かけてすみません。おかげさまでバグが1つ見つかって助かりました。

 修正版の方は、いわゆるβ版という形でなるべく早めにアップロードさせてい
ただきます。

[ ]
RE:41620 印刷時のヘッダ部分の表示No.41624
秀まるお2 さん 11/10/04 10:04
 
 先ほどV5.72β13をアップロードしました。一応これで直っているはずという
ことで、もしよかったら使ってみて欲しいです。

 MS-IME2010との相性問題対策の関係がまだちょっと不安定で、β13でもまた手
を入れてしまった所てすが…。もし不安定になるのが不安でしたら正式版まで待
っていただいた方がいいです。
 (秀丸メール本体ウィンドウから印刷すれば回避出来るしということで)

[ ]
RE:41624 印刷時のヘッダ部分の表示No.41625
cmgm4 さん 11/10/04 14:48
 
ありがとうございました。
V5.72β13を使ってみたところ、希望通りに表示されました!

[ ]
RE:41625 印刷時のヘッダ部分の表示No.41674
cmgm4 さん 11/10/18 06:43
 
追加なんですが、

「タイムスタンプ」ですと、相手がメールを送信した時間ではなくて、
こちらがメールを受信した時間が表示されますよね?

そうではなくって、相手がメールを送信した時間を表示する方法ってあるのでしょう
か?

[ ]
RE:41674 印刷時のヘッダ部分の表示No.41676
秀まるお2 さん 11/10/18 13:50
 
 相手がメールを送信した日時は、Date:ヘッダを印刷する作戦でやってもらう
しか無いです。

 Date:ヘッダの内容が英語になってしまうのが欠点ですけども…

 やり方としては、

 1.「設定・全般的な設定...」を実行して左下にある「上級者向け設定」を
   ONにする。

 2.設定一覧から「メール表示・ヘッダ」を選択する。
 3.そこの「受信メールの時」の中に、Date:を手で追加する。

 で、あとは、ヘッダを簡略表示にして印刷する形になります。

 Date:ヘッダの内容を無理矢理日本語にして印刷することも、一応、マクロを
使えば可能ではあります。もし必要でしたら連絡ください。

[ ]
RE:41676 印刷時のヘッダ部分の表示No.41678
cmgm4 さん 11/10/18 15:39
 
さっそくのお返事ありがとうございます。
秀丸パブリッシャでは出来ないんですか。。。ちょっと残念です!


> Date:ヘッダの内容を無理矢理日本語にして印刷することも、一応、マクロを
>使えば可能ではあります。もし必要でしたら連絡ください。


教えていただけないでしょうか!

[ ]
RE:41678 印刷時のヘッダ部分の表示No.41679
秀まるお2 さん 11/10/18 17:53
 
 パブリッシャーで印刷してもDate:ヘッダの内容がうまく印刷されます。

> > Date:ヘッダの内容を無理矢理日本語にして印刷することも、一応、マクロを
> >使えば可能ではあります。

 マクロ内容は以下の通りとなります。こういうマクロを1つ作って実行すれば、
Date:ヘッダの内容が日本語になって印刷されます。

 このマクロを実行する前提として、簡略表示ヘッダの中にDate:ヘッダを表示
する設定になってることと、あと、印刷の時にヘッダ表示モードが簡略表示にな
ってることが必要です。



    loaddll "tkinfo.dll";
    #n = dllfunc("EnterPrintMulti");

    #readonly = readonly;
    if( #readonly ) readonlyswitch;

    begingroupundo;
    gofiletop;
    while(1) {
        searchdown "^Date:     [^ ]", regular, casesense;
        if( !result ) {
            break;
        }
        if( (colorcode & 0x1F) != 3 ) {
            continue;
        }
        $date = gettext( 10, y, 256, y );
        $date = dllfuncstr("FormatDate", $date, "YYYY/MM/DD(W曜日) hh:mm:ss");
        moveto 10, y;
        beginsel;
        golineend2;
        delete;
        insert $date;
    }
    endgroupundo;

    openreg "CURRENTUSER", "Software\\Hidemaruo\\Hmpv\\Conf";
    $template = getregstr("StartHPT");
    closereg;

    openreg "CLASSESROOT"
        , "CLSID\\{3790E08E-DA26-41E2-B6B7-A2C2DED41C2F}\\InprocServer32";
    if( ! result ) {
        message "秀丸パブリッシャーがインストールされていません。";
        endmacro;
    }
    $path = getregstr("");
    closereg;
    loaddll $path;
    if( !result ) {
        message "HidemaruApi.dllのロードに失敗しました。ファイル名 = "
                 + $path;
        endmacro;
    }
    #n = dllfunc("PrintDialog", hidemaruhandle(0), $template, 0,0,0,1,0 );
    undo;
    if( #readonly ) readonlyswitch;
    loaddll "tkinfo.dll";
    #tmp = dllfunc("LeavePrintMulti");

[ ]
RE:41625 印刷時のヘッダ部分の表示No.41692
cmgm4 さん 11/10/19 15:20
 
秀まるお2さん


教えていただいた、印刷時にメールの受信/送信時間を日本語表示するマクロを実行
してみたのですが、

tkinfo.dll: エディタ上で実行できないTKInfo.dll呼び出しが行われました。
関数コード=178

というメッセージが出た後に、秀丸パブリッシャの印刷ダイアログが表示されます。

その後、

tkinfo.dll: エディタ上で実行できないTKInfo.dll呼び出しが行われました。
関数コード= 179

というダイアログも表示されます。
印刷結果は、相変わらず英語のままで、うまくいっていないようです。

Date: Tue, 18 Oct 2011 21:18:15 +0200

のように表示されています。


----------------------
    loaddll "tkinfo.dll";
    #n = dllfunc("EnterPrintMulti");

    #readonly = readonly;
    if( #readonly ) readonlyswitch;

    begingroupundo;
    gofiletop;
    while(1) {
        searchdown "^Date:     [^ ]", regular, casesense;
        if( !result ) {
            break;
        }
        if( (colorcode & 0x1F) != 3 ) {
            continue;
        }
        $date = gettext( 10, y, 256, y );
        $date = dllfuncstr("FormatDate", $date, "YYYY/MM/DD(W曜日) hh:mm:ss");
        moveto 10, y;
        beginsel;
        golineend2;
        delete;
        insert $date;
    }
    endgroupundo;

    openreg "CURRENTUSER", "Software\\Hidemaruo\\Hmpv\\Conf";
    $template = getregstr("StartHPT");
    closereg;

    openreg "CLASSESROOT"
        , "CLSID\\{3790E08E-DA26-41E2-B6B7-A2C2DED41C2F}\\InprocServer32";
    if( ! result ) {
        message "秀丸パブリッシャーがインストールされていません。";
        endmacro;
    }
    $path = getregstr("");
    closereg;
    loaddll $path;
    if( !result ) {
        message "HidemaruApi.dllのロードに失敗しました。ファイル名 = "
                 + $path;
        endmacro;
    }
    #n = dllfunc("PrintDialog", hidemaruhandle(0), $template, 0,0,0,1,0 );
    undo;
    if( #readonly ) readonlyswitch;
    loaddll "tkinfo.dll";
    #tmp = dllfunc("LeavePrintMulti");

[ ]
RE:41692 印刷時のヘッダ部分の表示No.41693
秀まるお2 さん 11/10/19 16:36
 
 失礼しました。僕の作ったマクロですが、秀丸メール本体ウィンドウ上で実行
される前提になっていて、エディタ・ウィンドウ上だとうまく動いてませんでし
た。

 エディタ・ウィンドウ上でもうまく動くように直してみました。これでどうで
しょうか。

    #x = x;
    #y = y;
    loaddll "tkinfo.dll";
    if( dllfunc("IsHidemaruMailMain") ) {
        #n = dllfunc("EnterPrintMulti");
    }

    #readonly = readonly;
    if( #readonly ) readonlyswitch;
    #browsemode = browsemode;
    if( #browsemode ) browsemodeswitch;

    begingroupundo;
    moveto 0, -9999;
    while(1) {
        searchdown "^Date:     [^ ]", regular, casesense;
        if( !result ) {
            break;
        }
        if( (colorcode & 0x1F) != 3 ) {
            continue;
        }
        $date = gettext( 10, y, 256, y );
        $date = dllfuncstr("FormatDate", $date, "YYYY/MM/DD(W曜日) hh:mm:ss");
        moveto 10, y;
        beginsel;
        golineend2;
        delete;
        insert $date;
    }
    endgroupundo;

    openreg "CURRENTUSER", "Software\\Hidemaruo\\Hmpv\\Conf";
    $template = getregstr("StartHPT");
    closereg;

    openreg "CLASSESROOT"
        , "CLSID\\{3790E08E-DA26-41E2-B6B7-A2C2DED41C2F}\\InprocServer32";
    if( ! result ) {
        message "秀丸パブリッシャーがインストールされていません。";
        endmacro;
    }
    $path = getregstr("");
    closereg;
    loaddll $path;
    if( !result ) {
        message "HidemaruApi.dllのロードに失敗しました。ファイル名 = "
                 + $path;
        endmacro;
    }
    #n = dllfunc("PrintDialog", hidemaruhandle(0), $template, 0,0,0,1,0 );
    undo;
    if( #readonly ) readonlyswitch;
    if( #browsemode ) browsemodeswitch;
    loaddll "tkinfo.dll";
    if( dllfunc("IsHidemaruMailMain") ) {
        #tmp = dllfunc("LeavePrintMulti");
    }
    moveto #x, #y;

[ ]
RE:41693 印刷時のヘッダ部分の表示No.41694
cmgm4 さん 11/10/19 17:06
 
完璧に動きました!

ありがとうございました。
ところで、これは秀丸パブリッシャーのインストールが前提なんですよね?

[ ]
RE:41694 印刷時のヘッダ部分の表示No.41695
秀まるお2 さん 11/10/19 17:36
 
> ところで、これは秀丸パブリッシャーのインストールが前提なんですよね?

 そういう前提でマクロを作ってしまいましたが、必要ならば、秀丸パブリッシ
ャー無しでも印刷出来るように直すことも可能ではあります。

 テストが大変なのでとりあえず秀丸パブリッシャー前提にしました。

[ ]
RE:41695 印刷時のヘッダ部分の表示No.41696
cmgm4 さん 11/10/19 18:40
 
>> ところで、これは秀丸パブリッシャーのインストールが前提なんですよね?
≪全文引用されていたのでコミュニテックス会議室システムが引用部分を省略処理し
ました。≫
> テストが大変なのでとりあえず秀丸パブリッシャー前提にしました。

そうでしたか。
パブリッシャ無しバージョンもあれば嬉しいです。。。

[ ]
RE:41696 印刷時のヘッダ部分の表示No.41705
秀まるお2 さん 11/10/20 11:47
 
 今ちょっとテストしたら、秀丸パブリッシャーで印刷する用の面倒な処理は、
最近の秀丸エディタ/秀丸メールでは必要なくて、単に「print」命令だけで秀
丸パブリッシャーでの印刷も出来るようでした。

 なので、マクロは以下の内容になりまして、それで、「設定・秀丸エディタの
動作環境・印刷」の所で指定された通りの方法で印刷されるようです。

 ということでお願いします。

    #x = x;
    #y = y;
    loaddll "tkinfo.dll";
    if( dllfunc("IsHidemaruMailMain") ) {
        #n = dllfunc("EnterPrintMulti");
    }

    #readonly = readonly;
    if( #readonly ) readonlyswitch;
    #browsemode = browsemode;
    if( #browsemode ) browsemodeswitch;

    begingroupundo;
    moveto 0, -9999;
    while(1) {
        searchdown "^Date:     [^ ]", regular, casesense;
        if( !result ) {
            break;
        }
        if( (colorcode & 0x1F) != 3 ) {
            continue;
        }
        $date = gettext( 10, y, 256, y );
        $date = dllfuncstr("FormatDate", $date, "YYYY/MM/DD(W曜日) hh:mm:ss");
        moveto 10, y;
        beginsel;
        golineend2;
        delete;
        insert $date;
    }
    endgroupundo;
    print 1;
    undo;
    if( #readonly ) readonlyswitch;
    if( #browsemode ) browsemodeswitch;
    loaddll "tkinfo.dll";
    if( dllfunc("IsHidemaruMailMain") ) {
        #tmp = dllfunc("LeavePrintMulti");
    }
    moveto #x, #y;

[ ]
RE:41705 印刷時のヘッダ部分の表示No.41706
cmgm4 さん 11/10/20 16:08
 
秀まるお2さん

ご丁寧にありがとうございました。
いま、私のPCではパブリッシャーがインストールされていますので、
パブリッシャーを使わない環境で試してみたいと思います。

[ ]