adbird(広告鳥) 備忘録

スマホの画面に適した「小説家になろう」縦書きPDF作成

スマホ小説家になろうを読むのには、すでに

の方法があるのだけれど、これらはページを移動するたびにブックマークレットを起動したりしないといけない。

数話程度を読む分にはブックマークレット起動は大して苦ではないけど、多くの話を一気読みしたいときには面倒くさい。

公式でも縦書きPDFにする機能はあるけど、そのPDFはパソコンでの表示を前提にしているので、スマホでの表示には適していない。

そこでスマホの画面に適した縦書きPDFにする方法。

※2020年11月7日更新。

目次

環境

  • Ubuntu18.04
  • TeXLive

Windowsではちょっと無理かも。頑張って環境そろえれば、できるかもしれないけど。

ディレクトリ構成

小説家になろう
   ├── Narou_tex.sh
   └── 小説タイトル (このディレクトリ名がpdfファイル名になる)
        ├── 001.html
        └── 002.html
             ︙

スクリプト作成

k-igrsさんという方が作ったスクリプトを拝借、少々カスタム。

Narou_tex.sh という名前で「小説家になろうディレクトリに保存。なお、「小説タイトル」ディレクトリに入れておくと、後述する連番にするコマンドでhtmlに変換されてしまうので注意。

スマホの画面の大きさに応じて、「原稿ページ設定(スマホ用)」の箇所などの調整が必要。

LaTeXの版面については、版面のパラメータにはどのようなものがありますか? - TeX・LaTeXについての覚え書きをご参考に。

フォントは僕のオススメの源暎ちくご明朝(GenEiChikugoMin2-R)とIPAexゴシックを使用する設定になっているので、源暎ちくご明朝とIPAexゴシックをPCにインストールするか(LaTeXで使えるようにするにはフォントを/home/〜/.fontsフォルダ内に入れる)、変えたい場合は「欧文・数字フォント」「ここで日本語フォント指定」の箇所を変更する。

#!/bin/bash

if [ -e ./tmpfile ]; then
    \rm -r tmpfile
fi

mkdir -p tmpfile
if [ -e ./outputb.tex ]; then
    \rm -r outputb.tex
fi

touch outputb.tex
onetimeflag=0

for fh in *.html
do
#
if [ $onetimeflag -eq 0 ]; then
    grep '^作者:<a href' $fh |sed -e 's/^作者.*">//' -e 's/<\/a>$//' > ./tmpfile/tmp_auth
    grep '^dc:title="' $fh |sed -e 's/^dc:title="//' -e 's/"$//' > ./tmpfile/tmp_title
    echo "" > ./tmpfile/tmp_section
    onetimeflag=1
fi
#
perl -e '
while(<>){
    if(/^<p class="chapter_title">/){
        chomp;
        s/^<p class=.*title">//;
        s/<\/p>$//;
        $section=$_;
        open(RDFILE, "< ./tmpfile/tmp_section");
            $tmp_section=<RDFILE>;
            chomp($tmp_section);
        close(RDFILE);
        if( $section ne $tmp_section ){
            print "\\section{$section}\n" ;
            open(WRFILE, "> ./tmpfile/tmp_section");
                print WRFILE "$section\n";
            close(WRFILE);
        }
    }
    if(/^<p class="novel_subtitle">/){
        chomp;
        s/^<p class=.*title">//;
        s/<\/p>$//;
        $subsection=$_;
        print "\\subsection{$subsection}\n";
    }
}' $fh >> outputb.tex
#
perl -e '
while(<>){
if(/^<p id="L[0-9]+"/){
    s/<\/rb><rp>\(<\/rp><rt>/<\/rb><rp>(<\/rp><rt>/g;
    s/<\/rt><rp>\)<\/rp><\/ruby>/<\/rt><rp>)<\/rp><\/ruby>/g;
    print $_ }
}' $fh > ./tmpfile/tmpf1
# ↓改行をオリジナルの見た目のままにするには、1番目を s/^<p id="L[0-9]+"> *<br \/><\/p>/\\vskip\\baselineskip/; にする。ルビpxrubricaパッケージ対応
perl -e '
while(<>){
    s/^<p id="L[0-9]+"> *<br \/><\/p>/【k改行k】/;
    s/<ruby><rb>(.*?)<\/rb><rp>(<\/rp><rt>(.*?)<\/rt><rp>)<\/rp><\/ruby>/\\ruby[g]{$1}{$2}/g;
    s/<ruby><rb>(.*?)<\/rb><rp>《<\/rp><rt>(.*?)<\/rt><rp>》<\/rp><\/ruby>/\\ruby[g]{$1}{$2}/g;
    s/!\?/\\rensuji{!\?}/g;
    print $_;
}' ./tmpfile/tmpf1 > ./tmpfile/tmpf2
#
perl -e '
while(<>){
    s/^<p id="L[0-9]+">(.*)<\/p>$/$1\n/;
    s/^ +//;
    print $_
}' ./tmpfile/tmpf2 >> outputb.tex 
done
#改行調整。改行が2つ連続の時は、改行1つ分に。改行1つ分は改行削除。
sed -i -z -e 's/【k改行k】\n【k改行k】/\\vskip\\baselineskip/g' outputb.tex
sed -i -e 's/【k改行k】//g' outputb.tex

