読者です 読者をやめる 読者になる 読者になる

しらいとブログ

ネットで検索してもなかなか出てこないIT情報を独自にまとめています

MacType非公式パッチ更新 v1.19

MacType非公式パッチのメイン記事はこちらhttp://silight.hatenablog.jp/entry/MacTypePatch Download MacTypePatch_1.19.zipMacTypePatch_1.19.zip(予備)

MacType非公式パッチ更新 v1.18

MacType非公式パッチのメイン記事はこちらhttp://silight.hatenablog.jp/entry/MacTypePatch Download MacTypePatch_1.18.zipMacTypePatch_1.18.zip(予備)

MacType非公式パッチ更新 v1.17

MacType非公式パッチのメイン記事はこちらhttp://silight.hatenablog.jp/entry/MacTypePatch Download MacTypePatch_1.17.zipMacTypePatch_1.17.zip(予備)

MacType非公式パッチ更新 v1.16

MacType非公式パッチのメイン記事はこちらhttp://silight.hatenablog.jp/entry/MacTypePatch Download MacTypePatch_1.16.zipMacTypePatch_1.16.zip(予備)

MacType非公式パッチ更新 v1.15

MacType非公式パッチのメイン記事はこちらhttp://silight.hatenablog.jp/entry/MacTypePatch Download MacTypePatch_1.15.zipMacTypePatch_1.15.zip(予備)

MacType非公式パッチ更新 v1.14

MacType非公式パッチのメイン記事はこちらhttp://silight.hatenablog.jp/entry/MacTypePatch Download MacTypePatch_1.14.zipMacTypePatch_1.14.zip(予備)

「WinFont+」開発記録 Part 5

今回のWinFont+はGDIはフックしていません。DirectWriteをフックしてラスタライズ処理をFreeTypeに置き換えています。

「WinFont+」開発記録 Part 4

今回はFreeTypeを使ってみました。 GDI++(FreeType版)やMacTypeのコードを読むと難しそうな印象でしたが、FreeType公式の最新のドキュメントを見ながらやってみたら思ってたより簡単でした。ラスタライズは全部FreeTypeでやっていますが、フォントの読み込み…

「WinFont+」開発記録 Part 3

今回はWinFont+_alpha2の不都合をまとめてみました。

「WinFont+」開発記録 Part 2

前回のalpha1ではDirect2Dを使っていましたが、今回はDirect2Dを使わずに自分でGDIに描画するようにしました。DirectWriteにはラスタライズ機能とレンダリング機能があるのですが、ラスタライズ機能のみを使用することになります。 実はChromeと同じ手法だっ…

Yu Gothic UIがダメな理由

見ての通りひらがなと漢字で太さが違います。これが原因で文字の統一感が失われています。

Yu Gothic UIをMeiryo UIに置き換えた結果

こんな感じになった。 MacTypePatchに組み込むか思案中(FirefoxやChromeの挙動がおかしくなる)

「WinFont+」開発記録 Part 1

Windowsのフォント描画を置き換えるソフトにはgdi++.dll、gdipp、ezgdi、MacTypeがあります。きちんと調べたわけではありませんが、最初に作られたのがgdi++.dll(本家)、gdi++.dll(本家)から派生したのがgdi++.dll(FreeType版)、gdi++(FreeType版)から派生し…

Float,Double型をバイナリに変換して精度を確認

小数 バイナリ Float → ← Double → ← ※バイナリから小数への変換は最後に0が続く場合は省略されます。※古いブラウザでは動かないことがあります。 //

MacType非公式パッチ (MacType Unofficial Patch)

MacType公式アップデート MacTypeが更新されました。http://www.mactype.net/https://github.com/snowie2000/mactype/releases MacType v1.2016.830.0以降にはこのブログで公開しているパッチの大部分が組み込まれています。1.2016.830.0以降でこのパッチを…

Rust言語でDxLibを使う

DxLibはWindows用のゲームなんかを作れるライブラリです。DxLibはC++のライブラリですが、C#用のDLLバージョンも公開されており、C#以外でもFFI(Foreign function interface)が使える言語なら使えます。RustもFFIが使える言語なのでDLL版DxLibを使うことが出…

WindowsでRustプログラミング(環境構築)

WindowsでRustプログラミングをやるならEclipse + RustDTがオススメです。Eclipseは統合開発環境(IDE)の名前です。RustDTはEclipseのプラグインで、Rust Development Toolingの略です。この2つを使えば、関数名の自動補完や、ブレークポイントを使ったデバ…

「exit code -1073741515」=DLLが見つからない

Windowsプログラミングにおいて、開発環境では問題なく動くプログラムが本番環境で動かない時によくあるのが「exit code -1073741515」です。あるいは16進数の「exit code FFFFFFFFC0000135」だったり、16進数で16bitの「exit code C0000135」だったりします…

(2015年)最新のMinGW(GCC)のダウンロード

