エディタ(手作業)でPDFを作る 【図形編】

 

前回はPDF構造について書きました。今回は基本図形について書きます

 

情報収集

 

基本図形

  • オペレーター

                                      POSTSCRIPT 

               OPERATOR  EQUIVALENT       DESCRIPTION

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

開始            m               moveto                Begin new subpath 

線                l                  lineto                Append straight line segment to path

カーブ        c              curveto            Append curved segment to path

                                         

        

加色混合   rg       setrgbcolor  塗色 Set RGB color for nonstroking operations

                  RG              setrgbcolor.       線色Set RGB color for stroking operations

減色混合   k                 setcmykcolor     塗色 Set CMYK color for nonstroking operations

                  K                 setcmykcolor     線色 Set CMYK color for stroking operations

線幅           w               setlinewidth        Set line width

線端           J                setlinecap           Set line cap style

                             

線折れ       j                 setlinejoin            Set line join style

                             

波線          d                setdash.               Set line dash pattern

                             

 

  • 描画-塗り(Path-Painting Operators)

                                      POSTSCRIPT 

               OPERATOR  EQUIVALENT       DESCRIPTION

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

               s                     closepath,stroke    Close and stroke path

               S                     stroke                       Stroke path

               f                       fill                             Fill path using nonzero winding number rule

                             

                F                     fill                           Fill path using nonzero

                                                                      winding number rule (obsolete)

                               

               b                    closepath, fill, stroke   Close, fill, and stroke path

                                                                              using nonzero winding number

               B                    fill, stroke                       Fill and stroke path

                                                                              using nonzero winding number rule

  • サンプル
    • 作画データ                                      説明

      0 0 0 0 K                                          Set CMYK color for stroking operations
      1 J                                                     Set line cap style

      1 j                                                      Set line join style

                    0.5 w                                                Set line width

 

                   []0 d                                                  Set line dash pattern

 

                    0 0 0 0.2 k                                       Set CMYK color for nonstroking operations

                    8.50     35.78 m                               Begin new subpath 

                    8.50   205.75 l                                 Append straight line segment to path

                   475.92   205.75 l  

                   475.92     95.27 l  

                   246.46     95.27 l  

                   246.46     35.78 l    

                   8.50     35.78 l

                   f                                                        Fill path using nonzero winding number rule

文字

  • Encoding

           

  • フォント名   

           

  • オペレーター

                                     POSTSCRIPT 

               OPERATOR  EQUIVALENT       DESCRIPTION

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

開始            BT                                            Begin text object

終了            ET                                            End text object

アフィン    Tm                                            Set text matrix and text line matrix

                                         

フォント     Tf                selectfont          Set text font and size

                                         

表示              Tj                 show                   Show text

CR,LF           T*                                             Move to start of next text line

                                         

  • サンプル
    • 作画データ                                                  備考

    •  

      BT                                                               Begin text object
       0.9  0.0   -0.0  1.0   10.0   735 Tm        Set text matrix and text line matrix         

                                                                          位置X:10 Y:735 横書き 長体1                         

      /F0 10.0 Tf                                                 Set text font and size

                                                                         フォント /F0.   10Q

                                                                      前回記事「エディタ(手作業)でPDFを作る」で指定

                                                                                     

                   (Hello PDF) Tj                                     Show text

                   T*                                                                Move to start of next text line
                    ET                                                               End text object

 

参考図書

最後まで読んでいただき、ありがとうございます

 

 

 

庭で夏野菜2

裏の庭に植えた記録を書いていきます

2024年4月28日

気温が27度と暑く、汗かきながらの作業で疲れました

 

  

  • 4月28日
    • キュウリ

   

    • ナス

   

    • ピーマン

   

    • オクラは種まきしました

  • 5月28日
    • キュウリ

     花が2つ咲きましたが、育成のため摘みました。

     もう少し大きくなったら、病気にならないように下の葉も摘みます

     

    • ナス

     大きくなってきたので、添え木で固定しました。

     

    • ピーマン

     花が咲き始めました。花は摘みません

     

    • オクラは種まきしましたが、芽が出ません(ショックです)

 

 

 

 

