ブログトップ プライバシーポリシー お問い合わせ

プライバシーポリシー

掲載されている広告について

当サイトでは、第三者配信の広告サービス(Google Adsense)を利用しています。

広告配信事業者は、ユーザーの興味に応じた商品やサービスの広告を表示するために、「Cookie(クッキー)」を使用することがあります。

Googleアドセンスに関して、またCookieを無効にする設定について、詳しくはこちらをクリックしてください。

また当サイトは、Amazon.co.jpを宣伝しリンクすることによってサイトが紹介料を獲得できる手段を提供することを目的に設定されたアフィリエイトプログラムである、「Amazonアソシエイト・プログラム」の参加者です。

三者がコンテンツおよび宣伝を提供し、訪問者から直接情報を収集し、訪問者のブラウザにCookie(クッキー)を設定したりこれを認識したりする場合があります。

免責事項

当サイトに掲載された内容(リンク先含む)によって生じた損害等の一切の責任を負いかねます。

 

2021年11月13日

Processing3の日本語表示設定(Linux)

はじめに

Linux( Ubuntu 16.04 )にProcessing3を入れて使っています。別のPCで使っていたスケッチを開いた時に、コメント文の日本語が表示されませんでした。フォント設定を忘れていたことに気づいたので、やりました。環境は以下の通りです。

  • Ubuntu 16.04
  • Processing 3.5.3

設定方法

設定ファイルである

~/.processing/preferences.txt

のフォント設定箇所

editor.font.family=Source Code Pro

を、日本語の文字が入っているフォントを使う設定に書き換えます。Processingの

ファイル→設定...→/home/ユーザー名/.processing/preferences.txt

のリンクをクリックするとpreferences.txtを開けます。このファイルは設定ファイルなので、書き換える前に、必ずProcessingを終了させてください。

結論から言うと、「Noto Sans Mono CJK JP Regular」で日本語表示ができました。

editor.font.family=Noto Sans Mono CJK JP Regular

f:id:Fluorite36:20191022175056p:plain

フォント設定を変更して日本語の表示ができるようになった様子

日本語を扱えるフォントを調べる

日本語を扱えるフォントを調べました。

以下のスケッチ(ソースコード)をprocessingで実行すると、フォントリストをProcessingIDEの下のConsoleに出力することができます。

void setup(){
  printArray(PFont.list());
}
void draw(){
}

[0] "Abyssinica SIL"
[1] "Bitstream Charter"
[2] "Bitstream Charter Bold"

...

[325] "rsfs10"
[326] "stmary10"
[327] "wasy10"

[162] "Noto Sans CJK JP Black"
[163] "Noto Sans CJK JP Bold"
[164] "Noto Sans CJK JP DemiLight"
[165] "Noto Sans CJK JP Light"
[166] "Noto Sans CJK JP Medium"
[167] "Noto Sans CJK JP Regular"
[168] "Noto Sans CJK JP Thin"
[190] "Noto Sans Mono CJK JP Bold"
[191] "Noto Sans Mono CJK JP Regular"

 これらが実際に日本語の文字を含んでいるか確かめます。以下のスケッチで描画してみます。

// setup文内で回しているので、一通り表示できるまでずっと画面が更新されない。最後まで待つこと。
// Since this code is in the setup statement, the screen will not be updated until it can be displayed. Wait until the end.

int[] testFontIndexArray = 
{
  162,
  163,
  164,
  165,
  166,
  167,
  168,
  190,
  191
};
//[162] "Noto Sans CJK JP Black"
//[163] "Noto Sans CJK JP Bold"
//[164] "Noto Sans CJK JP DemiLight"
//[165] "Noto Sans CJK JP Light"
//[166] "Noto Sans CJK JP Medium"
//[167] "Noto Sans CJK JP Regular"
//[168] "Noto Sans CJK JP Thin"
//...
//[190] "Noto Sans Mono CJK JP Bold"
//[191] "Noto Sans Mono CJK JP Regular"

PFont font;
int fontSize = 24;

void setup()
{
  size(1000, 1200);
  background(255);
  
  float x = 10;
  float y = fontSize;
  String printString = "";
  
  // フォントリストを表示する
  // Display font list
  // printArray(PFont.list());
  
  // フォントリストの内、配列で指定した要素のフォントを表示する
  // Displays the font of the element specified in the array in the font list
  println("Since this code is in the setup statement, the screen will not be updated until it can be displayed. Wait until the end.");
  println("printing...");
  
  for(int i = 0; i< testFontIndexArray.length; i++)
  {
    font = createFont(PFont.list()[ testFontIndexArray[i] ], fontSize);
    textFont(font);
    
    fill(0);
    
    printString = "[" + testFontIndexArray[i] + "]:\"" + PFont.list()[ testFontIndexArray[i] ] + "\"\t" + "こんにちは";
    
    print(i+1 + "/" +  testFontIndexArray.length + "\t");// ex. 1/9, 2/9,...
    println( printString );
    text( printString, x, y);
    y += 10;//mergin
    y += fontSize;
  }
  println("print finished!");
  noLoop();
}