MinGWの公式サイト(のsourceforge)で配布されているGCCは、2013年に公開された4.8.1で更新が止まっています。 最新バージョンはMinGW-w64(のsourceforge)からダウンロードできます。(64bit版だけでなく、32bit版も配布しています。) 例えば4.8.5が欲し…

WindowsでRacerのビルド(コンパイル)

2015/07/13 18:25通常のビルドだと別途DLLが必要になることが発覚したためやり方を変えました。 RacerはRust言語の自動補完ツールです。(RACER = Rust Auto-Complete-er) 今のところRust言語の自動補完ツールはこのRacerしか無いようなので、エディタやIDE…

SyntaxHighlighterの高速化

技術系のブログなどでコードの色分けにSyntaxHighlighterを使っている人は多いと思います。しかしながらSyntaxHighlighterには問題があります。SyntaxHighlighterはページ内に出てくる画像など全ての読み込みが終わるまで色分けしないのです。これでは読める…

font-family: monospace;だと文字が小さくなる

ChromeやSafariなどWebkit系のブラウザでは可変幅フォントと等幅フォント(monospace)のデフォルトのフォントサイズが違います。インストール時の初期設定では可変幅フォントが16px、等幅フォントが13pxになっており、等幅フォントのサイズはユーザーが簡単…

Atom EditorでDirectWriteを無効にする

2015年6月26日に1.0.0が公開されたAtom Editorですが、WindowsではDirectWriteがデフォルトで有効になっており、MacTypeなどのgdi++系ソフトとの相性が良くありません。 一応DirectWriteを無効にする方法があるのでここに書いておきます。 Atom Editorは終了…

shBrushRust.jsの配布

ブログにRust言語の記事を書こうとしたところ、SyntaxHighlighterがRust言語に対応していないことに気付きました。このままではRust言語のコードの色分けが出来ません。 しょうがないのでSyntaxHighlighterをRust言語に対応させるためのshBrushRust.jsを自分…

通販などの評価について

筆者はネット通販で買い物をすることがよくあるのですが、その後店から商品の評価やレビューを求められることがあります。その度にいつも思うのですが、評価(点数)の付け方はどのようにするのが一般的なんでしょうか。 例えば、0点から100点までの101段階…

垂直同期とダブル/トリプルバッファリング

垂直同期とダブルバッファリングとトリプルバッファリングの解説スライドを作りました。 この3つはゲームプログラミングには欠かせない知識なのですが、何故か検索してもゲーマー向けの情報ばかりなので、プログラマ向けの情報として書きました。と言っても…

マクドナルドでコーヒーを買う時の心得

マクドナルドのコーヒーは熱いので自分用の備忘録。 サイズはSにする セットで頼んで時間がかかるときはコーヒーだけ先に出してもらう コーヒーが来たら速攻でフタを外す 余談ですが、10時30分までは朝マックしか注文できないことを今日初めて知りました。…

Visual Studio 2013 Language Pack でエラーが出た時の対処

Visual Studio Community 2013 をインストールした後の Visual Studio 2013 Language Pack のインストールでエラーが出るという報告が相次いで出ています。筆者の環境でも vs_langpack.exe の実行中にエラーが出て、インストーラが勝手に強制終了しました。 …

C++11のmemory_orderの使い分け (4)

前回まででアトミック変数とフェンスの memory_order の基本的な使い方を全て解説しました。今回はメモリバリアを減らして高速化する手法について解説します。ただし、consume を使った高速化に関しては扱いません。また、今回の内容はあくまでメモリバリア…

プログラミングテクニック「大で小を兼ねる」

大は小を兼ねるという“ことわざ”がありますが、プログラミングの世界でも大で小を兼ねるテクニックはよく使われます。 今回はゲームのアイテムを例に、大で小を兼ねる設計を解説します。(初心者でも読めるようにC言語で解説しました。)その後で業務用アプ…

C++11のmemory_orderの使い分け (3)

2014/10/29 20:40 誤解を招きそうな部分があったので修正しました。修正場所は脚注から辿れます。 前回はアトミック変数に memory_order を指定した場合について解説しました。今回はフェンスで指定した場合について解説します。

Firefox33でページ読み込みが中途半端に終わるバグが直った

いつからかは分かりませんが、Firefox 33 より前のバージョンではページの読み込みが中途半端に終わるバグがありました。特に iframe でページの中にページが埋め込まれているケースでよく発生し、iframe 内のページにスタイルシートが適用されないまま表示…

C++11のmemory_orderの使い分け (2)

2014/10/23 12:20 一部用語を修正しました。*1*2 前回はメモリバリアで保証できる範囲について説明しました。今回はメモリバリアの使い方を説明します。 *1:read-modify-write アルゴリズム → read-modify-write 命令 *2:読み込み → 読み取り

2014年9月画面解像度シェア累積ヒストグラム