中国語 20年前のできごと

思いで。。。忘れた中国語

  • 20年前、9ヶ月間かけて中国語を学びましたが、そのこと自体は覚えていますが、内容はすっかり忘れてしまいました。
  • 今日、滅多に使っていないファイル保管場所を見てみると、「中国語の基礎文法120225.mm」というファイルがあることに気付きました。
  • その時、使っていたソフトウェア「FreeMind」をインストールして、中身を見てみましたが、完全に忘れてしまっていました。短期記憶は本当にダメですね。

  

 

  • 天津

  

 

デミオ(DJ系) キーレス連動ドアミラ設置とヘッドライトLED化

経緯

              

    • 説明書が同封されていました

           

道具を揃える(既にあるものを使います)

      

    • 理由
      • 本線の導線をキズつける
      • 接触確認が難しい
      • ハンダでの結線はトヨタAQUAで失敗している
    • お勧めのやり方

Do it yourself (2024年5月11日に取付けました)

  • ドアの内張り剥がしました

            

     

    • ロック時プラスを接続
    • アンロック時プラスを接続
  • 出来ました。
    • ドア内張り剥がし、3ケ所スプライス接続するだけですので簡単でした

ヘッドライト交換

   

  • 右側(運転席側)は、手が入らないのでタイヤハウス側からの交換となります

   

   タイヤハウスにあるアンダーフェンダーを取り外します

   

   ランプをここから交換できました

   

 

ここまで読んでいただき、ありがとうございます

 

 

 

 

エディタ(手作業)でPDFを作る.

注)PDFリーダーは、Foxit PDF Readerをお使いください

情報収集

  • PDFのマニュアルを入手する

  • 構造の解説

    • ヘッダ
      •  PDFのバージョン
        • 「#PDF-1.3」
          • 「1」はメジャーバージョン
          • 「3」はマイナーバージョン
      • 4つ以上のバイナリ文字を含むコメント行がある場合は、バイナリデータあり
    • ボディ
      • 「1 0 obj」で始まります
        • 「1」はオブジェクト番号
        • 「0」は世代番号
      • 辞書オブジェクト
        • 「<<」は辞書の開始
        • 「Length」はstreamからendstreamまでバイト数(無くても大丈夫。エラー無く表示出来ます)
        • 「>>」は辞書の終了
      • ストリームオブジェクト
        • 「stream」は開始
        • 内容を記載:例
          • 「10 10 m」x:10 y:10にmove to
          • 「S」show  
        • 「endstream」終了
    • クロスリファレンステーブル(無くても大丈夫。エラーなく表示できます)
      • 「xref」で始まります
      • 「05」は、リファレンス数です
      • 「0000000000」は先頭からのバイト数
      • 「00000」は世代番号です
    • トレーラ
      • 「trailer」で始まります
      • 「/Size 5」は最大のオブジェクト番号(4)+1 です
      • 「/Root 1 0 R」開始するオブジェクト番号です
      • 「startxref 999」999は先頭からクロスレファレンスまでのバイト数。
        • 面倒なので、「0」を入れても大丈夫。エラーなく表示できます

上記説明をもとに通常のPDFを省略してみました

通常(間接オブジェクト) 縮小版 (直接記述
テーブル省略も可能)
%PDF-1.3
1 0 obj
<< /Type /Catalog
/Pages 2 0 R
>>
endobj

2 0 obj
<< /Type /Pages
/Kids [ 3 0 R ]
/Count 1
>>
endobj

3 0 obj
<< /Type /Page
/Parent 2 0 R
/MediaBox [ 0 0 612 792 ]
/Contents 4 0 R
>>
endobj

