gdi++.dll @ wiki

gdi++.dll FreeType

最終更新:

匿名ユーザー

- view
だれでも歓迎! 編集
 動作に必要なファイルは、以下のリンクを辿って入手してください。



※以下の内容は、バイナリ(F)とほぼ重複し、かつ情報量が多いです。過去の経緯を詳細に調べる場合などに有効です。



gdi++ FreeType版(上に行くほど最新)


※ gdi++ FreeType版 の動作には、別途freetype.dllが必要です。



gdi0850 (IdeographicVariationSequences(異体字)対応テスト版)




 (中略)
 (Helium派生~現在公開停止)



gdi0789 (実験版(ソース整理・機能削減。再up・転載は控えて))




gdi0787 (メモリーリーク・バッファオーバーラン修正)




 (中略)



gdi0577




 (中略)



gdi0260 (gdi0257を3倍近く高速化)


gdi0257 ([DLL] gdi0238で修正)

  • http://free.flop.jp/gdi++/src/gdi0260.zip (3倍近く高速化)
  • http://free.flop.jp/gdi++/src/gdi0257.zip
255 名前:名無し~3.EXE 2006/11/05(日) 03:10:23 ID:gDmtJ1sE
251
251 名前:名無し~3.EXE 2006/11/05(日) 02:30:44 ID:jqpBSdu7
AntiAliasMode=1だと諸々のダイアログが寸詰りになります。
gdi0257.zip
XP SP2
上:0
下:1
http://free.flop.jp/gdi++/src/gdi0259.png
確かにAntiAliasMode=1、HintingMode≠1の時に詰まってるなぁ
FreeTypeのバグなのか、LightはMacOSX風らしいから文字幅計算もMacに合わせてたりして。

252
252 名前:名無し~3.EXE 2006/11/05(日) 02:40:06 ID:yP5zBn6r
めちゃくちゃおもくなった
やあアンチ君。君の要望に応えて3倍近く高速化してみたよ。

HDBENCHのText
前: 2745
後: 7966

