2005-01-01から1年間の記事一覧
ソフトの名前はdigdicです。
原因がさっぱりわからなかったのでとりあえず棚上げして、 EBライブラリの最新バージョンが4.2.1にあがっていたので 入れ替えて試してみると、何と解決してしまった。ものは試しだ。
最初のやつはドキュメントでは開始のフックで幅・高さが渡される と書いているのが実際はページ・オフセットが渡されていて、 終了のフックではページ・オフセットが渡されると書いてあったが、 使える情報は何も渡されていなかった。 ソースを見て見当がつ…
カラー画像にも手を付けて、今は一応一通り解決した所だが、 やはりすんなりとはいかせてくれなかった。はまったのは二点。
幅と高さを逆に設定していたことが原因でした。
とりあえず定義されているフックの関数を全部書いて、 (ほとんどの関数の中身は return 0; だけ) モノクロビットマップでも出してみるか、とフックの処理を書いてみた。 外字とほとんど同じだろうと思っていたら、さにあらず。 モノクロビットマップで取得で…
ASCIIの英字 カタカナ 漢字 全角英字 が続いた場合とそうでない場合で区別するようにした。 ひらがなは接続詞で使われるのが多いので、やめた。 以上。
wxHtmlWindowでの文字の折り返しの調整で、 アルファベットのつづりの途中では折り返さないように、 ある程度単語として認識させるようにしていたところ、 「馬鹿」で検索して、 「馬鹿も休み休み言え」を選択したところで落ちたりした。 馬鹿なコードも休み…
したクラスを作って、テキストを単語に細切れにしている処理(AddText) をカスタマイズすることで、ウィンドウの右端で必ず折り返されるように することに成功した。 空白文字で単語に区切っていたのを、文字単位でも強制的に区切り、 前の単語とのつながりの…
configure --prefix=/MinGW --enable-shared で、 .... configure: error: Library requirements (mozilla-nspr >= 1.3 mozilla-xpcom) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard pref…
サンプルのmakeが通らない→ eclipseの管理c++プロジェクトでビルド→失敗 ちょっといじれば通るかもとも思ったが、 どうもUNICODE版が考慮されてなくてwxStringがらみのところで 沢山エラーが出ているのでやめた。 UNICODE版をつかわなければ通るかも?
試してみたけど挫折した。
事に気がついた。 英語だと単語間にスペースがあるからそこで折り返されるけど、 日本語のように普通はずっと繋がっているようなものについても 同じ処理をしているのか、スペースが無いから折り返されない。 回避方法は無いものか?
ebライブラリから取れるデータのビットが白黒反転していたり、 ビット順も逆だったりと予想外の事が色々あったが、 一応外字の出力はできた。 しかし、ここで思わぬ障害を発見・・・。
何と独自のタグ(要素と言う方がいいのか)を定義できる。 ソースからコンパイルするから可能ということでは無く、 追加するためのマクロがいろいろ定義されていたりする。 複雑なデザインをするためにはHTMLをカスタマイズして使えということなんでしょうか?…
CSSは使えないようなのだが、普通のHTMLもどこまでサポートされているのかとか、 実際どう表示されるのかわからんしな・・・。 IEとかGeckoとかが使える、wx何たらクラスとかはあるんだろうか?
インデントがうまくいかずに悩んでいる。 どうやら、このインデントのコードは辞書毎に使い方が違っていたりして、 うまく表示するためには色々な辞書のデータを調べる必要があるかもしれない。 また、EBライブラリのフックの種類が沢山あるようで、 実はHTM…
文字で罫線を表示しているときにうまく表示されるように スペースを に変換する処理を作るのにはまり、 (フック関数のなかでは半角スペースは' 'ではなく、0xa1a1だった)
HTMLで書けばいいので表現方法を簡単に変えられるだろうと 漠然とおもっていたら、これがまたなかなか厄介で、
がヒットするように検索すると、検索結果のテキストの表示が変になる。 受賞者リストが途中で切れる。(DDWinでも途中で切れた。) eb_read_text()で返される文字列長が最大長と同じ場合に読み出し処理 のループを抜けるようにしていたのを、返した文字列長…
Application Dataフォルダにするでしょう。 フォルダがない場合は、 wxFileName::Mkdirを、flagsにwxPATH_MKDIR_FULLを指定して呼び出せば、 再帰的に作ってくれるのでは?と思っているけどまだ試してない。
↓としてみる。参考 wxFileConfig* config = new wxFileConfig( wxEmptyString, wxEmptyString, path, wxEmptyString, wxCONFIG_USE_LOCAL_FILE); wxConfigBase::Set(config);
↓等とすれば取得できる。wxStandardPaths::Get().GetUserDataDir()
wxAppのargv[0]から取れる(当たり前?)から、 そこからディレクトリまで抽出できる。
実行ファイルと同じディレクトリ、Application Dataフォルダの どっちにするかとか考えつつ、wxのメソッドで取ってこれるのか試す。
wxStringとconst char*の変換でエラーになっていたところは、 wxString::c_str()のかわりに、wxString::mb_str()を使ったりしてたら なんとなく通るようになったけど、 それ以外でiconvを直に使ってEUCからSJISに変換していたところを wxCSConvをwxStringの…
コレ→--input-charset=cp932 --exec-charset=cp932 コメント以外で日本語は使わなければいいのだ。たぶん。 で、ためしに日本語のリテラルを使ってみたら、案の定、 全部エラーになった。
今度はUNICODE版を作ってみることにする。 --enable-unicodeをつけてConfigureし、make、make install。 configure --disable-shared --disable-threads --enable-unicode --prefix=/MinGW --with-libiconv-prefix=/MinGWwx-configの出力が変わったので、コ…
wxEncodingConverterでもつかってみるかな。
リンクオプションを変える。 -L/MinGW/lib -Wl,--subsystem,windows -mwindows /MinGW/lib/libwx_msw_xrc-2.6.a /MinGW/lib/libwx_msw_qa-2.6.a /MinGW/lib/libwx_msw_html-2.6.a /MinGW/lib/libwx_msw_adv-2.6.a /MinGW/lib/libwx_msw_core-2.6.a /MinGW/li…