2016年09月

2016年11月・2016年09月・2016年08月

2016/09/17(土)

Raspberry PiでExcelをPDF化&自動プリントアウト

Raspberry Pi、数千円で購入できるARM(ARMアーキテクチャ)ベースの小型軽量ボードコンピュータです。
RaspbianをはじめLinuxが動作するのでちょっとしたサーバとしても使えますし、GPIOを利用して電子工作用のコンピュータとしても使えます。
Raspberry PiをWebサーバとして動作させプログラムで(Excelを自動生成し、)Excelを自動でPDF化し、そのPDFをネットワークプリンタで自動印刷させてみました。便利な機能ですが、それなりにLinuxに関する知識は必要なのであしからず。プログラムでExcelを生成する方法はプログラミング言語によっていろいろあるようですし他にまかせて(サーバサイドでExcelブックを生成するいくつかの方法等参照)、外部プログラム実行機能を利用してPDF化とプリントアウトについて個人的メモ。(リリース日が2016-05-27のraspbian軽量版RASPBIAN JESSIE LITEを利用した場合)

・ExcelのPDF化はLibreOfficeを利用。(なのですべてのExcelがうまくPDF化できるかどうかは不明)
RaspbianはDebian系Linuxなので

#sudo apt-get install libreoffice
でインストール。

コマンドライン

#sudo soffice --headless --convert-to pdf --outdir (出力先ディレクトリ) (エクセルファイル)

でExcelファイルをPDF化、出力先ディレクトリに保存できます。(コマンドラインで実行する場合のパラメータ等はStarting the LibreOffice Software With Parametersを参照)
ただ注意点があり、プログラムでApache HTTP Serverなどを利用してWebサーバ上で自動実行するにはroot権限が必要。visudoでsudoの利用権限の追加が必要なようです。(RaspbianでWebサーバとしてApacheを利用する場合は、www-dataにsudoが利用できる権限を付与。)プログラムで自動実行する場合は下記をプログラム内で実行します。

sudo /usr/bin/soffice --headless --convert-to pdf --outdir (出力先ディレクトリ) (エクセルファイル)

・PDFの印刷はCUPS(Common Unix Printing System)とlp(lpr)コマンドを利用。

#sudo apt-get install cups
#sudo apt-get install lpr
でインストール。