250 名前:名無し~3.EXE 2006/11/05(日) 02:04:02 ID:gDmtJ1sE
結局>>231の問題は解決したかどうか分からんが正式age
231 名前:名無し~3.EXE 2006/11/04(土) 21:31:50 ID:ByU7etch
それよりも
http://free.flop.jp/gdi++/src/gdi0248.png
選択範囲がズレる問題。
非FreeTypeの時は浮動小数点の丸め誤差が原因らしかったけど、
こっちでは如何なの?
それと、このInformationってやつ、
本来はCSSのletter-spacingで文字間が0.5em空く筈なんだが、
Operaでgdi++使うと見ての通りそれが無くなっちゃう。(FirefoxやIEでは無くならない
非FreeTypeでも、試してみたら発生した。その頃からの問題みたい。

OSはWinXP SP2。
おまけ
付属ツールの転載条件がよー分からんのでマズかったら削除するかも
http://free.flop.jp/gdi++/src/gdi0258.zip



gdi0238 (ズレが何さ。)

  • http://free.flop.jp/gdi++/src/gdi0237.7z
  • http://free.flop.jp/gdi++/src/gdi0238.zip

153 名前:555 ◆T5FLAkjak. [sage] 投稿日:2006/11/03(金) 20:05:07 ID:NerZQo4F
流れをぶった切って投下
gdi0235ベース

ずっとくすぶってる上下ズレに終止符をうつべく焼きいもを食いながらビルド。
Helveticaの人とかヒラギノMYCOMの人とかどんなもんでしょう。

ちょいと微妙なのでうまくいかないときは破棄で。



gdi0235 ([DLL] gdi0228に機能追加)

  • http://free.flop.jp/gdi++/src/gdi0235.zip
146 名前:693[sage] 投稿日:2006/11/03(金) 18:47:40 ID:x3TcwljQ

555氏のreadmeをマージして正式age
横幅80文字派だから勝手に改行しちゃった。テヘ

ついでに[HintingMode]が[Individual]という懐かしい名前に変わりますた。



gdi0230 ([DLL] Hinting暫定age)

126 名前:名無し~3.EXE[sage] 投稿日:2006/11/03(金) 12:16:36 ID:x3TcwljQ
Hintingの話が出てるのでここらで暫定age

[HintingMode]
メイリオ=0
MS Pゴシック=2

とかできる。

123
って555氏?
readme統合中なので追記する部分とかあったら修正してホスィ



gdi0228 ([DLL] gdi0224ベースで色々修正)

101 名前:名無し~3.EXE[sage] 投稿日:2006/11/03(金) 01:13:27 ID:x3TcwljQ
マジでM$頃してぇ・・・
http://free.flop.jp/gdi++/src/gdi0229.png (冥霊から明瞭へ)



gdi0224 (gdi0216mod3)

86 名前:名無し~3.EXE 2006/11/02(木) 20:10:40 ID:350fdeQH
標準のアンチエイリアスみたいだね。
直ったと思う。多分。

#大ポカしてた。orz



gdi0222 (gdi0216mod2)

71 名前:555 2006/11/02(木) 16:47:39 ID:YW+1VgIQ
53 の修正とか。
53 名前:名無し~3.EXE 2006/11/02(木) 12:58:14 ID:/VM5C/mp
IEだと<LI>タグの表示がおかしくなるね
50 のgの下欠けはどう?
50 名前:名無し~3.EXE 2006/11/02(木) 11:25:02 ID:OnVg6K6s
46
  • OpenTypeでもまともに表示されるようになったっぽい。
 "g"みたいに下に出っ張る文字は底が欠けるけど、これはしょうがないのかな。

  • パッケージから2ch.gdi++.freetype.manifestがなくなってるので、
 またfreetype.dllの場所問題が出そう。
 旧アーカイブからもってくればいいんだけど。

55 37にお礼
55 名前:名無し~3.EXE 2006/11/02(木) 13:55:15 ID:mcy3bCvh
modの0.54で化けなくなったね。
Opentypeのヒラギノでも化けなくなったね。

56
56 名前:名無し~3.EXE[sage] 投稿日:2006/11/02(木) 14:07:22 ID:OnVg6K6s
52
特定フォントの位置ズレ。SHG30Pも半角文字がずれるんだが、
ASCIIArtを表示させるために時幅?を調整するパッチを当てたものだと
ズレが出ないで普通に表示できることに気づいた。

インターセプトのところは普通にフックでいいと思う。
昔のとおり「横取り」でもいい。何で変えたんだろう。
TTFでは文字幅に限らずいろんなところに同じ意味の値が格納されていて
MacとWindowsで描画が異なったりする。で、FreeTypeがみてるのがWindowsと違うというオチ。
これはフォント側の責任な気がしてならない。ちゃんと同じ値を指定して欲しい。
fontforgeあたりで編集したりするとまともになったりするのはそのせい。

67
67 名前:名無し~3.EXE 2006/11/02(木) 16:15:31 ID:dQFx1awV
gdi0217+gdi0155でなんか少しずれる
使ったとき┐|┘とかの描写も少し変になってる
同上。だけど違う問題かもしれない。要調査。

64
64 名前:名無し~3.EXE 2006/11/02(木) 15:54:06 ID:cW6PiSjM
XPですがfreetype版だと大半のアプリケーションでメニュー、コンテキストメニュー等に効かなくなっています。
http://free.flop.jp/gdi++/src/gdi0219.png
それと、本家のバージョンでは正常に動きます。
これは多分CreateFontしないでフォントを使ったりしてるときにでてくるはず。
GetObjectでLOGFONTを取得してもフォント名が空っぽなんで弾いてる。
なんとかならんかね?



gdi0217 ([DLL] gdi0216+XPで化ける対策)

46 :名無し~3.EXE:2006/11/02(木) 10:01:00 ID:F3TiC1I8
はい。皆さんおはよう御座います。7-zipがうpろだでうまく扱えないのに気づきまして御座います。
さて、ズレに関してGetTextMetrics内でAscendをFTのものに書き換え、
かつTextOut内でAscenderをベースラインに使えばいいのではないかと気づきましたところ
手元ではずれがなくなったように思えますので報告させていただきます。
#どうもOpenType系だとOUTLINETEXTMETRICのMacAscend(FTもこれ)と一致しないがTrueTypeだと大体一致するっぽい。
#GetTextExtentPointは変えてない。
#freetype_face->heightはLineGapをアセンダ+ディセンダに足してあるのでLineGapが100%の書体で面白いことになる。

化ける報告がXPばかりということもうすうす気づいておりましたが >>37 氏の報告を読みまして
とりあえずXPでORIG_*TextOutAを呼び出す部分を殺してみました。お試しください。
#これって何か深い意味あるのかね?

(履歴は更新してない)

#readme統一したほうがよくね? むしろマージしてくれ。



gdi0216 ([DLL] gdi0209修正+機能追加)

993 名前:名無し~3.EXE 2006/11/01(水) 23:17:06 ID:GIgSb3ky
終わりかけの3pxにあえて書いてみる

豪速化オプション搭載。マジで目ん玉飛び出るぐらい速くなるが使用は要注意

メイリオ改造版
      • は悪いけどgdi++側でどうする事もできんと思われ。
上でageてくれた170MBのダンプtxtと睨めっこしても何も分からんかったしなぁ。



gdi0206 (gdi0181+...)

914 名前:名無し~3.EXE 2006/11/01(水) 01:32:00 ID:+pKdjOuP
とりあえずこの辺で投下

メイリオ
本家メイリオで試してみたら特に化けてないなぁ
何となく改造版のヘッダが壊れてそうな気がするけど誰かttfdumpで調べてホスィ

912
BoldなM+2VM+IPAG circleが、0だけ妙に細くなる
CVSのやつでは問題ないのでFreeType2.2.1のバグと思われ。
つか我ながらデバッグにCVS版使ってるのマズいか。いやLCDの画質が良くて病みつきになってしm(ry

batファイルを実行しようとすると、EXEファイルではないと怒られる。
いや、まぁbatだし・・・

あと現時点でFreeType版gdi++とManagerの併用は動作保証外。
非FreeType版gdi++とは内部的に結構違ってるので。



gdi0202 (gdi0181+gdi0195+gdi0198)

902 名前:名無し~3.EXE 2006/10/31(火) 23:12:32 ID:Gx/SI8LD
900
900 名前:名無し~3.EXE[] 投稿日:2006/10/31(火) 23:01:32 ID:Ay/lTox0
884
修正お疲れ様です。
gdi195で、こちらで確認した>>829のズレは直ってるようです。

その影響でしょうか、今までずれていなかったフォント全般(?)が
1dotだけ下にシフトしてるようです。
環境は Win2k + Fx1.5 + gdi195 です。

FreeTypeの影響で沈んでるようにみえるのかと確認してみましたが
gdi++無しと比較し、gdi193(またはそれ以前)で
1dotのズレは確認できませんでした。
あ、マジだ
直し方分からんからとりあえず描画位置を1px引き算しておくww

メイリオ
FreeType使ってほしくないというM$の最後の抵抗
(冗談なので間に受けないように)



gdi0193 (gdi0181修正版)

876 名前:名無し~3.EXE 2006/10/31(火) 19:08:25 ID:N65EMYrT
とりあえず0181に>>874のIMEと位置ズレの変更をしただけ。

化けない俺だけど一応メイリオのやつ
meiryoKeGothic.ttc(5.00+rev1)
size:9260904
CRC32:f5422589
MD5:c1c6c6f4ab8e8ff5626e991f46160e72
SHA1:3ca51f1697155c2c23fcf87516d6f0ba57c895c8
OSはWindows2000。何度か試してるけど化けには出会えない。



gdi0181 (gdi0177の修正)

822 名前:名無し~3.EXE 2006/10/30(月) 04:00:33 ID:ojq82nNs
ちゅーかサブピクセルレンダリングのコードバグってるやん
って事で修正+比較スクショ
ttp://free.flop.jp/gdi++/src/gdi0180.png
ttp://free.flop.jp/gdi++/src/gdi0181.zip

821
ウィンドウタイトルが化ける
フォントリンクは化けるのでExclude推奨

リンクの下線が少し下の部分に表示される
つ gdi0181

ビットマップフォントがビットマップで表示されない
擬似TTFなら表示されないのは仕様

MS IMEの変換部分で選択している文字列が一文字目しか表示されない
ん、これは・・・クリッピングの計算がバグってるのかな?
手元の環境でも再現できたからまー明日にでも調べてみるか
つか何だこの時間は('A`)



gdi0177 (gdi0172+カーニングオプションと文字サイズの何)

817 名前:555 2006/10/29(日) 22:36:24 ID:JRY0gR7g
とりあえずカーニングのオプションだけつけてみただけ。
0172ベースにしちゃった。ごめん。

んで、文字のサイズ計算をちょっといじくっちゃいました。
また欠けとかでるかもしれないので注意してくださいませ。

なんでこんなことしたかというとですね
TextExtentPointあたりでしっかりサイズ計算するためには
どうしてもちゃんとTextOutと整合したサイズ計算にしたいと思ったのですね。

んでなぜかFT_Request_Sizeを使うと落ちるんですね。
face_requesterから返されたFaceのsizeをキャッシュマネージャが解放しているんですが
FT_Request_Sizeではsizeを使って関連付けられたfaceを参照するんですね。
face->size
saze->faceと。

んで検索して見たりしたらこんなのを見つけた。
ttp://www.mail-archive.com/freetype@nongnu.org/msg00952.html
このあたり見ると大嘘ですね。ぶち切れですね。



gdi0173 (manifest付きgdi0172)

815 名前:名無し~3.EXE 2006/10/29(日) 21:27:12 ID:wMbHDms7
論より証拠でgdi0172のgdi++.dllにmanifestを付けただけのものを作ってみた。

中のgdi++.dllをgdi0172のものと置き換えて2ch.gdipp.freetype.manifestと
freetype.dllをgdi++.dllと同じフォルダにコピーすればおk



gdi0172 (gdi0170ベース+何か)

784 名前:名無し~3.EXE 2006/10/29(日) 14:14:29 ID:Wb5LTQDj
781
キタ━━━━(゚∀゚)━━━━!!


gdi0169.png
それなんて風水?
まー漏れも普段こんな感じなんだが。PC-98マンセー
http://free.flop.jp/gdi++/src/gdi0171.png



gdi0170 (gdi0168修正版)

781 名前:555 2006/10/29(日) 13:20:36 ID:qRA4JHFa
太字と斜体をつけといた。
今回は要DLL

775 名前:名無し~3.EXE 2006/10/29(日) 11:39:41 ID:Wb5LTQDj
774
鯖の容量は2MB*10000も無いと思うけど、どうなんでしょ>中の人

とか言ってる間にgdi0164+gdi0166が出来たので差分うpってみるてすと
手動でマージしたのでおかしい所があるかも
ttp://free.flop.jp/gdi++/src/gdi0168.zip

<ちらしのうら>
readme_555の最後の行が気になる・・・
でも何となく想像がついたりしてw
</ちらしのうら>



gdi0164 (gdi0156の修正版)

764 名前:名無し~3.EXE 2006/10/29(日) 10:15:14 ID:Wb5LTQDj
いろいろ修正+整理。

まとめレス。
  • 悪い事は言わんからfreetype.dllは*PATHの通ったフォルダ*に桶
  • 漏れはフォントリンクに対応する気は無いからExclude追加で諦めれ
  • 表示周りの不具合はここに書かれても困る
 ↓の中の人にメールでも送って修正頼んだ方がいいかと
 ttp://hp.vector.co.jp/authors/VA028002/



gdi0156 (gdi0152の修正版)

735 名前:名無し~3.EXE 2006/10/28(土) 17:41:18 ID:lCUfvZHY
ズレ欠け+色化け修正





gdi0152 (gdi0143 + FreeType = gdi0149 の修正版) & gdi0151 (FreeType DLL版)

703 名前:名無し~3.EXE 2006/10/28(土) 11:38:59 ID:lCUfvZHY
先越されたorz

700
700 名前:名無し~3.EXE 2006/10/28(土) 11:11:31 ID:O3+ZmekM
http://free.flop.jp/gdi++/src/gdi0150.zip
こうかな。コマンドライン修正したつもり。
多分直ってない・・・と思う
同じフォルダにあるreadme.txtとかをgdi++.exeにD&Dしてもファイルが開けないし。
ついでに言うと本家0927版は↓みたいなショートカットをD&Dしても正常に動作しなかった。
"C:\Program Files\Mozilla Firefox 2\firefox.exe" -P bonecho

ってことで直しますた
http://free.flop.jp/gdi++/src/gdi0152.zip

ついでにFreeTypeでバイトコードインタプリタを有効にしてみた。効いてるかは知らん
http://free.flop.jp/gdi++/src/gdi0151.zip

702
702 名前:名無し~3.EXE 2006/10/28(土) 11:29:43 ID:PFUQVBGY
ひさびさに見たらついていけなくなってるorz
どれ落とせばいいんだよ('A`)
つ gdi0151&gdi0152



gdi0143 (up0133をコンパイルした物)

659 名前:名無し~3.EXE 2006/10/27(金) 01:13:36 ID:XKMY1awz
656
656 名前:名無し~3.EXE 2006/10/27(金) 00:51:42 ID:W5WEBeIk
除外フォント機能はうまく利いていない気がする。
スクロールすると適用されてしまう。

Windows 2000 Service Pack 4
そういやExcludeチェックにバグがあったの忘れてた

多分up0118・up0133(今は無い)以外では直ってないはずなので、
とりあえずup0133をコンパイルした物を置いといた
これで直ってなかったら知らん

657
それなら"[除外]"にしてもいいかと。日本語大丈夫だったはず。



up0139 (FreeType2 MS Pゴシック 16ピクセルのみ)

555 名前:名無し~3.EXE 2006/10/24(火) 14:19:54 ID:WYOEybts
FreeType2
MS Pゴシック 16ピクセル
自分で自分のJaneのスレ内だけかかれば良し。ツリーもリストもシラネーヨ版。

570 名前:555 2006/10/24(火) 22:41:16 ID:06MRDaL0
作りについての情報とか
元にしたのは本家gdi++20060927.zipで
FreeTypeの使い方は
LINK
ほぼそのまま(コメント入れときゃ良かった)。

1.ロード時にFreeTypeを初期化してフォントをロードしている。
2.元でlfEscapementをチェックしている後にフォントのチェックを入れている(フォント名チェックはずしてReleaseしたかも御免)。

少し改善案とか
一.動いて少し試せればイイダロぐらいの気持ちでやったので無駄があるはずだからそれをつぶすこと。
ニ.1でのフォントロードを止めて2でロードするように変更すると色々対応できるかも
三.ニの案のかわりに1のタイミングでロードしておくフォントをiniか何かで指定する方法もありそう
四.MMX、SSEなんかを使ったアルファブレンド
五.サブピクセルレンダリングとかLINK みたいな調整とか

タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

目安箱バナー