Oh!Super164 取り留めのない日記のような

2025/12/29 月曜日

vscode+wasm(c#)

Filed under: c#,プログラミング — admin @ 14:56:50

vscodeでwasmのデバッグ最短コース
dotnetにwasm用のテンプレートが無い場合に先に追加しておく(dotnet new wasmbrowserでエラーが出る場合は入っていない)

dotnet new install Microsoft.NET.Runtime.WebAssembly.Templates

wasmサンプルプロジェクトを作成

> dotnet new sln -o wasm
> cd wasm
> dotnet new wasmbrowser -f net8.0 -o wasm1
> dotnet sln add wasm1/wasm1.csproj
> dotnet build -c Debug

vscodeでwasmを開いて、launch.jsonを作成しビルド
urlは自動生成されたlaunchSettings.jsonに書いてあるurlをコピペ

	{
		"name": "Debug WASM",
		"type": "blazorwasm",
		"request": "launch",
		"cwd": "${workspaceFolder}/wasm1",
		"url": "https://localhost:7080"
	}

ブレークポイントを置いてデバッグ開始すると、そこで止まる。
出来る事がわかったので、そっとvscodeを閉じるw

2025/11/21 金曜日

VS2026 Community

Filed under: c# — pecos @ 22:36:03

VS2022と比べて気持ち起動が早くなったのか(な?)
それにしても、いつからWinFormのデザイナーが使えるようになったんだろう。2022では使えて驚いたが、2018では使えなかった。dotnetはVSのバージョンで使える上限が決まるので、10を使いたければ2026しかない。VSCodeなら制限はないが、デザイナーが使えないのでWinFormは厳しいだろう。
相変わらず、VSは良く出来てると思う

2025/9/7 日曜日

いつの間に?

Filed under: c# — pecos @ 22:45:37

知らない間に便利になってたC#構文

void foo(object a) {
  //今までこんな感じだったのが
    var t = a as T;
    if (t is not null) {
        t.bar();
    }
    //これで済む
    if (a is T t) {
        t.bar();
    }
}

これが思いの外便利。
他にもTupleに名前付けられたりとかVSCodeの構文チェッカーがいろいろ指南してくれる。

2022/7/21 木曜日

PDFLook

Filed under: c#,PC — pecos @ 22:51:11

折角作ったライブラリなので
これを使った簡単なコンソールAppを書いてみる。取り敢えずPDFは読めているが、文章や単語の連結が難しい。PDFでは文章単位で作成するのも、TVや映画の犯人が新聞や雑誌から切り抜いた文字をバラバラに貼り付けて脅迫状を送りつけるようなスタイルで作成されていたりと様々なので、Acrobat Readerで見た通りにテキスト展開をするのが難しい。
またひとつつまらぬ物を斬ってしまった、、、
PDFLook

Close
PDFLook

2022/7/4 月曜日

PdfStreamReader

Filed under: c# — pecos @ 0:34:04

WriterがあってReaderが無いのは片手落ちだろう
と言う軽い気持ちで試験実装を始めてみたのだが、PDFの奥は深い、、、どころかマリアナ海溝が浅瀬に感じる程であった。そもそもが組版システムなので印刷技術やPostscript、フォントや文字コードに合字、結合文字等の知識、そして外国語の知識まで必要だ。多分、完璧なものは無理ゲーなので、どこで妥協点を見出すかを先に考えた方が賢明なくらい。手持ちのPDFが読めるようになって来たものの、想定外の作り方をされたPDFだとお手上げだろうw
好みの方法だけを使える出力側と異なり、仕様上許される全ての手段に対処しないといけない入力側はやっかいだ。それに加えて文字列に変換が出来ない作りになっているものも存在する。あくまでPDFは文字のグリフを扱うものでグリフさえ特定できるのであれば必ずしも可読な文字コード(UNICODEやShift-JIS等)に変換出来なくても良いのだ。そういった作りのものは光学的(OCR)にしか解読出来ない(滅多に無いだろうけど)。

2022/6/19 日曜日

OpenType/CFF

Filed under: c#,PC — pecos @ 22:25:43

拙作のPDFライブラリでは未対応だったので
CFFも埋め込み出来るように改造したのだが、CFFのクセが強くて苦戦する。TTFファイルは昔のMacのリソースフォークのような名前付きのリソースが複数詰め込まれた複合ファイル形式になっている。そこに無理やりAdobeのPSフォントを詰め込んだのがOpenTypeらしい。”CFF”というリソースがそれになるのだが、それ自身が更に複合ファイル化されていてマトリョーシカ状態になっている。AcrobatReaderで読み込めるまでは早かったが、ChromeやmacOSのプレビューで化けたりと試行錯誤の末やっと表示できるようになった。
無駄に頑張ってみたw

2022/5/15 日曜日

オレオレ nuget

Filed under: c#,備忘録 — pecos @ 0:44:27

やり方を忘れてしまっていたので備忘録
自作パッケージの準備と作成

<PropertyGroup>
  <PackageId>OreOre</PackageId>
  <Version>1.0.0</Version>
  <Authors>my_name</Authors>
  <Company>my_company</Company>
</PropertyGroup>
$ dotnet pack -c Release

これで”OreOre-1.0.0.nupkg”が出来上がる。
自作パッケージのローカルな置き場を追加する。nuget.configを直接編集するかコマンドラインにて:

$ dotnet nuget add source <dir-for-packages> -n <source-name>
$ dotnet nuget list source

後はここに自作のパッケージを放り込めばいい。

自作パッケージを別のプロジェクトから参照するには:

$ dotnet add package OreOre
$ dotnet restore

これで参照できるようになる。

2022/5/4 水曜日

VSCode+MSTest

Filed under: c# — pecos @ 1:25:20

当方がやり方を間違えてるのか?
同じ非同期処理のデバッグをLinux上のdotnetをリモートでデバッグするとデバッグ完了時に落ちてしまう。まったく同じコードをWindows上でやると問題ない、、、謎だ。一応、TestMethodの戻り値にTaskは返せるらしいのだが挙動が異なってしまう。

Powered by WordPress