私はCodeIgniter2を使用して管理領域を構築しています。この領域では、テキストオーバーレイに関して、管理者は「空白」の特定の画像を追加できます。画像をアップロードするときは、通常のユーザーが目的のテキストを追加できる特定のパスを定義する方法が必要です。基本的に、これはシャツ、マグカップ...あらゆるタイプのカスタム印刷可能な表面に使用できます。
パスは、直線、ベジェ曲線、および円をサポートする必要があります。また、1つのベースイメージが複数のパスをサポートする必要があります。
RaphaelJSライブラリとSVGを使用しました。
これが私の現在のアプローチです:
- InkScapeでベース画像を開き、パスを描画します
- パスをSVGとしてエクスポートします
- そのパスを使用してRaphaelJSパスを作成します
- そのパスにテキストを配置します
このアプローチの問題は、曲線/円形のパスに配置すると文字がかなり奇妙に表示され、必要な場所に正確に配置できないため、オフセット文字がいくつかあることです。
これは、この種のものが.netを使用して実装されたサンプルサイトです。基本的に、1行目、2行目などにテキストを入力すると、右側のバッジに表示されます。また、定義された領域にテキストを保持するため、領域に収まるよりも多くのテキストを入力すると、収まるようにテキストが圧縮されます。
誰かが私が何を探すべきかについて私に何か指針を持っていますか?主なポイントは次のとおりです。パス/リージョンは管理者が定義する必要があり(JSまたはサードパーティのアプリケーションを使用)、テキストはそれらのパスに配置する必要があります。
これはHTML5を使用して行う必要はなく、あらゆる種類のPHPライブラリを使用して行うこともできます。