void draw()
{
  
}

実行結果は以下の画像のようになりました。

f:id:Fluorite36:20191022174013p:plain

フォント描画テスト結果

フォント名に「JP」を含んでいた、あたりをつけたフォントは、日本語の文字を含んでいたことがわかりました。

この他のフォントはまだ試していないのですが、同じようにして要素番号を変えて試せるのでやってみたいと思います。

LinuxにProcessing3を入れる

はじめに

WindowsにProcessing3を入れて、GUIツールを作って使っていました。大学でUbuntuを使っていて、そのツールをそっちでも使いたいなと思い、UbuntuにProcessingを導入することにしました。

方法

を使います。

ダウンロード

processing.org

https://processing.org/download/

こちらから、Processingの最新版をダウンロードします。今回は自分のPCにあわせて、

Linux 64bit

を選びました。現時点での最新版は3.5.3なので

processing-3.5.3-linux64.tgz

という名前のファイルがダウンロードされます。ダウンロードできたら、ファイルマネージャーかterminalで展開します。

ファイルマネージャーの場合は、落としてきた.tgzファイルを右クリックして

ここに展開

を選びます。

terminalの場合は、落としてきた.tgzの場所まで移動して、tarコマンドで展開します。

cd /home/ユーザー名/Downloads/
tar xzvf processing-3.5.3-linux64.tgz

インストール

展開したprocessing-3.5.3フォルダ内の

install.sh

 を実行します。terminalで、install.shがある場所に移動します。先ほどの移動コマンドの実行で現在

/home/ユーザー名/Downloads/

にいるとします。そこから展開されたフォルダ processing-3.5.3 に移動します。

cd ./processing-3.5.3/

install.shを実行します。

./install.sh

 

以下のような表示が出たら、Processingのインストールが完了です。

$ ./install.sh
Adding desktop shortcut, menu item and file associations for Processing... done!

このとき同時に、以下が行われます。

  • デスクトップにショートカット用アイコンが生成される
  • スケッチブックフォルダが「/home/ユーザー名/sketchbook/」に置かれる
  • 設定ファイルが「/home/ユーザー名/.processing/」に置かれる

デスクトップに作られたショートカット用のアイコンをダブルクリックすると、Processingが起動します。

やり直す場合

私は最初、手動インストールを試して、失敗して入れなおしをしました。一回まっさらの状態にしてinstall.shで入れなおそうと思い、上述の設定フォルダとスケッチフォルダを消してから入れ直しました。

sketchbookに自分のプログラムが入っていたり、.processing/preference.txtを編集して設定変更などをしている際は、それらをコピーしてバックアップをとっておくと良いと思います。

消す場合は以下で消します。

cd /home/ユーザー名/
rm -rf ./sketchbook/
rm -rf ./.processing/

その他

Processingのライブラリ管理のために、

スケッチ→ライブラリをインポート...→ライブラリを追加...

でContribution Managerを起動した際に、ライブラリ一覧取得などの通信がうまくいかず、Processingのコンソールに

java.net.SocketTimeoutException
at java.net.SocksSocketImpl.remainingMillis(SocksSocketImpl.java:111)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)

...

と表示されて、インストールに失敗したかな?と考えこんでしまっていました。

原因は大したことはなくて、Proxy環境下でないときに、Ubuntuのアプリケーションの「ネットワーク」で、Proxyの設定を「自動」にしていたことでした。「自動」から「なし」に切り替えたら、無事通信がうまく行き、ライブラリ一覧を取得できました。

 

大学で使うPCの時刻合わせ(Windows)

はじめに

大学で使っているWindowsのPCの時計がずれてしまっていました。デフォルトで設定されているNTPサーバーにアクセスできなくなっていたのが原因でした。正確な時刻に合わせたい。そのための設定方法です。

経緯

raspberry piの設定をしているときに、ntpの設定に出会いました。大学で使っているPCの時刻設定もこれで直せるかなと思ってやってみました。

方法

大学のNTPサーバーを調べます。電通大はこちら↓にのっていました。

www.cc.uec.ac.jp

ntp-east.cc.uec.ac.jp

他の大学、機関の方は、それぞれの設定に置き換えてください。

これを、設定→時刻と言語→日付と時刻→関連設定 日付、時刻、地域の追加設定

f:id:Fluorite36:20190330180406p:plain

日付と時刻

→日付と時刻の設定

f:id:Fluorite36:20190330180508p:plain

時刻と地域

→インターネット時刻のタブ

f:id:Fluorite36:20190330180539p:plain

インターネット時刻のタブ

→「設定の変更」ボタン→インターネット時刻設定 のサーバーの入力欄に入れます。「今すぐ更新」ボタンを押すと、大学のNTPサーバーに時刻を確認しに行くよう設定ができました。

f:id:Fluorite36:20190330180607p:plain

インターネット時刻設定