CUPSにはWebブラウザでプリンタの設定ができる機能があるので利用すればわりと簡単にプリンタの登録管理ができます。
ちなみに、自宅で使用している激安で買ったインクジェットプリンタ、HP ENVY 4500。現段階でapt-getでインストールできるCUPSのバージョンではプリンタドライバの登録がありませんでした。(HPの製品だったので#sudo apt-get install hplipでインストール、選択できるように。)大抵メーカーのホームページ等で提供されているようですが、Linux用プリンタドライバ(PPDファイル)があるか要確認でしょうか。複合機だとステープラー(ホチキス止め)までコントロールできたりするみたい。
コマンドライン

#lp -d (CUPSで登録したプリンタ名) (PDFファイル)

でPDFファイルを指定のプリンタから印刷することができます。
プログラム内で実行する場合は、

/usr/bin/lp -d (CUPSで登録したプリンタ名) (PDFファイル)

つまりLinux上で動作する、外部プログラム実行機能を持ったプログラミング言語で上記を順番に実行(当然PDFの生成確認も)するようにプログラミングすれば、Excelの自動PDF化とPDFの自動印刷がわりと簡単にできるというわけです。いろいろ応用できるかと。(Excelの自動生成を含めると、1つの操作で同じ内容のExcelファイルとPDFファイル、プリントアウトされた紙が揃います。)
Raspberry PiではPDFの生成に若干時間がかかる気が。ただ、Raspberry Piで実行できるのでRaspberry Pi以上のスペックのサーバであれば言うまでもなくという事で。


2016/09/03(土)

充電スペース搭載の収納棚を自作してみた

充電スペース搭載の棚収納棚というと世の中ピンからキリまであるわけですが、インターネット他、色々探しても充電スペースがいい感じで搭載された棚がみつからず。
スマホと違って毎日は使わないもののバッテリー搭載で充電が必要な機器の置き場がなんとかならないかと。常時置くことができる棚が欲しかったわけです。
理想のものが見つからないので、最上段(目線の高さ)に充電スペースを搭載させた収納棚を自作してみました。だらだら3週間分の土日を利用して完成。なかなかいい感じに仕上がりました。ただ、分解や改造がしやすいように設計したため、コストが思った以上にかかってしまったり。
ひとまずローコストで少ない種類の材料でなんとかしてみようと、木材としてSPF 1×4 6F (1本300円くらいで売られていた)が14本、金具(L字の安いものを探して8つで約1,600円)、ネジとナット(分解できるように考えた為全部で約2,000円)で材料費で8,000円程かかりました。分解を考慮しなければ金具とネジとナット全てが200円くらいのネジセットだけで代用できたかも。
他、OAタップ(裏に引っ掛ける穴があるタイプ)。使った機材として既に持っていましたがドライバドリル丸ノコも。
ちなみに掲載写真、タブレットとBluetoothスピーカーの組み合わせ、個人的にですがGoogleの定額制音楽配信サービスを利用している事もあって以前に比べてCDを買わなくなっている気が(そもそも配信されていない場合や、配信サービス以外のソフトウェア(Serato DJとか?)や機器等で再生したい場合等を除いて)。
Googleの定額制音楽配信サービス、配信サービスの専用ソフトウェア上であればダウンロードしてオフラインでも再生できる機能もある(暇じゃない&面倒なので他社に同じサービスがあるかどうかは調べておらず)のでBOSEのSound Link Mini(コンパクトで高音質(配信かつワイヤレスなので音質そもそも論はおいておいたとして。重低音強めで好みもあると思いますが)で好きな場所へ持ち運びできる)との組み合わせは特にいい感じです。
同じ仕様の棚を壁側に並べたくなったりも。たいした事はないのですが需要ありそうな気がするので後、電源タップ(USB電源タップ)搭載でもっと目立たなくした感じの収納棚や収納棚の上に置く棚とか発売されたりして・・・。


Blog

CCNA(Cisco Certified Network Associate)取得を目指している取得した取得後有効期限満了したぎりぎり20代30代突入30代30代後半40代突入管理人のブログです。

Google Maps API

googlemap.jpg
地図 ブログ

 

Twitter

旧サイト

旧サイト

Recent Entries

Amazon Alexa Skill Awards ファイナルステージイベント
ユニバーサル・スタジオ・ジャパン
金峯山寺
吉野神宮
Perfume「Future Pop」
Maker Faire Tokyo 2018に出展してきた
株式会社アミューズ 第40期定時株主総会
Essential Phone PH-1
出流山 満願寺
筑波山 筑波山神社

Monthly Archives

2018年09月
2018年08月
2018年06月
2018年05月
2018年04月
2018年03月
2018年02月
2018年01月
2017年12月
2017年11月
2017年10月
2017年09月
2017年08月
2017年07月
2017年06月
2017年05月
2017年04月
2017年03月
2017年02月
2017年01月
2016年12月
2016年11月
2016年09月
2016年08月
2016年07月
2016年06月
2016年05月
2016年04月
2016年03月
2016年02月
2016年01月
2015年12月
2015年11月
2015年10月
2015年09月
2015年08月
2015年07月
2015年06月
2015年05月
2015年04月
2015年02月
2015年01月
2014年12月
2014年11月
2014年10月
2014年09月
2014年08月
2014年07月
2014年06月
2014年05月
2014年04月
2014年03月
2014年02月
2014年01月
2013年12月
2013年11月
2013年10月
2013年09月
2013年08月
2013年07月
2013年06月
2013年05月
2013年04月
2013年03月
2013年02月
2013年01月
2012年12月
2012年11月
2012年10月
2012年09月
2012年08月
2012年07月
2012年06月
2012年05月
2012年04月
2012年03月
2012年02月
2012年01月
2011年12月
2011年11月
2011年10月
2011年09月
2011年08月
2011年07月
2011年06月
2011年05月
2011年04月
2011年03月
2011年02月
2011年01月
2010年12月
2010年11月
2010年10月
2010年09月
2010年08月
2010年07月
2010年06月
2010年05月
2010年04月
2010年03月
2010年02月
2010年01月
2009年12月
2009年11月
2009年10月
2009年09月
2009年08月
2009年07月
2009年06月
2009年05月
2009年04月
2009年03月
2009年02月
2009年01月
2008年12月
2008年11月
2008年10月
2008年09月
2008年07月
2008年06月
2008年05月
2008年04月
2008年03月
2008年02月
2008年01月
2007年12月
2007年11月
2007年10月
2007年09月
2007年08月
2007年07月
2007年06月
2007年05月
2007年04月
2007年03月
2007年02月
2007年01月
2006年12月
2006年11月
2006年10月
2006年09月
2006年08月
2006年07月
2006年06月
2006年05月
2006年04月
2006年03月
2006年02月
2006年01月
2005年12月
2005年11月
2005年10月