WPS-OFFICEで太字が潰れてしまう対応

さて、どのくらいこの現象にぶち当たる人数がいるのかは想像できませんが。

ウチのUbuntu24環境でちょっとしたOFFICE系データの閲覧や編集に重宝しているWPS-OFFICEなんですけれど、最近構築しなおしたUbuntu24.04の環境ではなぜか日本語表示が潰れてしまうという現象にあたりました。

■どんな現象が起きる?

普通に日本語表示をさせている部分にはまるっきり問題は出ないのですよ。

ところが、日本語の文字列に太字の設定をしたとたんに、まるでマジックで雑に塗りつぶされたかのように黒く潰れてしまうんですね。

とまあこんな感じで、上記はライター(※ワード的なもの)で書いた文書ですが、日本語文字の太字設定をした部分だけが潰れた表示になってしまいます。

見ようによっちゃまるで呪われたかのような文書になってしまいます(笑)

文字情報そのものが失われるわけではなく、ただ単に表示が潰れているだけではあるのですが読めないのは困った。

■原因は?

どうやらこれはWPS-OFFICEのバグが原因なようで、ざっとネットを見渡してみると2023年ごろにはすでに話題に上がっているようなのですが現在のところバグが取り払われた気配はありません。

しかもこのバグ、FreeType2.13.0よりも新しいバージョンのFreeTypeと組み合わせた場合にのみ発症するようです。

なので、Ubuntu24.04にアップして標準インストールされるFreeTypeのバージョンが2.13.2になったがために目立つようになってしまった、ということのようです。

■対処方法は

さて、新しいバージョンどうしを組み合わせると問題が出るということであれば、どちらかを古いバージョンにダウングレードしてしまうというのが最も簡単な対処法です。

今回はこのサイトの記事を参考にfreetypeの側をダウングレードして対処したいと思います。

問題は、Ubuntu24ではfreetype2.13.2しか配布されていないようで、ちょっと探しにいってみても2.13.1までしか遡れない。

そうなるともう、古いバージョンのソースコードをなんとか入手してコンパイルするという作業が必要になってきます。

ソースコードそのものは、
https://sourceforge.net/projects/freetype/files/freetype2/2.13.0/freetype-2.13.0.tar.xz
から入手可能なようです。

■手順は?

ダウンロードした圧縮ファイルを解凍し、
そもそもfreetype2.13.2がインストール済みという前提なので2.13.0のインストールは不要で、コンパイルまで進めることになります。

tar -xvf freetype-2.13.0.tar.xz
cd freetype-2.13.0
./configure –prefix=~/freetype-2.13.0
make -j$(nproc)

ここまでで必要なファイルが出来上がっているはずなので、

find . -name “*.so*”

として場所を確認します。私の環境では 、

./objs/.libs/libfreetype.so
./objs/.libs/libfreetype.so.6
./objs/.libs/libfreetype.so.6.19.0

と3つのファイルが出来上がっていたので、この3つをWPS-OFFICE配下のディレクトリにコピーします(挙動をみている限り3つめは不要な気もするが)。

sudo cp ./objs/.libs/libfreetype.so /opt/kingsoft/wps-office/office6/
sudo cp ./objs/.libs/libfreetype.so.6 /opt/kingsoft/wps-office/office6/
sudo cp ./objs/.libs/libfreetype.so.6.19.0 /opt/kingsoft/wps-office/office6/

■無事に解決

さてコピーまで済んだところでWPSを立ち上げてみます。

冒頭のライター(※ワード的なもの)で書いたファイルですが、日本語文字の太字部分がちゃんと潰れずに表示されています

もちろんWPSのライター以外のアプリケーション(スプレッドシート※エクセル的なもの、プレゼンテーション※パワポ的なもの)でも同様に改善することが確認できます。

最初この現象を目の当たりにしたときにはフォントファイルが壊れているか足りないのかな?などと考えたてアレコレ試すためにとても時間を消費するわけです。

でも解決できてみると「なんだこんな簡単なのかっ」となってしまうのはトラブル解決あるあるですね。


安心安全安価なSDカードデータ復元・HDDデータ復元は
長年の信頼と実績の『株式会社パソコントラブル救助隊』へ。
https://hqsecure.net/

古い年賀ハガキはレターパックに交換しましょう

2024年の秋から郵便料金がグンと値上がりしちゃいましたね。

おかげで、ハガキもそれまでの63円からいっきに85円へと値上がりしてしまいました。これを真っ先に感じる機会になったのが年賀状を準備するシーズン。

ある程度まとまった枚数を購入するものだから、1枚あたりの単価が上がった分がかなり利いてくる。正直イタイ。

・古い年賀ハガキって残ってますよね

さて本題。

毎年ちょっと多めに買うのが一般的ではないかと勝手に思っているのですが、私の手元にもざっと見ただけで100枚を超える未使用年賀ハガキがありました。

