目次
はじめに
この記事は「Ultimate Postcard Generator (ウルティメイト ポストカード ジェネレータ)」の使い方についての記事です。
コードの説明についてはこちらをご参考ください。
作ったあらましについてはこちらを参考にしてください。
CSVデータの作成
PosGoではGoogleスプレッドシートのデータを利用します。
サンプルとして使っているスプレッドシートは下記です。
(上記データの住所については実在しないデータとなっています)
PosGoで使うデータでは、一行目にキーワードとなる見出し行が必要です。
この一行目の見出し行をキーワードとしてデータを入れています。
キーワード | 説明 |
---|---|
id | 通し番号です。現在は利用していませんが、この行に値が入っているもののみ宛名が出力されます。逆にこちらを空欄にすると出力されません。番号が重複していたりしても良いです。 |
zipcode | 宛名の郵便番号です。ハイフンはあってもなくても良いです。例として000-0000でも0000000のどちらでも良いです。スプレッドシートが数値か文字列化を判定するため、また見た目的にもハイフンがある方が良いと思っています。 |
address_1 | 宛先住所の一行目です。宛先住所は主にここに入れます。一定の文字数以上(概ね20文字前後)になるとハミ出る恐れがあります。 |
address_2 | 宛先住所の二行目です。アパート・マンション名をこちらに入力すると見栄えが良くなります。 |
family_name | 宛名の方の名字です。 |
first_name_1 | 宛名の方の下の名前です。名字と組み合わせて全角スペースで区切られます。 |
suffix_1 | 宛名の方の敬称です。「様」と入れておくと良いです。「ちゃん」とかでもいけます。 |
first_name_2 | 連名で、宛名の方の家族の方を入力します。 |
suffix_2 | 連名の敬称です。家族が子供の場合に「ちゃん」を入れる想定です。 |
first_name_3 | 連名です。 |
suffix_3 | 連名です。 |
owner_zipcode | 差出人の郵便番号です。宛名の郵便番号同様、ハイフンはあり、無しのどちらでも良いです。 |
owner_address_1 | 差出人の住所の一行目です。番地までを入れると良いです。このカラムと住所2については下段揃えとなります。 |
owner_address_2 | 差出人の住所の二行目です。アパート・マンション名を入れる想定です。 |
owner_name | 差出人名です。連名にはまだ対応できていません。 |
サンプルのシートの二行目にも簡易的なヘルプがあります。そちらを見てください。
筆まめエクスポートデータを使う
今回の開発を思い立ったきっかけは、手元に筆まめのCSVデータがあったからでした。
そのデータをPosGoで使ってPDFにするまでの手順について説明します。
- 空のスプレッドシートを作る
- CSVデータをインポートする
- 最初の行に見出し行を付ける
- 名字と名前の行を分ける
- 共有する
- PDFに出力する
空のスプレッドシートを作る
まずはGoogleドライブで空のスプレッドシートを作ります。
「新規>スプレッドシートの新規作成」を行います
CSVデータをインポートする
作成したスプレッドシートに対して、CSVデータをインポートします。
メニューにある「ファイル>インポート」から「アップロード」を選びます。
「場所のインポート」については「現在のシートを置換する」、「テキストを数値や日付に変換する」は「いいえ」にしておきます。
インポートが完了しました。
最初の行に見出し行を付ける
CSVデータとPD出力データを紐付けるため、一行目に見出し行を作成します。
一行目を選択して右クリックし「一行挿入する」を選びます。
元々あった見出し行の上に、PosGoに反応するキーワードを入れます。
筆まめ標準の見出し行から以下のように変更します。
筆まめでの名前 | PosGoで使う名前 |
---|---|
No. | id |
フリガナ | 空欄(使いません) |
氏名 | 空欄(使いません) |
敬称 | suffix_1 |
氏名(連名1) | first_name_2 |
敬称(連名1) | suffix_2 |
氏名(連名2) | first_name_3 |
敬称(連名2) | suffix_3 |
登録・更新日 | 空欄(使いません) |
〒(印刷) | zipcode |
住所1(印刷) | address_1 |
住所2(印刷) | address_2 |
〒 | 空欄(使いません) |
住所1 | 空欄(使いません) |
住所2 | 空欄(使いません) |
フリガナ(会社) | 空欄(使いません) |
会社名 | 空欄(使いません) |
備考1 | 空欄(使いません) |
備考2 | 空欄(使いません) |
備考3 | 空欄(使いません) |
以下のような形になります。
名前を除く不要な行についてしておきます。(削除しなくても動きます。)
名字と名前の行を分ける
PosGoでは名字と下の名前を分けているため、元のデータから作成します。
「氏名」の列に対して、名字と名前用に分けるため、右に二行を挿入します。
挿入した行に対して、「family_name」「first_name_1」を見出し行に付けます。
今回の例ではC列とD列になります。
「氏名」列を分割するため、C列の3行目に「 =split(B3, ” “, true) 」を入れます。
うまく分割されれば成功です。
参考サイト
4行目以降についてはオートフィル(C列3行目を選択して、セルの右下をドラッグ)を使って同じように埋めていきます。
差し出し人のカラムを作る。
PosGoでは差出人についてもスプレッドシートを参照します。
宛名列の後ろ、右側に差出人の列を追加します。
上記の例ではM、N、O、P列に追加しました。
それぞれ、「owner_zipcode」「owner_address_1」「owner_address_2」「owner_name」を見出し行につけておきます。
共有する
ここまで出来たらこのスプレッドシートを共有します。
スプレッドシートの右上の「共有」から「共有可能なリンクを取得する」をクリックします。
「完了」して、ここで作られたURLをコピーしておきます。
PDFに出力する
さきほどのURLをPosGoに入れ、「生成」をクリックします。
これにて完了です。お疲れ様でした!
CSVデータの共有
ここまで出来たらこのスプレッドシートを共有します。
スプレッドシートの右上の「共有」から「共有可能なリンクを取得する」をクリックします。
「完了」して、ここで作られたURLをコピーしておきます。
PDFでの出力とオプション
PDFの出力にはオプションがあります。
オプション名 | 説明 |
---|---|
ハガキの枠を出力する | 郵便番号や切手の位置など、ハガキの位置を出力します。初見だとどういった出力になるか想定しづらいため、デフォルトでオンになっています。 |
デバッグモード | 生成日を出力します。基本的にオフにしてください。 |
利用上の注意と注意事項、免責事項
PosGoでは共有されたGoogleスプレッドシートを使います。
取り扱いには細心の注意を払っていますが、PosGoを利用することで発生した一切の不利益、情報漏えい、その他の損害について責任を負いません。
十分留意してご利用ください。
また是非ともローカルでの利用を検討してください。
自前ホスティングやローカルでの利用
gss-hagakiはローカルで利用することができます。
PosGoではオンラインでGoogleスプレッドシートを参照して取り出すことが出来ますが、反面情報共有のリスクがあります。
PosGoにて住所データを取り出すことができてしまいます。
リスクについて十分理解の上ご利用ください。
PDF作成の部分についてはgss-hagakiにて公開しています。
こちらのリポジトリをクローンすればローカル環境でも動かすことが出来ます。
CLIで動かすか、自前サーバに組み込んで利用するとPosGoとは情報を共有しないため、リスクがかなり低くなります。
そちらでの利用を是非検討してください。
ライセンスと謝辞
gss-hagakiのライセンスについて
gss-hagakiのライセンス形式はGPLv3です。
TCPDFのライセンスについて
TCPDFはGPLv3の元で配布されています。
利用しているフォントのライセンスについて
またgss-hagakiでは、フォントにMigMixを使わせていただきました。すごく見やすくて良いフォントです。ありがとうございます。:)
MigMixフォントはIPAフォントの派生フォントとのことで、MigMixはIPAフォントライセンスとなります。
今回のgss-hagakiではMigMixを利用していますが、派生プログラム、再配布とはならないようです。
(こちらの解釈が違っていたら教えてください)
下記のフォーラムを参考にしました。
IPAフォントの再配布には該当しません。
「IPAフォントライセンスv.1.0」に従ってご利用いただけます。
例えば、以下の利用がデジタル・コンテンツとしての利用に該当します。
・コンテンツの中のテキストや文字画像の一部にIPAフォントを利用
とのことで、再配布しているフォント部分についてはIPAフォントライセンス、その他の部分についてはGPLv3となります。
サイトのデザイン、コーディングについて
サイトのデザイン、コーディングは シュンゴ=岩﨑=メンディー 氏に作ってもらいました。ありがとうございます 🙂