#半角数字を全角数字に置換
sed -i -e 'y/1234567890/1234567890/' outputb.tex
#アポストロフィー変換、半角数字を全角数字など諸々置換
sed -i -e "s/\&#39;/\'/g" -e 'y/1234567890/1234567890/' -e 's/“/〝/g' -e 's/”/〟/g' -e 's/\&quot\;/"/g' -e "s/&lt;/</g" -e "s/&gt;/>/g" -e "s/\#/#/g" -e 's/\$/$/g' -e 's/%/%/g' -e "s/&/&/g" -e 's/\~/〜/g'  -e 's/?/?/g' -e 's/!/!/g' outputb.tex
#タイトルも諸々置換
sed -i -e "s/\&#39;/\'/g" -e 'y/1234567890/1234567890/' -e 's/“/〝/g' -e 's/”/〟/g' -e 's/\&quot\;/"/g' -e "s/&lt;/</g" -e "s/&gt;/>/g" -e "s/\#/#/g" -e 's/\$/$/g' -e 's/%/%/g' -e "s/&/&/g" -e 's/\~/〜/g'  -e 's/?/?/g' -e 's/!/!/g' ./tmpfile/tmp_title
#作者名も諸々置換
sed -i -e "s/\&#39;/\'/g" -e 'y/1234567890/1234567890/' -e 's/“/〝/g' -e 's/”/〟/g' -e 's/\&quot\;/"/g' -e "s/&lt;/</g" -e "s/&gt;/>/g" -e "s/\#/#/g" -e 's/\$/$/g' -e 's/%/%/g' -e "s/&/&/g" -e 's/\~/〜/g'  -e 's/?/?/g' -e 's/!/!/g' ./tmpfile/tmp_auth
# 括弧(「)の行の字下げ(半文字だけ字下げ)
sed -i -e 's/^「/\\noindent\\hspace{0.5em}「/g' outputb.tex
#リンクを非表示に
sed -i -e 's/^<a href=/%<a href=/g' outputb.tex

#背景色画像を上位フォルダからコピー
#cp ../background.png ./