毎年毎年の余り枚数はせいぜい数枚~10枚前後なのですが、毎年のように「今年こそこの未使用ハガキを交換してくるぞ」と思うだけで重い腰が上がらず、、、気が付けば干支も一回りしていました(笑)

・ざっと並べてみたら

12年分の余りハガキをざっと並べてみると、当時50円だったものが52円、62円、63円と徐々に上がっているのが浮き彫りになってきます。じわじわ慣らされていたんですね。

郵便局に持って行くにも、まずは手元に何枚あるのかあらかじめ数えておいた方が良いでしょう。

というわけでそれぞれの料金ごとに枚数を数えて付箋を貼り付け、時間に余裕のある時に持っていけるように袋に入れておくわけですが、ここで1つ大事なことが。

・持ち込む枚数によって手数料が違う

事前に調べておいてよかったと思ったのですが、持ち込む枚数によって交換手数料が変わります

通常の交換手数料はハガキ1枚あたり6円。これは50円のハガキだろうが63円のハガキだろうが1枚あたりの交換手数料はかわりません。

ところが、100枚以上持ち込むと1枚あたりの交換手数料が6円から13円に跳ね上がります。まるで硬貨取扱いの手数料トラップみたいな感じですね。

なので少し手間ですが、100枚未満になるように分けて袋詰めして枚数カウントしておくのがお利巧さんです。

・交換は郵便窓口へ

交換は大きな集配局でも地元の郵便局でもどちらでも取り扱ってくれます。貯金窓口ではなく郵便窓口に持ち込みましょう。

時間帯によっては局員さんも忙しそうなので遠慮してしまいそうになりますが、交換作業はとても手慣れてらっしゃいます。

ささっと枚数をカウントして、料金と手数料を計算してくれます。むしろこの後の「何に交換するか」を選ぶ時間のほうがかかっちゃうくらいです。

手数料については別建てで支払っても良いようなのですが、手数料以上の金額になるわけですからそこから差し引いてもらった額のものと交換するのが手間も少なくて良いでしょう。

現金とその年の年賀ハガキには交換できないという掟がありますが、それ以外だったら選べるようですので、使いがってのよいレターパック(600円・430円)にありったけ交換してもらって、残った端数は使う頻度の高い額面の切手にしてもらいましょう。

最後の最後の端数については多分1円とか2円切手くらいになりますね。

・今後の年賀状はより親愛なる方々に

さてすっかり高くなっちゃった郵便料金で、年賀状のやりとりをする相手というのも厳選しなくっちゃいけないときっと誰しもが思っていることでしょう。

そうなると、今後やってくる年賀状というのは今までよりも一段高い「だいじな人」扱いされているのだなあと理解したほうが良いかもしれません。


安心安全安価なSDカードデータ復元・HDDデータ復元は
長年の信頼と実績の『株式会社パソコントラブル救助隊』へ。
https://hqsecure.net/

iCloud+の値上げがきちゃった

そろそろ来るだろうなーと世の中の値上げ全盛の空気を吸いながら過ごしていたら、やっぱり来ちゃいました。この年末に。

iCLoud+ 200GBが月額400円 → 450円 になりますって!

・値上げ幅はそんなに大きくは感じないけど

なんだ、たかだか数十円のアップじゃないか、気持ち的には+100円くらいくるんじゃないかとドキドキしてたけれど、まあまあ許容範囲か。年間で600円アップ。

そのほかの容量についても当然ながら軒並み値上げで。もっともこの値段というのは8月下旬から新規加入する場合として値上げ発表されていたものと同一ですが。

  • 5GB:無料 → 無料
  • 50GB:130円 → 150円(+20円)
  • 200GB:400円 → 450円(+50円)
  • 2TB:1,300円 → 1,500円(+200円)
  • 6TB:3,900円 → 4,500円(+600円)
  • 12TB:7,900円 → 9,000円(+1,100円)

という内容にあわせられてしまった感じ。あーあ、永年利用割引とかあってもよいのになあ

Microsoftがアプリとあわせて1TBで1,300円くらいなのを考えると、500GBになれば450円でちょうど良いのになあと思ったり思わなかったり。

・Apple製品との親和性が抜群

さすがにiCloud+ってApple製品との親和性が高い。他社を寄せ付けない使い勝手の良さなのでついつい支払い続けてしまうわけです。

同様の仕組みはAndroid – Google DriveとかWindows – OneDriveとか世の中に存在するわけですが、iPhone/iPad/MacOS – iCloud Driveの使い勝手と比べるとなんとも痛々しい、というか利用者に多大なスキルを強制する(ストレスなく使いこなしてる人はすごいと思うのですよ本当に)
※意見には個人差があります