「xxxx と同期中にエラーが発生しました。タイムアウト期間が経過したため、この操作は終了しました。」と表示が出たら、打ち間違いを疑って再挑戦します。私の場合は、最初にボタンを押したときに、打ち間違えていなかったのですがこの表示が出ました。もう一度「今すぐ更新」ボタンを押したら、無事同期できました。

 

時刻がぴったり合うと、気持ち良いですね。

processingのtextSize()使用時の文字化けの回避

processing 3.3.7を使っています。textSize()関数を使用したときに、text()で文字を表示させようとすると文字化けが起きてしまいました。

piyopiyocs.blog115.fc2.com

こちらの記事で、createFont()を使うと回避できるということが分かったので、関数化してみました。そのメモです。

// textSize()で生じる文字化けの回避
void avoidTextSizeMisconversion(){
  PFont font;
  font = createFont("", 64, true);//dummy font
  textFont(font);
}

// setup()内で、text()使用前に1回呼べばOK
avoidTextSizeMisconversion();

↑これで、文字化けが解消できました。

processingのプログラム新規作成時のテンプレートプログラムの追加

processingでプログラムを新規作成をするときに、毎回void setup(){}...と書いていくのがしんどいなと思いました。

f:id:Fluorite36:20190303002529p:plain

新規作成時の画面

お決まりのvoid setup(){}とvoid draw()くらいは最初から書いてあったらな...と思い、新規作成時のデフォルトプログラムの編集方法を調べてみました。

以下、「processing template」でぐぐってトップにヒットしたページ Templates · processing/processing Wiki · GitHub より

 

Processing 3.2より、sketchbookにtemplatesディレクトリが追加されるようになったそうです(知りませんでした...)。

Windows10では、私の場合、templatesディレクトリが以下の場所にあります。

C:\Users\ユーザー名\Documents\processing3\templates

== 追記 2019/10/19 ==

LinuxUbuntu 16.04)では、私の場合、

/home/ユーザー名/sketchbook/templates

にありました。

== 追記終了 ==

このtemplatesディレクトリの下に、各モードに応じた名前(Java Modeだったら、"Java"という名前)のディレクトリを作ります。その作ったディレクトリの中に、"sketch.pde" "example.pde"という名前で、新規作成時に開きたいプログラムを保存します。== ↑修正 2019/10/19 ==*1

中身は、開いたときに入っていてほしい、よく使うものなどを書きます。例えば、こんな感じで。

void setup(){
  size(600, 400);

}

void draw(){
  background(0);
  
}

これで完了です。

プログラム新規作成をすると、先ほど書いた"sketch.pde" "example.pde"の内容が既に書かれた状態で画面が立ち上がります。

f:id:Fluorite36:20190303002837p:plain

テンプレートプログラム追加後の、新規作成時の画面

毎回同じ文字を打たなくて良くなるので楽ちんです。やったぜ。

*1:== 追記、修正 2019/10/19 ==
肝心なファイル名が間違っていたため修正しました。普段PCで使っているファイルの名前は合っていて、記事にするときに書き違えたようです。Ubuntuで環境構築をしているときに、この記事をなぞっていてあれ?と思い気づきました。ついでにUbuntuの場合のtemplateの場所を追記しました。

また、sketch.pdeのbackgroundの引数を、0から255に変えました。個人的に、背景白の方をよく使うので、こっちのほうがいいかなと思いました。スクリーンショットの値と合わせたほうがいいかなと思ったので、ひとまずそのままにすることにしました。新たに改行だけ入れました。
== 追記終了 ==

PCからTwitterに動画を投稿する(Windows版)Microsoftフォト使用

概要

PCからTwitterに動画を投稿するために、Microsoft フォト というソフトで動画を変換する方法についての記事です。

導入

PCからTwitterに動画を投稿するために、Windowsムービーメーカーを使って動画形式を変更する記事を書きました*1。しかし、ムービーメーカーはサポートが終了していたため、サポートされているソフトで変換する方法を探りました。

方法

フォト Microsoft フォト を入手 - Microsoft Store ja-JP を使用して、動画をTwitterに投稿できる形式に変更します。

  • フォト を起動
  • 作成→音楽入りカスタムビデオ
  • 「新しいビデオの作成」画面で、投稿したい動画を選択して、「作成」ボタンを押す
  • 動画名の入力欄が出てくるので名前を入れ、「OK」を押す
  • 動画作成画面がひらく。必要のに応じて、動画の編集(トリミング、縦横比変更等)を行なう
  • 以下でファイルサイズの選択
  • エクスポートと共有→ (M)オンラインでの共有に最適です

     を選択

これで、動画がTwitterに投稿できる形式で作成されます。保存場所は、デフォルト設定では、

C:\Users\ユーザー名\Pictures\エクスポートされたビデオ

 になっていました。この動画をTwitterの投稿画面から選択すると、投稿できます。

最後に

よりよい方法をご存知でしたら教えていただけるとうれしいです。

脚注