プリンシリー ( https://github.com/mbleigh/princely ) を使用してレールで PDF を生成しています。1 つのテーブル セルに長い URL があります。PDFを生成するとマージンが拡張されます。html では、「word-break: break-all;」うまく機能します。しかし、このルールは「word-break: break-all;」です。PDFでは機能しません。PDFを生成するときに長いテキストをラップする考えはありますか?
2 に答える
0
印刷時に同様の問題に直面しました。技術的な問題とは別に、設計に関するいくつかの質問を自問する必要があります。Web ページを生成している場合、ユーザーはリンクをクリックします。しかし、PDF を生成している場合、目的はそれを印刷することだと思います。その場合、誰かがこの長い URL を入力する必要があります。
- ユーザーが長い URL を入力する可能性はどのくらいありますか? ライブ Web ページのコンテキストでのみ意味がある場合は、そのコンテンツを PDF から削除することをお勧めします。
- 宛先にアクセスする必要はあるが、正確な URL を表示する必要がない場合は、URL を短くする方が理にかなっています。
URL を短縮したい場合は、Rails アプリに URL リダイレクト サービスを実装できます。短い URL コードを生成する次のコードが気に入っています。これらはすべてキーボードに対応しているためです (紛らわしい文字が含まれておらず、キーボードを何度も移動したり切り替えたりする必要がありません)。
def generate_short_murl
a = [('a'..'k'),('m'..'z')].map{|i| i.to_a}.flatten
n = [('2'..'9')].map{|i| i.to_a}.flatten
(0...4).map{ a[rand(a.length)] }.join + (0...3).map{ n[rand(n.length)] }.join
end
于 2014-08-25T16:53:49.303 に答える