LibreOffice Writer - 文字揃え(タブ位置)
文字揃えを使えるようになると以下のような文章を記載できるようになります。
(題以外に文字揃えを用いている)

文字揃えは以下の 4 種類あります。
| 1. | 左揃え | ![]() |
![]() ※ 赤い線は実際には表示されません。 |
| 2. | 右揃え | ![]() |
|
| 3. | 中央揃え | ![]() |
|
| 4. | 小数点揃え | ![]() |
準備
をクリックし編集記号(改行やタブ、半角空白)を表示する。※ 編集記号は不要であれば非表示でも構いません。もう一度クリックすると非表示になります。
(下記図では半角空白は未使用のため表示されていません)
| 1. | 改行 | ![]() |
↓
![]() |
| 2. | タブ | ![]() |
|
| 3. | 半角空白 | ・ |
使い方

ここから使い方を示します。
1 行目に「1」と「.」、 Tab(※)、「あいうえお」と入力し、[Enter] キーを押下します。
※ Tab(タブ)はキーボードの左端にある [Tab] キーで入力できます。
カレットを 1 行目に移動します。

続いてルーラーの目盛り(ここでは 4)をクリックする事で文字揃えを設定します。(クリックすると現在の文字揃えを設定し、ルーラー上に文字揃えのアイコンが表示されます)
設定後:「あいうえお」が目盛りの位置(クリックした所)へ移動。
ルーラー上の文字揃えのアイコンを右クリックすると文字揃えを変更する事ができます。

また、ルーラー上の文字揃えのアイコンをドラッグ(※)すると文字揃えの位置を移動できます。
※ アイコンにカーソルを重ねてマウスの左ボタンを押しながらマウスを移動させる操作。
文字揃えはタブを入力する事で機能し、1 行に複数設定できます。また、行毎に記憶されます。
段落ダイアログからより細かく設定する事ができます。
「書式」メニュー内の「段落の書式」から段落ダイアログを表示できます。
段落ダイアログの「タブ」タブ内で設定する事ができます。(キャレットのある行の内容)

蘇った低スペックパソコン!

未使用の低スペックパソコンをお持ちではないですか……
Windows 10 がリリースされた当初は問題なく使えていた。
定期的に行われる Windows アップデート。
ある時から動作環境のスペックが上がり、ついに重すぎて使う気も失せてしまったノートパソコン ASUS K52F 。
ASUS K52F のスペック
CPU: Intel Pentinum 2.19 GHz(2コア)
RAM: 4 GiB
ストレージ: HDD 650 GB
最近ネットを見ていると古い Windows パソコンに ChromeOS や Linux に入れ替えパソコンを蘇らせるというものを目にする事がある。
ふと使用しなくなったノートパソコンがある事を思い出した。
最近はネット検索は利用せず、まずは AI に背景を聞くようにしている。(もちろんうのみにはせず)
試しに Linux のディストリビュージョンで低スペックパソコンでも動くものはないかを聞いてみた。
いくつかの上げてもらった候補の中に「Linux Mint」があった。
Linux Mint は Linux の事を調べるとわりと目にするディストリビュージョン。(名称もいい感じ♪)
且つ、Live USB で起動させる事ができ、且つ、変更した状態を保存する事もできると!
(Live USB とはパソコンに USB を接続するのみで別の OS を起動させる事ができる仕組み。つまり、パソコンには手を加えずに Linux Mint を体験できる!)
Linux Mint ディストリビュージョン(Xfce Edition)
RAMは 4 GiB あれば十分。
メインで使用しているパソコンの RAM は 32 GiB なのに……
これが Linux と Windows の違いか!?
好んで Windows を使用しているのだが、この RAM の差を改めて突き付けられると Linux に乗り換えたくなる!!
約 10 年前のパソコンでも十分に動作する Linux 関係の開発者には感謝しかない。
AI …… Google Gemini に聞きながら Live USB を完成!(Rufusは優秀)
ノートパソコンに USB を接続して起動!
スタートメニューが直ぐに反応する。
ファイルマネージャも直ぐに表示する。
Wi-Fi も接続できる。
Webブラウザは起動に時間を要する。サイトを表示するのにももたつく。けど、観られる。
LibreOffice の Calc や Writer も問題なく使える。
日本語入力も設定を変更する事で行える。ただし、ローマ字入力。不満!(設定をちゃんと行えばかな入力にできる)
Live USB での起動と使用感は合格。
Live USB のままでも良かったんだけど、USB を接続しておくのは嫌だし。
デスクトップに「Install Linux Mint」というアイコンが表示されるし。
HDD の中身を見て Widnows 10 を削除してもいいし、十分な空きがあるし、Linux Mint をインストール!
Linux Mint をインストール後
・日本語入力できるように。(109キーボードに設定)
・日本語をローマ字入力ではなくかな入力で行えるように。
(スマフォもかな入力に対応してくれないかな…… フリックやスワイプはオーバーリアクションで疲れる)
・Web ブラウザ Brave のインストール。(広告ブロックが標準搭載)
・LibreOffice Calc 等の Java 無効化。(起動時間の短縮のため)
・DVD ドライブが付いているから DVD ビデオが見られるように。(魔女の宅急便を最後まで観ちゃった笑)
これで使えるパソコンに換装完了!
これで Linux Mint に換装する依頼がくるかな!いくらにしよう(なんて笑)
それにしても Gemini に聞く事で迷わずに目的を達成できた。頼もしい!
※ この記事の作成や Linux 環境への換装は Gemini にアドバイスしてもらいながら行いました。
LibreOffice Calc / Writer の起動時間短縮
以下の手順で Java を無効化する事で Calc ゃ Writer の起動時間を短縮する事ができます。
※ Windows 版と Linux 版の LibreOffice に効果があります。
- LibreOffice Calc(または Writer)を起動。
- 「ツール」メニューの「オプション」をクリック。
→ 「オプション」ウィンドウが表示。