4 0 obj
<< /Length 18 >>
stream
10 10 100 100 re
S
endstream
endobj

xref
0 5
0000000000 65535 f
0000000009 00000 n
0000000062 00000 n
0000000128 00000 n
0000000227 00000 n

trailer
<< /Size 5
/Root 1 0 R
>>
startxref
296
%%EOF
%PDF-1.3
1 0 obj
<< /Type /Catalog
/Pages
<< /Type /Page
/MediaBox [ 0 0 210 300 ]
/Contents
<< >>
stream
10 10 100 100 re
S
endstream
>>
>>
endobj

trailer
<<
/Root 1 0 R
>>
%%EOF

図形の書き方

  • 詳細は、PDFのマニュアルのAPPENDIX A Operator Summaryを参照してください
  • 基本図形
Path PDF 備考
移動 Begin new subpath
Line segment to path
カーブ Curved segment to path (three control points)
文字 Tj T* Show text

サンプル

  • 文字の定義を追加しています
  • Foxit PDF Reader以外でも大丈夫です
%PDF-1.7

1 0 obj
<<
  /Type /Catalog
  /Pages 2 0 R
>>
endobj

2 0 obj
<<
  /Type /Pages
  /Kids [4 0 R]
  /Count 1
>>
endobj
3 0 obj
<<
  /Font <<
    /F0 <<
      /Type /Font
      /BaseFont /Helvetica
      /Encoding/WinAnsiEncoding
      /Subtype /Type1
      /FontDescriptor 6 0 R
    >>
    /F1 <<
      /Type /Font
      /BaseFont /Helvetica-Bold
      /Encoding/WinAnsiEncoding
      /Subtype /Type1
      /FontDescriptor 7 0 R
    >>
    /F3 <<
      /Type /Font
      /BaseFont /GothicBBB-Medium
      /Subtype /Type0
      /Encoding /90ms-RKSJ-H
      /DescendantFonts [9 0 R]
    >>
  >>
>>
endobj

6 0 obj
<<
  /Ascent 718
  /CapHeight 718
  /Descent -207
  /Flags 32/
  FontBBox[-166 -225 1000 931]
  /FontName/Helvetica
  /ItalicAngle 0
  /StemH 88
  /StemV 88
  /Type/FontDescriptor
  /XHeight 523
>>
endobj

7 0 obj
<<
  /Ascent 718
  /CapHeight 718
  /Descent -207
  /Flags 262176
  /FontBBox[-170 -228 1003 962]
  /FontName/Helvetica-Bold
  /ItalicAngle 0
  /StemH 140
  /StemV 140
  /Type/FontDescriptor
  /XHeight 532
>>
endobj

8 0 obj
<<
<<
  /Ascent 718
  /CapHeight 718
  /Descent -207
  /Flags 32/
  FontBBox[-166 -225 1000 931]
  /FontName/SymbolMT
  /ItalicAngle 0
  /StemH 88
  /StemV 88
  /Type/FontDescriptor
  /XHeight 523
>>
>>
endobj

9 0 obj
<<
  /Type /Font
  /Subtype /CIDFontType0
% /BaseFont /KozGoPro6N-Regular
  /BaseFont /GothicBBB-Medium
  /CIDSystemInfo 
  <<
    /Registry (Adobe)
    /Ordering (Japan1)
    /Supplement 6
  >>
  /FontDescriptor 10 0 R
>>
endobj

10 0 obj
<<
  /Type /FontDescriptor
/BaseFont /KozGoPro6N-Regular
  /FontName /GothicBBB-Medium
  /Flags 4
  /FontBBox [-437 -340 1147 1317]
  /ItalicAngle 0
  /Ascent 1317
  /Descent -349
  /CapHeight 742
  /StemV 80
>>
endobj

4 0 obj
<<
  /Type /Page
  /Parent 2 0 R
  /Resources 3 0 R
  /MediaBox [0 -12 520 746]
  /Contents 5 0 R