過去にはがんばってownCloudとか構築運用してたんだけれどなあ、やっぱり敵わないなあ。

・大容量クラウドがほんとに必要か?

そもそも大容量のデータを共有する必要があればNASやルーターを上手に活用することで手軽に自前のファイル共有ができる時代だし(潜在的なセキュリティ面で嫌ですけれど)、クラウドに大容量のファイルをアップロードしたところで足回り回線がまだイツデモドコデモ爆速とは言えないし。

となると、ちょっとした文字データや集計データファイルくらいであれば数MB単位だし、数十〜数百GBクラスのクラウドスペースがいつでも使えるようにさえなっていれば充分に事足りるわけで。

もうすこしWindows用のiCloudアプリが安定して動いてくれたらさらに嬉しいのですが(逆にMacOS用のOneDriveもですが)、過剰な期待をするといつも余計な労力と時間を注ぎ込んだあげく運用面でストレスをかかえる結果になるのでもう(笑)

と、ブツブツ文句を書き連ねても割引オファーが来ることは期待できないので、おとなしく値上げを受け入れるしかなさそうです。学割でも用意されていれば嬉しいのにね


安心安全安価なSDカードデータ復元・HDDデータ復元は
長年の信頼と実績の『株式会社パソコントラブル救助隊』へ。
https://hqsecure.net/

マウスも鳴くんだね

とある深夜、静まり返った部屋の作業机の上からかすかに、でもハッキリと、コイル鳴きっぽい高周波音が耳に届くようになったんです

機材が多くなればなるほどACアダプタのコンディションなどで鳴き声が聞こえるようになってしまうのは日常といえば日常なのですが、

でもやはり耳鳴りみたいな感じで、けっして気持ちの良いものではない。

できればさっさと原因をつかんで対策できる性質のものなら対策してしまいたいわけで。

■原因が見当たらない

波長が短いので耳を向ける角度によって強弱がすぐに変わるため、わりと発信源は特定しやすいはずのもの。

おおざっぱに、発振しているとおもわしき領域にあるものは

・待機状態のモニタx2台
・HDDスタンド用のACアダプタx1
・USB電源アダプタx1
・モニタ用ACアダプタx2
・MacBookx1
・スマホ用ワイヤレス充電スタンドx1
・固定電話x1

容疑者が限られるので1つ1つ耳を近づけて行って確かめてみるも、、、、なかなか犯人にたどり着かない。どうやら容疑者すべてがシロのよう。

でもあきらかにその周辺から発振音が聞こえる(耳鳴りじゃないよ)。

おかしい、なんだか特定できないととても気持ち悪いというか怖い(電源周りのトラブルの前兆だったりするわけで)

■以外な犯人がそこに居た

本腰をいれ、あらためて現場にあるものを見直してみると、

・PD電源に繋がっているUSBハブ
・Bluetoothマウス

が転がっている。

もちろん、電源に繋がっているハブを確認してみるけれど、どうやらシロのよう。

となると残るは、もっとも可能性が低いという目で見ていたBluetoothマウスのみ。

Logicool M350

■マウスが鳴いていた

おそるおそるマウスを持って耳にあててみると、あきらかに発振している音が聞こえる

念のために蓋をあけて乾電池を取り外してみても、まだ鳴いている、、、と思ったら10秒ほどで静かになった

怪訝に思いつつ乾電池を元どおり装着してみると、やはり、聞こえる。
どうやら鳴いている犯人はマウスだったようで、とっても意外な結果になった。
※ちなみにロジクールのPEBBLE M350という可愛らしいUSB/Bluetooth両用マウスです。

■電池が怪しい?

マウスに電池を入れなおした直後、マウスのパイロットランプが激しく点滅していたのが妙に気になったので、別の乾電池に入れ替えてみた。

すると、パイロットランプは点灯状態に。どうも点滅状態というのは異常な動きだったようだ

このマウスは、普段は作業机の上にあり、電源スイッチはONにしたままBluetoothモードで出番を待っている状態。でもMacBookにペアリングしてあるためほとんど出番がなく、機会としては1日あたり数分程度というところ。
ほとんど存在を忘れさられているような状態、といった使い方です。

新しい電池に入れ替えてみると、、、耳に当てるとかすかに発振音は聞こえるものの耳から離せばまったく聞こえてこない。

そういえば、元の乾電池は購入当初に入っていたもので、たぶん5年くらいは交換していないな。きっと電池切れ寸前になったことが原因なのだろう

■マウスもお腹を空かせて鳴く

というわけで真夜中に唐突に発振音がしはじめてから30分ほど。

犯人捜しの結果は意外な結末となり「マウスだってお腹が空いたら鳴いて知らせてくれるんだなぁ」と、いままでになかった新たな教訓を得たのでありました。

切れかけの電池はトラブルの元。