- 「オプション」ウィンドウの左側のツリー内の「LibreOffice」-「詳細」をクリック。
→ 「オプション」ウィンドウの右側に「Javaオプション」が表示。 - 「Javaオプション」内の「Java実行環境使用」のチェックを外す。
- 「オプション」ウィンドウの[OK]ボタンをクリック。

手順は以上です。
Calc(または Writer)を終了し再起動してみて下さい。
USBメモリの暗号の有効化/無効化
ここので暗号の無効化とはファイルの読み書きができる状態のこと。(鍵の解錠)
- PowerShell (5.1 推奨)
- コマンドプロンプト
USBメモリのフォーマットには NTFS または exFAT が利用できるが exFAT がお勧め。NTFS はUSBメモリへのアクセスが exFAT より多いため負担がかかり寿命が短くなると言われている。
unlock-bitlocker -MountPoint 'E:' -Password $pw
C# WinUI 3におけるマルチスレッド
C# WinUI 3におけるマルチスレッドを説明する。
マルチスレッドは同時に複数の処理を実行する仕組み。
プログラムの実行はスレッドが担っており初めから存在するスレッドをメインスレッド、メインスレッドから生成するスレッドをサブスレッドと呼ぶ。
本記事では以下2点を簡単に説明する。サンプルコードはおまけ。
本記事の内容を参考にする際はご自身の判断と責任のもとでお願いします。
本記事の内容を実践したことによるいかなる損害についても著者は一切の責任を負いかねます。予めご了承下さい。
1. サブスレッドの実行(Taskとasync/await)
マルチスレッドを実装すると複雑なコードになりがちだがTaskとasync/awaitを使う事で容易に利用できるようになった。
Taskとasync/awaitはWinUI 3に関係なく以前から利用することができる。
- Taskは.NET Framework 4.0(2010年)から利用可。
- async/awaitは.NET Framework 4.5(2012年)から利用可。
以下にサブスレッドを実行するコードを示す。
{
// awaitの呼び出し前はメインスレッドが実行を行う。
// awaitでメソッドを呼び出すとそのメソッドの実行はサブスレッドが行う。
// awaitでメソッドを呼び出す場合、awaitでメソッド呼び出しを行うメソッド(StartSubThread)は
// asyncで定義する必要がある。
await Task.Run(() =>
{
// ここはサブスレッドが実行を行う。
Task.Delay(1000); // ここは時間がかかる何かしらの処理。
});
// awaitの呼び出し後はスレッドプールのスレッドが実行を行う。
// (メインスレッドとは限らない)
}
Task.Runの引数 () => {} はラムダ式です。わからなければメソッドを定義した上でそのメソッド自体を引数として渡していると理解して下さい。(デリゲートをよりシンプルにしたイメージです)
2. サブスレッドからコントロール(TextBox等)へアクセス
サブスレッドからコントロール(TextBox等)へ直接アクセスする事は出来ません。(アクセスしたら例外が発生する)
サブスレッドからコントールへアクセスするためにはMicrosoft.UI.Dispatching.DispatcherQueueクラスのインスタンスメソッドTryEnqueueを使用する。
サブスレッドとメインスレッドで変数を共有する場合はlock等で排他制御を行う必要がある。(排他制御は本記事では説明しない)
3. サンプルコード
- 実践的なサブスレッドの実行メソッド(TryEnqueueの使用)
- 実用的なサブスレッドの使用(サブスレッドの中断。アプリを閉じる時に必要なことも)
※ 実行には Visual Studio Community 2022 以上をインストールしておりC#とWindows 11も問題なく扱える方が対象です。
マイナンバーカード読み取りエラー! ドライバのインストールし直しで解決
マイナンバーカードの読み取りに失敗した。
カードリーダのドライバをインストールし直すことで解消!
以下は経緯――
カードリーダは「非接触型 IC カードリーダー/ライター RC-S370」を使用。毎年、確定申告の際には使用しており初めて起こった。
このリーダは10年以上前のもので生産は終了し、サポートもされていない。
確定申告をパソコンで行う際にマイナンバーカードを読み取らせるのだが、ここで以下のようなエラーメッセージが表示された。