>>
endobj

5 0 obj
<< >>
stream

0 0 00 K
0 i
1 J 1 j  []0 d -0.4 Ts

endstream
endobj

xref
trailer
<<
  /Size 6
  /Root 1 0 R
>>
startxref
0
%%EOF

  • 手作業で作成したPDFは「pdftk」で変換してから皆さんに配布して下さい  
    • 省略した部分が正しく記載されています   

applewatch お魚釣りにM1 Timer

思い

紀州釣り、筏釣りをする時、ダンゴの割れぐらいをコントロールすることで、釣果を向上させたい

 

背景

紀州釣りや筏釣りを通じてストレスを解消し、自然と触れ合うことでリフレッシュしたい

釣りのテクニックや知識を向上させ、釣果を向上させたい

ダンゴの割れなど細かな要素をコントロールすることにこだわりがある

 

イデア

紀州釣りはウキの動き、筏釣りでは穂先の動きを見ている。その際、時間の経過に伴うダンゴの割れ方を確認する

 

実行

グーグル先生に聞いてみたら、うってつけのタイマーがありました

さん」そのまま使わせて頂きます。

 

ソースを入手

GitHub - 0si43/M-1Timer: Timer App vibrating per minute

 

コンパイル、実装

 

シミュレータ

  

 

実機

 

 

ここまで読んでいただき、ありがとうございます

 

 

 

 

 

月に一度の風呂掃除

月1は

 

日々は

 

ここまで読んでいただき、ありがとうございます

 

 

 

 

キーボードのワイヤレス化【経過報告】

 


経緯

  • 2024年4月22日にメールが届きました。ワイヤレスキーボード用USBケーブル付きコンバーター,Bluetooth 2.4,5.3gが紹介されています

         

   

   

テスト

  • テスト用バッテリとUSB-Aコードをアマゾンさん発注しました。4月29日到着しましたレポートします
  • モード切り替え
    • (BIuetooth mode) Ctrl +AI+Shift+Q
      BIue status light flashes,indicating waiting for pairing connection, blue light is constantW on, indicating a successful connection
      Multi-device switch hotkey for Biuetooth mode: Ctrl+Alt+Shift+1 to 8, supporting a total of 8 devices.
    • (USB mode) Ctrl+Alt+Shift+W
      Red status l ight is constantly on.
    • (Wireless 2.4G mode) Ctrl+AIt+Shift+E
      purple status light is constantly on (red and blue lights are both on).
      Muiti-device switch hotkey br wireless 2、4G mode: Ctr1+AIt+Shift+1 to 8, suppoIting a tota l of 8 devices
  • バッテリをハンダ付けし、USBを繋ぎました。

       

    • (BIuetooth mode) Ctrl +AI+Shift+Q としましたので青色LEDが点灯しています
    • Macで接続し、この記事を書いています

    • 電源はボタンを1回押すとOnになります。2回連続で押すとOffになります。Power Power switch: press once to turn on, press twice continuously to turn off.
    • 動作確認できました。キーボードに入れるバッテリが来ましたら、またレポートします。

実装

  • キーボードにバッテリーを入れるスペース(130×34×5 単位mm)

   

  • ここに入るバッテリーを購入(130×32×3 単位mm)

   

  • 配送情報がメールで届きました。お届け予定日が7月だそうです。ビックリです

         

   

  • カバーを被せます

   

  できました。

 

最後まで見てくださり、ありがとうございます

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ここまで読んでいただき、ありがとうございます

 

 

 

庭で夏野菜

畑準備

  •  

  • 玄関の脇に小さな畑を耕しておきました

   

裏の庭に植えました

気温が27度と暑く、汗かきながらの作業で疲れました

 

  

  • キュウリ

   

  • ナス

   

  • ピーマン

   

  • オクラは種まきしました

 

 

 

 

プライバシーポリシー |ページトップへ

`