#LaTex
perl -e '
    open(RDFILE, "< ./tmpfile/tmp_auth");
        $tmp_auth=<RDFILE>;
        chomp($tmp_auth);
    close(RDFILE);
        open(RDFILE, "< ./tmpfile/tmp_title");
        $tmp_title=<RDFILE>;
        chomp($tmp_title);
    close(RDFILE);
    #
    print "\\documentclass[a5j,12pt]{ltjtarticle}\n";
    print "\n";
    print "% -----章番号を無しにする-----\n";
    print "\\setcounter{secnumdepth}{0}\n";
    print "\n";
    print "%目次をハイパーリンク付きにする\n";
    print "\\usepackage[luatex,pdfencoding=auto,hidelinks]{hyperref}\n";
    print "\n";
    print "%フォント指定のためのパッケージ\n";
    print "\\usepackage{luatexja-fontspec}\n";
    print "%欧文・数字フォント(フォントによっては文字が欠落する場合があるので注意)\n";
    print "\\setmainfont{GenEiChikugoMin2-R}\n";
    print "\\setsansfont{IPAexGothic}\n";
    print "%ここで日本語フォント指定 (フォントによっては文字が欠落する場合があるので注意)\n";
    print "\\setmainjfont{GenEiChikugoMin2-R}\n";
    print "\\setsansjfont{IPAexGothic}\n";
    print "\n";
    print "%見出しのフォントサイズ(smallやfootnotesizeに)等\n";
    print "\\makeatletter\\renewcommand{\\section}{\\\@startsection{section}{2}{\\z\@}{1.5\\Cvs \\\@plus.5\\Cvs \\\@minus.2\\Cvs}{.5\\Cvs \\\@plus.3\\Cvs}{\\gtfamily\\small\\mdseries}}\\makeatother\n";
    print "\\makeatletter\\renewcommand{\\subsection}{\\\@startsection{subsection}{3}{\\z\@}{1.5\\Cvs \\\@plus.5\\Cvs \\\@minus.2\\Cvs}{.5\\Cvs \\\@plus.3\\Cvs}{\\gtfamily\\footnotesize\\mdseries}}\\makeatother\n";
    print "\\makeatletter\\renewcommand{\\subsubsection}{\\\@startsection{subsubsection}{3}{\\z\@}{1.5\\Cvs \\\@plus.5\\Cvs \\\@minus.2\\Cvs}{.5\\Cvs \\\@plus.3\\Cvs}{\\gtfamily\\footnotesize\\mdseries}}\\makeatother\n";
    print "\n";
    print "% -----図の設定-----\n";
    print "\\usepackage{graphicx}\n";
    print "\\usepackage{float}\n";
    print "\n";
    print "% -----ルビ使用の設定-----\n";
    print "%\\usepackage{luatexja-ruby}\n";
    print "\\usepackage{pxrubrica}\n";
    print "\n";
    print "% -----囲みの設定-----\n";
    print "\\usepackage{boites}\n";
    print "\n";
    print "% -----ヘッダ・フッタの設定 フォントサイズをtinyに-----\n";
    print "\\makeatletter\\def\\ps\@myheadings{\\let\\ps\@jpl\@in\\ps\@plain\\let\\\@oddfoot\\\@empty\\let\\\@evenfoot\\\@empty\\def\\\@evenhead{{\\leftmark}\\hfil\\tiny{\\thepage}}\\def\\\@oddhead{\\tiny{\\thepage}\\hfil\\rightmark}\\let\\\@mkboth\\\@gobbletwo\\let\\sectionmark\\\@gobble\\let\\subsectionmark\\\@gobble}\\makeatother\n";
    print "\\pagestyle{myheadings}\n";
    print "%------ヘッダの右に章=subsectionmark を表示----\n";
    print "\\renewcommand{\\subsectionmark}[1]{\\markright{#1}}\n";
    print "\n";
    print "\% -----原稿ページ設定(スマホ用)-----\n";
    print "\\paperwidth 62mm %ページの幅。スマホの画面を定規で測る。\n";
    print "\\paperheight 121mm %ページの高さ。スマホの画面を定規で測る。\n";
    print "\\setlength{\\topmargin}{-1in} %%topmarignを一度余白なしにする。いじらない。\n";
    print "\\addtolength{\\topmargin}{5mm} %%あらためて上余白を設定する。 \n";
    print "\\headheight 0mm\n";
    print "\\headsep 8mm %ヘッダーと本文の間\n";
    print "\\setlength{\\oddsidemargin}{-1in} %%奇数ページの左余白を一度余白なしにする。いじならい。\n";
    print "\\addtolength{\\oddsidemargin}{3.5mm} %%あらためて奇数ページの左余白を設定する。\n";
    print "\\setlength{\\evensidemargin}{-1in} %%偶数ページの左余白を一度余白なしにする。いじらない。\n";
    print "\\addtolength{\\evensidemargin}{3.5mm} %%あらためて偶数ページの左余白を設定する。\n";
    print "\\textwidth 100mm %縦書なので、これがテキストの「高さ」\n";
    print "\\textheight 55mm %縦書なので、これがテキストの「幅」(値:ページの幅ー左右の余白。フォントサイズとの兼ね合いもあるので、余白と本文テキストの幅を試行錯誤で調節する。)\n";
    print "\\footskip 0mm\n";
    print "\n";
    print "% hyperref.styの関係で、目次ページ番号が寝てしまうので、正しく縦向きに。 参考:http://id.fnshr.info/2017/05/20/my-latex-templates-201705/\n";
    print "\\makeatletter\n";
    print "\\def\\contentsline#1#2#3#4{\\csname l\@#1\\endcsname{\\hyper\@linkstart{link}{#4}{#2}\\hyper\@linkend}{\\rensuji{#3}}}\n";
    print "\\makeatother\n";
    print "\n";
    print "%目次のリーダー(点線)を消す。節(section)以降のページ下余白調整\n";
    print "\\makeatletter\n";
    print "\\def\\\@dottedtocline#1#2#3#4#5{%\n";
    print "  \\vskip\\toclineskip \\\@plus.2\\p\@%\n";
    print "  {\\setlength{\\parfillskip}{0em} %節(section)以降の下余白\n";
    print "    \\parindent #2\\relax\\\@afterindenttrue\n";
    print "   \\interlinepenalty\\\@M\n";
    print "   \\leavevmode\n";
    print "   \\\@lnumwidth #3\\relax\n";
    print "   \\advance\\leftskip \\\@lnumwidth \\hbox{}\\hskip -\\leftskip\n";
    print "    {#4}\\nobreak\n";
    print " \\leaders\\hbox to 3pt{\\hfil\\raise3pt\\hbox{}\\hfil}% ここのhbox{}でリーダーを設定\n";
    print "     \\hfill \\nobreak\\hbox to\\\@pnumwidth{%\n";
    print "         \\hss\\reset\@font\\rmfamily\\small \\normalcolor #5}\\par}}\n";
    print "\\makeatother\n";
    print "\n";
    print "% -----タイトル、筆者の設定-----\n";
    print "\\title{\\vspace{9.5mm} \\hspace{0cm} \\large $tmp_title}  %vspaceは右余白、hspaceは上余白調整\n";
    print "\\author{\\normalsize \\hspace{5cm} $tmp_auth}\n";
    print "\\date{\\hspace{\\fill}}\n";
    print "\n";
    print "%ページ背景 別途画像用意。ページサイズと合わせる。\n";
    print "%\\usepackage{wallpaper}\n";
    print "%\\TileWallPaper{62mm}{121mm}{background.png}\n";
    print "% -----本文-----\n";
    print "\n";
    print "\\begin{document}\n";
    print "\n";
    print "% -----タイトル表示-----\n";
    print "\\maketitle\n";
    print "\\thispagestyle{empty}\n";
    print "% -----目次-----\n";
    print "\\tableofcontents\n";
    print "\\newpage\n";
    print "\n";
    open(RDFILE, "< ./outputb.tex");
    while(<RDFILE>){ print $_; }
    close(RDFILE);
    print "\n\n";
    print "\\end{document}";