安心安全安価なSDカードデータ復元・HDDデータ復元は
長年の信頼と実績の『株式会社パソコントラブル救助隊』へ。
https://hqsecure.net/

MacOSのRDP設定ファイルはどこにある?(Windows.App)

まったく、RDPクライアントがWindows.Appだなんて!とんでもないアプリ名に変えてくれたもんだMicrosoftめ。関連情報がキーワード検索しにくくって仕方がない。

普段MacOSを使っていると、あまりアプリの動作に関係するような情報に深入りしようという気にならないせいか、Windows.AppがRDP接続先の情報をどこのフォルダに格納しているのか意識することもない。

でも、今回ちょっとだけその情報に触れてみたい事があったので探してみることにした。

RDP接続アプリのWindows Appアイコン

■設定ファイルの保存場所は

答えから言うと、

設定ファイルの格納場所は:
~/Library/Containers/com.microsoft.rdc.macos/Data/Library/Preferences/com.microsoft.rdc.macos.plist

セッションファイルの格納場所は:
~/Library/Containers/com.microsoft.rdc.macos/Data/Library/Application Support/com.microsoft.rdc.macos

のなかに存在するようではある。
※”macos”のほか”mac”となっているフォルダやファイルも存在する場合があるので更新日時でどれが新しいものか判断する必要がある

ただ残念なことに、プレーンテキストで保存されていることを期待したのだけれどどうやらSQLiteであるようだ。なので下手に手を加えてしまうことは避けたほうが、みずからトラブルを招き込まずに平和に過ごせることだろう

■sqliteを直接見てみる

それでもやはり目の前のファイルの中身をのぞき見してみたい衝動には駆られる。

CLIからだと sqlite3がインストールされていることが前提だけれど、

% sqlite3 “~/Library/Containers/com.microsoft.rdc.macos/Data/Library/Application Support/com.microsoft.rdc.macos/com.microsoft.rdc.application-data.sqlite”

とすることで、保存してある接続先のデータベースに潜り込める。

ここからはsqlite3のコマンド操作になるが、

sqlite> .tables

と入力するとテーブル一覧が参照でき、手っ取り早く

sqlite> SELECT * FROM ZBOOKMARKENTITY;

とすると、保存されている接続先とそのパラメタ一覧が画面いっぱいに表示される。

まーいろんな値が格納されていること!と思いながら眺めるのもよし。

RDP接続先一覧

■修正方法は

さて、今回修正しておきたいパラメタはたったの1つ。

とある接続先の connection type:i:1 となっている部分を connection type:i:6 あるいは 7と書き換えたいのみ。

そのためにまず調べるのがテーブル構造。

sqlite> .schema ZBOOKMARKENTITY

で確認すると、とりあえずキー項目と人間が読んで判断できそうなホスト名らしき項目があるので、

sqlite> SELECT Z_PK, ZHOSTNAME FROM ZBOOKMARKENTITY;

とすることで一意のIDとそのホスト名やIPアドレスが表示される。

だけれど、フィールド名を眺めてみても直接RDPのパラメタを保持しているようなフィールドは見当たらず・・・

sqlite> SELECT Z_PK, ZHOSTNAME, ZRDPSTRING FROM ZBOOKMARKENTITY WHERE Z_PK=18; ※一覧から得たID

と試してみると、嫌なことに修正したい値を含めたRDPのパラメタ値が文字列としてだらだらと格納されていた

sqliteって直接文字列を操作したりできるのかなー?と不安に思いつつも、

sqlite> UPDATE ZBOOKMARKENTITY SET ZRDPSTRING = REPLACE(ZRDPSTRING, ‘connection type:i:1’, ‘connection type:i:7’) WHERE Z_PK=18;

と入力し、反映されているかどうか確認すると無事にパラメタが書き換わっていた。

試しにRDP接続してみると、無事に修正した設定が反映されていたので書き換えポイントは間違っていなかったようだ。

最後は

sqlite> .exit

としてデータベースを閉じておくことを忘れないように。

■データベース操作に慣れてないと

私自身もデータベース操作に慣れているかと問われると、どちらかといえば苦手なほうと答える入門者レベル。

データベース操作はちょっと間違ってしまっただけでも全体を壊すことに繋がりかねないので、安全のためには触れないほうが良いでしょう。

どうしてもパラメタを書き換えたい場合には、

・Connections – Export to RDP file…を選んでファイルに書き出し
・書き出したファイル内をテキストエディタで編集
・再びInport from RDP file…

といった手順を踏むのが安全だしわかりやすいでしょう。直接書き換えちゃったほうが楽じゃないかと思ってたんですが、これじゃあどっちが手間なのかよくわからないくらいの差ですね。


安心安全安価なSDカードデータ復元・HDDデータ復元は
長年の信頼と実績の『株式会社パソコントラブル救助隊』へ。
https://hqsecure.net/