StatCounter GlobalStatsで公開されている画面解像度シェアのデータから、2014年9月のデータを抜き出して分析しました。 最小値の目安になるように、『横幅○○px以上は○○%』という形式でグラフにしています。(このようなグラフを累積ヒストグラムと呼ぶらし…

C++11のmemory_orderの使い分け (1)

C++11で高速な同期手法としてアトミック変数やメモリフェンス(普通はメモリバリアと呼ぶ)が追加されました。 これらの命令では memory_order を指定できるのですが、違いが分かりづらいのでまとめてみました。 なお、正確な名前はmemory_order_relaxed、me…

Error: Comparison method violates its general contract! の対処法

FlashDevelopでFlexを用いてFlashやAIRアプリを開発する場合、以下のエラーが出て再ビルド(差分コンパイル)が出来ない問題があります。 Error: Comparison method violates its general contract! Build halted with errors (fcsh). FlashDevelopの実際の画面…

Apache Flexで'adt'が見つからない時の対処法

FlashDevelopとApache Flexの組み合わせでAIRアプリを作るときに以下のエラーが出ます。 'adt' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 これはAdobe Flexの時には含まれていたadt.batフ…

2014年6月画面解像度シェア(何px以上が何%か)

新しい記事が公開されています。2014年9月画面解像度シェア累積ヒストグラム StatCounter GlobalStatsで公開されている画面解像度のシェアのデータから2014年6月のデータを抜き出して分析しました。 Webサイト制作に活用することを考えて『横幅○○px以上は○○%…

Google検索の結果はブラウザのフォントで変わる

何気なくブラウザのフォントを変えてみたところ、Google検索の結果表示が変わったので紹介します。 (このブログのとある記事です)

Adobe Bracketsのコードヒントが遅いので無効化

今現在JavaScriptのコードをAdobe Bracketsで書いているのですが、JavaScriptのスコープが特殊なせいかコードヒントの表示が非常に重くなっています。それが1文字打つたびに更新されるのでコーディング速度に大きく影響しています。 せめてCtrl-Spaceを押し…

フラットデザインに最適!ノイズ画像作成ツール

最近のウェブ業界ではレスポンシブデザインと相性の良いフラットデザインが流行っているようですが、フラットデザインでは単色の代わりに単色に近いノイズ画像を用いることでちょっとオシャレに見せることがよくあります。このブログの背景にも使われていま…

Systemとシステムの割り込みがCPU率100%になった

PC

ある日PCが重くなったのでタスクマネージャーを見てみると、Systemとシステムの割り込み(Interrupts)がCPUのほとんどを使っていました。 とりあえず再起動してみたのですが直らなかったのでいろいろ調べてみることに。 最終的に原因が分かったのでそこまでの…

Android2.2(API8)以前で1MB以上のファイルを埋め込む

Android 2.2 (API 8)以前では一部のファイルを除いてresフォルダ、rawフォルダ、assetsフォルダ全てで1ファイルあたり1MBまでという制限があります。そのため、フォントの埋め込みなどで困ることがあります。 厳密には1MB以上のファイルを埋め込めないのでは…

(Android)minSdkVersionを9にする4つの理由

厳密には9以上にする理由です。minSdkVersionが9以上と8以下では大きな差がある、ということを説明しようと思います。 (補足: API 8 = Android 2.2, API 9 = Android 2.3)

FileZillaでグループ権限(パーミッション)を一括で0にする

共用タイプのレンタルサーバーだとグループ権限(パーミッション)を0にすることが推奨されている場合があります。このようなサーバーの場合はグループ権限を0にしないと同じサーバーをレンタルしている別のユーザーからファイルを操作される可能性があります…

Androidの文字サイズで使われるspの倍率

Androidアプリの開発者なら文字サイズを指定する際に単位にspを使うべきだという話は聞いたことがあると思います。spで指定しておくと、OSで設定された倍率が自動的に掛かるからです。 Android 4.0以降だとOSの文字サイズは「設定→ディスプレイ→フォントサイ…

スマホ版はてなブログをPCで見る

はてなブログはUserAgentでPCかスマホかを判断しているので、UserAgentを偽装すればPCでも簡単にスマホ版が見れます。 Firefox + UserAgentSwitcher(Firefoxアドオン)でのやり方を書きます。

2014年3月画面解像度シェア(何px以上が何%か)

新しい記事が公開されています。2014年9月画面解像度シェア累積ヒストグラム2014年6月画面解像度シェア(何px以上が何%か) 3月が終わったのでStatCounter GlobalStatsで公開されている画面解像度のシェアのデータから2014年3月のデータを抜き出して分析しまし…

中身のサイズからグリッドシステムを逆計算

グリッドシステムを自作するときに、中身のサイズからカラムサイズと余白サイズを求めたいことがあります。 自分で計算するのは面倒なので自動で計算するFlashを作りました。 ※Flash Playerが必要です。無ければスクリーンショット画像を表示します。

2014年2月画面解像度シェア(何px以上が何%か)

新しい記事が公開されています。2014年9月画面解像度シェア累積ヒストグラム2014年6月画面解像度シェア(何px以上が何%か)2014年3月画面解像度シェア(何px以上が何%か) StatCounter GlobalStatsで画面解像度のシェアが公開されているのでこれを分析してグラフ…