' > output.tex

#一時ファイル削除
\rm -rf outputb.tex tmpfile

小説をダウンロード

小説タイトルのディレクトリで端末を開いて、以下のようなコマンドで小説ページのhtmlをダウンロード。

$ wget -w 30 https://ncode.syosetu.com/n9636x/{1..20}/

薬屋のひとりごと(作者:日向夏)という小説を1話〜20話までダウンロード。

小説家になろうのサーバーに負担をかけて、アクセス制限を喰らわないように、30秒の間隔を入れている。のんびりダウンロードしよう。

htmlを連番にする

小説タイトルのディレクトリ内にダウンロードされたhtmlファイルは、index.html、index.html.1、index.html.2、…となっているので、これを001.html、002.html、003.html、…というように連番にする。

$ ls -v | awk '{ printf "mv %s %03d.html\n", $0, NR }' | sh

小説タイトルのディレクトリ内の全てのファイルが連番のhtmlに変換されてしまうので注意する。

スクリプト実行

$ bash ../Narou_tex.sh && lualatex output && lualatex output && mv output.pdf `pwd`.pdf

↑目次作成のために2回lualatexしている。

実行すると、小説タイトルのディレクトリの上位の、「小説家になろうディレクトリ内に「小説タイトル.pdf」ができているはず。