エラー詳細の 0x8010001d を調べて見ると「スマート カード リソース マネージャーが実行されていません 」という意味だった。
確定申告のFAQ等をみると Windows サービスの「Smart Card」を実行すると解決する旨が記載されていたが解消しなかった。
「NFC ポート自己診断」というソフトがドライバとともにインストールされていたため接続を確認したところ「リーダー/ライターとの通信」はOK、「カードとの通信」はNGとなっていたためマイナンバーカード自体が物理的に問題があるのかと思ったがそんなことはなかった。
PASMO でも試してみたら両方ともOKとなったためカードリーダ自体にも問題はないと判断し、ドライバのインストールし直しに至った。
ASP.NET : VB : GridView のセル結合
- 結果イメージ(左側は結合する前、右側は結合後)


- 概要
- GridViewのコードを抜粋。
- default.aspx
- <asp:GridView ID='gv2' runat='server'>
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<asp:Label runat='server' Text='No.' style='background-color:#00ff80' />
</HeaderTemplate>
<ItemTemplate>
<asp:Label runat='server'><%# Container.DataItem('No').ToString %></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
<asp:Label runat='server' Text='B' style='background-color:#00ff80' />
</HeaderTemplate>
<ItemTemplate>
<asp:Label runat='server'><%# Container.DataItem('B').ToString %></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
<asp:Label runat='server' Text='C' style='background-color:#00ff80' />
</HeaderTemplate>
<ItemTemplate>
<asp:Label runat='server' Text='<%# DataBinder.Eval(Container.DataItem, 'C') %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView> - default.aspx.vb
- Dim dt As New DataTable
dt.Columns.Add("No")
dt.Columns.Add("B")
dt.Columns.Add("C")
dt.Rows.Add(New Object() {"1.", "▲", "■"})
dt.Rows.Add(New Object() {"□", "△", "○"})
dt.Rows.Add(New Object() {"X", "Y", "Z"})
dt.Rows.Add(New Object() {"2.", "▲", "■"})
dt.Rows.Add(New Object() {"□", "△", "○"})
dt.Rows.Add(New Object() {"X", "Y", "Z"})
dt.Rows.Add(New Object() {"3.", "▲", "■"})
dt.Rows.Add(New Object() {"□", "△", "○"})
dt.Rows.Add(New Object() {"X", "Y", "Z"})
gv2.AutoGenerateColumns = False
gv2.DataSource = dt
gv2.DataBind()
'セルの結合(3行セット)
For i = 0 To gv2.Rows.Count - 1 Step 3
'1行目の1列目は項番として3行結合
gv2.Rows(i).Cells(0).RowSpan = 3
'1行目の1列目は右上
gv2.Rows(i).Cells(0).Style("text-align") = "right"
gv2.Rows(i).Cells(0).Style("vertical-align") = "top"
'2、3行目は結合したため非表示
gv2.Rows(i + 1).Cells(0).Visible = False
gv2.Rows(i + 2).Cells(0).Visible = False
'3行目の2と3列目は結合
gv2.Rows(i + 2).Cells(1).ColumnSpan = 2
'3行目の3列目は結合したため非表示
gv2.Rows(i + 2).Cells(2).Visible = False
Next - 参考
- GridView の使い方







