原則として、私のコーディングでは、何らかの方法で、すべてが軸を中心に回転します。 軸。 個々のマイクロプロジェクトに吐き出されることもありますが、これについては後で説明します。
最初のこと-フォントスムージング(アンチエイリアス)
私のフォントはラスター、8x8です。 なぜそうでないのか、そのように。 魅力は必要なものであるため、フォント出力を少し滑らかにしたかったのです。 しかし、いつものように、スムージングコードが非常に大きいか、大量のメモリを消費する場合、私は私ではありません。 したがって、スムージングされた文字がどのように見えるかを見て、それを再現することにしました。 ちなみに、これはサブピクセルの平滑化ではなく、単純なものです-つまり アンチエイリアス。
それで、それは私とどのように行われます。
文字を出力するとき、各ビットを調べて、それに応じて出力します。 ピクセル 上から2番目の行からこのプロセスに割り込んでいきます(最初の行はスキップします)。 単一のピクセルではなく、4つのグループ(現在、右、上、および右上)を処理します。 つまり 4ピクセルの正方形を処理します。
結果の「マトリックス」は処理手順に転送され、結果の組み合わせに応じて、すでにこれらの各ピクセルの色が変更されます。 すべての組み合わせが処理されるわけではなく、6つだけです-これで十分です。 2番目の図(つまり、右側の図)には、処理されたすべての組み合わせが表示されています(これらは一般的に使用可能な組み合わせであり、Sの文字専用ではありません)。 マトリックスが必要な場合は、黒(アクティブ)ピクセルをダークグレーに変更し、透明(白、非アクティブ)ピクセルをライトグレーに変更します。
マトリックスが6つの必須マトリックスのいずれでもない場合、マトリックスには一切触れません。 色(黒、グレーなど)はテスト専用です。当然、画面から透明ピクセルを取得する必要があり、「グレー」は半透明度です。
そのため、行のすべてのピクセル。 次の行も同じ方法で処理します。 各行(1行目を除く)が2回処理されます-現在の行として、およびマトリックスの上からの行として。
しかし、実際にはここに結果があります。 私にとって-非常に優れた最小限のリソースと労力。
コードとコンパイルされたプログラム例はこちらです。
2番目-暗号化と圧縮のためのすぐに使用できるソースコードのコレクション
彼はここにいます 。 実際には、すべてが明確です-暗号化(GOST(両方)、RC4、VMPC、RC6、AES、Serpent、Blowfish)、ハッシュ(CRC32 \ 64、MD5、GOST(両方))およびデータ圧縮(LZMA)のソースは、1つのライブラリに単純に収集されます、LZW、LZO)。
暗号セットの使用方法はgithubおよび例( test.exe 、そのソースにあります)にあります。
...しかし、圧縮の使用方法は次のとおりです。
事3-私の小さなWinKARアーカイバ。 上記の「ライブラリ」に基づきます。 Acc。 LZMA(ほぼ7zip)、LZWおよびLZOで圧縮できます。 LZWは単に美のためです 理論的にはLZMAとLZOの間の妥協点になっているはずですが、特に意味はありません。
パスワードが指定されている場合、アーカイバで暗号化を使用することもできます。 アーカイブ内の各ファイルに対して、独自の圧縮方式と独自の暗号化方式(およびパスワード)の両方を使用できます。
こちらまたはこちらからダウンロードできます。 ちなみに、アーカイバの重さはパッカーなしで38キロバイトです。
私は自分でもっとやったので、不便なインターフェースをおaびします。