PDFをスマホに移動させて、閲覧。

縦書きPDFの閲覧には、今のところSideBooks -PDF・電子書籍・コミックViewer - Google Play のアプリがいい感じ。

f:id:adbird:20201031222554p:plain f:id:adbird:20201029221955p:plain

便利なリンク生成ブックマークレット

今、開いているホームページのタイトルとURL、範囲選択したテキストなどをクリップボードに保存して、リンクを生成してくれるブックマークレット

1. ページのタイトル+URL

ページのタイトルとURLをクリップボードに保存。Twitterの投稿などに便利。

javascript:!function(){var e=document.createElement("textarea"),t=document.title,c=document.URL;e.textContent=t+"\n"+c,document.querySelector("body").append(e),e.select(),document.execCommand("copy"),e.remove()}();

これを使うと、

テント紹介 ワイルドカントリーのヘルム2 - adbird(広告鳥) 備忘録
https://adbird.hatenablog.com/entry/2020/09/16/231730

こんな感じでリンクをクリップボードに保存してくれる。

2. 範囲選択したテキスト+ページのタイトル+URL

範囲選択したテキストを「」の中に入れて、そのページのタイトルとURLとともにクリップボードに保存。ニュース記事などを引用してTwitterに投稿するのに超便利。

javascript:!function(){var e=document.createElement("textarea"),t=document.title,c=document.URL;STR="";var SEL=window.getSelection();if(SEL!=""){STR=SEL.toString();}else{var form_focused_elm= document.activeElement;if( !!form_focused_elm.value ){STR = form_focused_elm.value.substring( form_focused_elm.selectionStart, form_focused_elm.selectionEnd );}}e.textContent="「"+STR+"」"+"\n"+t+"\n"+c,document.querySelector("body").append(e),e.select(),document.execCommand("copy"),e.remove()}();

ページ上でテキストを範囲選択した状態で、このブックマークレットをクリックすれば、

「先日のキャンプで新しいテント・ワイルドカントリーのヘルム2 (2019年購入時価格:税込24,840円)を初投入したので、その感想。」
テント紹介 ワイルドカントリーのヘルム2 - adbird(広告鳥) 備忘録
https://adbird.hatenablog.com/entry/2020/09/16/231730

こんな感じでクリップボードに保存される。

3. ページのタイトル+URL をマークダウン形式で

ページのタイトル+URL をマークダウン形式でクリップボードに保存。

javascript:!function(){var e=document.createElement("textarea"),t=document.title.replace(/\[/g,"\\[").replace(/]/g,"\\]").replace(/\|/g,"\\|"),c=document.URL.replace(/\(/g,"%2528").replace(/\)/g,"%2529");e.textContent="["+t+"]("+c+")",document.querySelector("body").append(e),e.select(),document.execCommand("copy"),e.remove()}();

このブックマークレットを使うと、

