問題タブ [nstextattachment]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
378 参照

macos - NSTextView で画像のサイズを変更して収まるようにします

NSAttributedString画像が埋め込まれたオブジェクトがあります。これらはNSTextViewsで提示されています。iOS では、 の境界のサイズを変更できましたNSTextAttachment。これにより、画像が収まります。

このコードは OSX でも動作しますが、実際には画像のサイズを変更しません。以下に示すように、画像の周りに正しいサイズのボックスがありますが、実際の画像はボックスからはみ出しています。

ここに画像の説明を入力

また、次のガイドに従っています: OS X および iOS で画像を使用してリッチ テキストを実装する。これにより、コードがサブクラスに移動されますが、効果は同じです。

助言がありますか?他NSTextAttachment.boundsに調整すべきことはありますか?

アップデート

size作品のコンポーネントを変更することがわかりましたNSImage!ただし、すべての画像が上向きに表示されていますが、正しいサイズになっています。:(

0 投票する
1 に答える
498 参照

swift - NSTokenField でマウス クリックを取得する

トークンにカーソルを合わせると削除アイコンが表示されるトークンを表示するNSTokenFieldを実装したいと思います。その後、アイコンをクリックすると、トークンが削除されます。

多くの検索の後、これは標準のNSTokenFieldでは不可能であるようです。誰かが方法を知っているなら、私に知らせてください。

https://github.com/octiplex/OEXTokenFieldを見て、そのコードに基づいて、Swift で CustomTokenField 実装を作成しました。これまでのところ、CustomTokenFieldが動作していて、トークンにカーソルを合わせると、削除アイコンが表示されます。

次のフェーズは、自分ではわからない問題であることがわかりました。トークンをクリックしてコールバックをトリガーするにはどうすればよいですか?

トークン クラスは NSTextAttachmentCell から派生し、CustomTokenField は NStokenField から派生します。

私は2つの異なる角度を使用してこれにアプローチしようとしました:

CustomTokenAttachmentCell を介して

NSTextAttachmentCell は NSTextAttachmentCellProtocol を実装します。

これは希望です。したがって、これらのメソッドを CustomTokenAttachmentCell に実装し wantToTrackMouse ()が実際に呼び出されています。「true」を返すように実装しました。

他の 2 つのメソッドは呼び出されません。それらが呼び出されていることを確認するために行う必要があることは他にありますか?

CustomTokenField を介して

また、 CustomTokenFieldからこれにアプローチしようとしました。MouseDown()を使用してマウス イベントを取得することは可能ですが、セルからトークンに実際にアクセスする方法が見つかりませんでした。

私は StackOverflow に関する多くの投稿を見てきましたが、ヒントも見ましたが、どれも正しい方向を示していないようです。

どういうわけか、階層に NSControl がある場合にのみマウス イベントを取得できるという結論に達しました。そうでないトークンの場合。NSControl はビューの階層の一部であるため、CustomTokenFieldを介してこれを達成しようとしましたが、そこでも行き止まりで実行されます。たとえば、この質問NSTokenField のクリック トークンはまったく同じですが、 setActionsetTargetは基本クラスのスタブであるため、アクションまたはターゲットを設定すると致命的なエラーが発生します。

私は Coacoa の初心者プログラマーなので、これは単なる知識不足の問題であることを願っています。

アドバイスをいただければ幸いです。

0 投票する
3 に答える
935 参照

ios - NSTextAttachment を使用して NSAttributedString の切り捨てられた末尾の垂直方向の配置を設定する

次のコードを使用して、iOS 8でNSAttributedStringforを生成しています。UILabel

ただしNSTextAttachment、次の写真のように、切り捨てられた尾の垂直位置に影響するようです。

NSTextAttachment を使用した NSAttributedString NSTextAttachment のない NSAttributedString 英語の NSTextAttachment を含む NSAttributedString 英語で NSTextAttachment のない NSAttributedString

切り捨てられた尾の垂直方向の調整を設定する方法はありますか?

私の目標は、中国語でテールを下揃えにすることです。

テスト用のアイコンです。アイコン

0 投票する
0 に答える
193 参照

uilabel - UILabel テキストを使用して UIButton インラインを追加する方法

iCloud バックアップ設定ビューから取得した次の画像のように、UIButtonのテキストにインラインを追加する方法を見つけようとしてい ます。UILabel

iCloud バックアップ設定ビューの画像

私が考えることができる唯一の方法はNSTextAttachment、テキストを書式設定して のように動作させることUIButtonです。それが私の唯一の選択肢ですか?

0 投票する
2 に答える
1297 参照

cocoa - NSAttributedString から NSTextAttachment のイメージ名を取得する方法

として保存された画像を含む書式設定されたテキストを読み取る Mac アプリがありますNSAttributedString。これを画像を含むHTMLに変換したい。

HTML の取得は正常に機能します。添付された画像を列挙することもできますが、添付された画像の実際のファイル名を取得することはできません。結果のHTMLにはそれらが必要です。

HTML の取得:

生成:

添付された画像を列挙する:

そのため、NSTextAttachmentインスタンスが作成されますが、実際のファイル名 ("Untitled 2.jpg") を特定する方法はありません。NSFileWrapper.filename戻りますがnil、テキスト添付ファイルから名前を取得するための API が表示されません。

イライラする部分は、情報がテキストの添付ファイルにあることです. デバッグの説明を出力すると、ファイル名が表示されます。

ファイル名にアクセスするにはどうすればよいですか? (デバッグの説明を解析せずに;)

0 投票する
4 に答える
2835 参照

swift3 - NSTextAttachment の周囲の間隔

以下の例のように NSTextAttachments の周りに間隔を空けるにはどうすればよいですか?

この例では、NSTextAttachment を NSAttributedString に追加したときに得られる既定の動作は、間隔なしです。

ここに画像の説明を入力

0 投票する
1 に答える
5464 参照

ios - NSAttributedString に NSTextAttachment が含まれているかどうかを検出して削除する方法は?

NSAttributedStringとして添付された画像を含む可能性のある a を入力として受け取りますNSTextAttachment。実際にそのような画像が添付されているかどうかを確認し、そのような場合は削除する必要があります。関連する投稿を探していましたが、成功しませんでした。どうすればよいですか?

編集:私はこれを試しています:

textView.attributedTextに複数の添付ファイルが含まれている場合( にいくつか表示\u{ef}されますstring)、列挙が条件にif (value as? NSTextAttachment) != nil数回一致すると予想していましたが、そのコード ブロックは 1 回しか実行されません。

すべての添付ファイルを削除するにはどうすればよいですか?