[テント紹介 ワイルドカントリーのヘルム2 - adbird(広告鳥) 備忘録](https://adbird.hatenablog.com/entry/2020/09/16/231730)

こんな感じでクリップボードに保存される。

4. 選択したテキストでhtml用リンク

javascript:!function(){var e=document.createElement("textarea"),t=document.title,c=document.URL;STR="";var SEL=window.getSelection();if(SEL!=""){STR=SEL.toString();}else{var form_focused_elm= document.activeElement;if( !!form_focused_elm.value ){STR = form_focused_elm.value.substring( form_focused_elm.selectionStart, form_focused_elm.selectionEnd );}}e.textContent="<a href=\""+c+"\">"+STR+"</a>",document.querySelector("body").append(e),e.select(),document.execCommand("copy"),e.remove()}();

このブックマークレットを使うと、

<a href="https://adbird.hatenablog.com/entry/2020/09/16/231730">先日のキャンプで新しいテント・ワイルドカントリーのヘルム2 (2019年購入時価格:税込24,840円)を初投入したので、その感想。</a>

こんな感じでクリップボードに保存される。

5.選択したテキストでコトバンク検索

https://kotobank.jp/gs/?q=のところを適宜変えるとコトバンク以外でもいけるはず。

javascript:(function(){x=document;y=window;if(x.selection){query=x.selection.createRange().text;}else if(y.getSelection){query=y.getSelection();}else if(x.getSelection){query=x.getSelection();};location.href='https://kotobank.jp/gs/?q='+encodeURIComponent(query)+'';})();

上記のは現在のタブで開いてしまうので、下記の新しいタブで開くのがいい。

javascript:(function(){x=document;y=window;if(x.selection){query=x.selection.createRange().text;}else if(y.getSelection){query=y.getSelection();}else if(x.getSelection){query=x.getSelection();};window.open('https://kotobank.jp/gs/?q='+encodeURIComponent(query)+'');})();

ブックマークレットの登録

適当なページ(このページでもいい)をブラウザにブックマークして、そのブックマークを編集。

  • ブックマーク名 : 自分で分かりやすいように任意で。「テキストリンク生成」「引用テキストリンク生成」「マークダウンリンク生成」とか。
  • ブックマークの保存先 : 保存先も任意で。すぐに使えるようにブラウザ上部のブックマークバーがオススメ。
  • ブックマークのアドレス(URL) : 上記のブックマークレットのいずれか1つをコピペして入れる。セキュリティの関係か、Vivaldiブラウザだとコピペではブックマークレットの冒頭の「javascript:」が消えてしまう仕様に変わったらしいので、コピペ後、手動で冒頭に「javascript:」を入力すること。

これでブックマークレットの登録完了。

同じ要領で残り2つのブックマークレットも登録する。

ブックマークレットを使う

リンクを作りたいページを開いて、上記で登録したブックマークレットをクリックするだけ。ポップアップなどは特に出てこないが、クリップボードにリンク等が保存されているので、好きな場所(Vivaldiブラウザのウェブパネルに登録したtwicliの投稿欄とか)に貼り付ける。

参照

↓この参照のリンクも3番目のブックマークレットを使って生成。

特定の文字列を含むファイルを複数ファイルの中から検索

フォルダ内に複数のファイルがあり、その中から特定の文字列を含むファイルだけを検索して表示するコマンド。

$ grep -rl キーワード

参照:[Linux][Mac]複数ファイルまとめて特定の文字列を検索するコマンド(2種類)|SATOPEDIA

GIMPで矢印、吹き出し

環境はUbuntu18.04、GIMP 2.8.22

矢印

以下、いずれか好きな方法で。

方法1:「テキスト」と「鉛筆で描写」などを組み合わせる

まず「テキスト」で「さんかく」と入力・変換して、好きな三角形の記号(▲・▼・◀・▶ など)を表示して、それを矢印の矢の部分のパーツとして使う。

三角形の記号の大きさや色は、フォントの大きさや色を変えることで可能。

矢印の棒の部分は「鉛筆で描写」や「ブラシで描写」、「パス」などで、矢印の矢のパーツである三角形の記号に付け加えて描いてやる。

矢印の回転などは普通のレイヤーと同様に、回転などをすればよい。

方法2:ブラシに追加

GIMPブラシダウンロード(矢印) | GIMP始めの一歩からダウンロード、解凍した中に入っているフォルダを /home/(ユーザー名)/.gimp-2.8/brushes に放り込む。

GIMPを再起動、ブラシで描写の中に入っているはず。

参照:【Arrow Brushes】GIMPで綺麗な「矢印」を描く方法を、画像つきで優しく解説【プラグイン】 | あずきのぶろぐ。

方法3:スクリプトを追加

このページ Arrow Script からarrow.zip をダウンロード。

zipを解凍して、arrow.scmを取り出し、/home/(ユーザー名)/.gimp-2.8/scriptsに放り込む。

GIMPを再起動、ツールの中にarrowが入っているはず。

使い方はGIMPできれいな矢印を描いてみようを参照のこと。

吹き出し

吹き出しGIMPブラシダウンロード(吹き出しブラシ) | GIMP始めの一歩からダウンロード、解凍してできたフォルダを /home/(ユーザー名)/.gimp-2.8/brushesに放り込む。

GIMPを再起動、ブラシで描写の中に入っているはず。

参照:【Arrow Brushes】GIMPで綺麗な「矢印」を描く方法を、画像つきで優しく解説【プラグイン】 | あずきのぶろぐ。

先日のキャンプで気がついたこと、覚書メモ

  • プチかまどC1の下に、耐熱のシートなりタイルなりを持っていかないと芝生が焦げる。
    • 今は100均で買ったステンレスのお盆を敷いているけど、それでも焦げる。
    • 芝が焦げるのは炭に火をつけるために、ステンレスのお盆の上で着火剤代わりの牛乳パックを燃やしているからかも?ちゃんと牛乳パックも網の上で燃やしたほうがいいかも。
  • バイク積載について
    • リュックはキツい。サイドバッグか別のバッグを考える。
    • バイクに乗った時に背中が当たるメインのバッグには、グランドシート代わりのレジャーシートを背中が当たる部分に入れておくと背中があまり痛くならない。
    • ファイヤーケトルfk1はメインのバックに入れるのではなく、ネットの間に挟んだほうがいいかも。
  • 必要ないペグやロープは持っていかない。もちろん、予備は必要だけど…。
  • テント(ワイルドカントリーのヘルム2)の収納袋が入れにくいので、ファスナー式のバッグを別途用意したほうがいいかも。
  • タープポールを買い足すか…。もしくは長目のタープポール1本で立てるかな。
  • フライパンでも食パンがトーストできるらしいので、次回やってみよう。キャンプで食パンといえば、ホットサンドメーカーというイメージしかなかったけど、ホットサンドメーカーは重いし荷物になるしで躊躇してたけど、今持っているフライパンでトーストできるならそれで十分。マーガリンを小瓶にでも入れて持っていこう。

テント紹介 ワイルドカントリーのヘルム2

先日のキャンプで新しいテント・ワイルドカントリーのヘルム2 (2019年購入時価格:税込24,840円)を初投入したので、その感想。

f:id:adbird:20200916224738j:plain

※ヘルム2は新しく WILD COUNTRY (by TERRA NOVA) ヘルムコンパクト 2となり、収納サイズが「コンパクト」になったらしい

なお、僕が今まで使っていた初代テントは、ダンロップのテントR126(2012年購入時価格:15,563円)。
一人用で荷物を置くスペースがほとんどなく、前室も狭く窮屈だけど、小柄な僕が使用する分には何とか使えるし、ベース性能のしっかりしたテントでずっと使ってきた愛着のあるテントだった。

でも、そろそろ内側のシームテープが劣化しつつあったし、消費税も上がるということで2019年にヘルム2を購入した。

話を戻して、2代目テントのワイルドカントリー・ヘルム2。

どうしても初代テントのR126との比較になるので、あしからず。

長所

  • 設営がとても楽!速い!
    • 2本のポールをセットするだけでフライシートとインナーが同時に立ち上がる。
    • つまり、雨の日の設営でもインナーが濡れない!
  • 一応、2人用なので、当然1人用のダンロップのR126より大きくて、荷物をテント内に入れられるw。
  • 大きなポケットが2つ付いている。
  • 小さいLEDランタンをぶら下げられる小さな紐の輪が天井にある。R126にもあったけど。
  • 日本ではマイナーなテントで、珍しい形だと思うので、他人とかぶることはたぶんないw。
  • 収納時のサイズがバイク積載にちょうどいい長さ。

f:id:adbird:20200916224837j:plain f:id:adbird:20200916224955j:plain f:id:adbird:20200916225233j:plain

短所

  • R126に比べてテントのポールに粘り・しなやかさがない気がする。強風時に折れそう…。
  • 出入り口が狭く、開放感は少ない。
    • 僕は小柄なので出入りに特に窮屈さは感じなかったけど。
    • R126のテントのように、出入り口部分のフライシートを全面、大きく上に上げるようなことはできない。
  • 収納袋に入れづらい。
    • ジッパー式ではなく、袋の狭い口から押し込みながら入れないといけない。雨の中で撤収しないといけないときは、さらに大変になるかも…。適当なバッグを別に用意したほうが楽かも。

まぁまぁな点、その他の特徴。

  • 前室はそんなに広くないが、テントの出入り口は2つあって、それぞれの前室を合わせれば、そこそこ物が置ける。
  • インナーはハーフメッシュ。冬は無理。3シーズン用。
  • フライシートとインナーは簡単に引っ掛けてあるだけなので、取り外しは可能。

f:id:adbird:20200916224917j:plain f:id:adbird:20200916225750j:plain

以上、今後もいろんな状況で使って、気がついた点を随時更新していくつもり。

ワイルドカントリーの公式Youtubeチャンネルより

スキャンした書類の傾き補整

環境はUbuntu18.04、ScanSnap S1500 。 2つの方法がある。

A:1度PDFファイルを作成してから、傾きを修正する方法

スキャンアプリ xsane でスキャンしてPDFファイル作成

手順

  • ① Multipage を選択する。
  • ②スキャン画像の入るフォルダを選択または新規作成する。
  • ③プロジェクト作成のボタンをクリック。
  • ④スキャンする。
  • ⑤ Save multipage file をクリックして、PDFファイル作成。

f:id:adbird:20200916174425p:plain f:id:adbird:20200916174439p:plain

文書の傾きを自動補整

横書きの書類で、文書・文章の傾きが気になった時に傾きを自動補正する。

ただし、これを行うと、PDFのデータサイズが大きくなるので、注意する。

PDFファイルを任意のフォルダにコピーして、そのフォルダ内で端末を開いて、以下を実行。

$ pdftoppm 入力.pdf -rx 350 -ry 350 image
$ mogrify -deskew 50% *.ppm
$ gm convert *.ppm 出力001.pdf
$ gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile=出力002.pdf 出力001.pdf

以下、上記コマンドの内容。

$ pdftoppm 入力.pdf -rx 350 -ry 350 image :PDFデータをバラバラの画像にする。解像度350dpi。

$ mogrify -deskew 50% *.ppm :傾きを自動補正。

$ gm convert *.ppm 出力001.pdf :傾きを補正した画像を再びPDFデータにする。

$ gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile=出力002.pdf 出力001.pdf :PDFファイルのサイズを小さくする。

B:傾きを補正してから、PDFファイルを作成する方法

スキャンアプリ xsane でスキャン。

手順①〜④は上記と同じ。

  • ① Multipage を選択する。
  • ②スキャン画像の入るフォルダを選択または新規作成する。
  • ③プロジェクト作成のボタンをクリック。
  • ④スキャンする。

傾きを自動補正してPDFファイル作成

スキャン画像の入っているフォルダをコピーして、そのフォルダ内で端末を開いて、下記コマンドを実行する。

$ mogrify -resize 45% *.pnm
$ mogrify -deskew 50% *.pnm
$ gm convert *.pnm 出力001.pdf
$ gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile=出力002.pdf 出力001.pdf

以下、コマンド説明。

$ mogrify -resize 45% *.pnm :画像の縮小。あまり小さくしすぎると文字がつぶれる。

2番目、3番目、4番目はAの場合と同じ内容。