「猫」がPDFファイルの内容を読み取れないのはなぜですか?

「猫」がPDFファイルの内容を読み取れないのはなぜですか?

コマンドを実行すると、cat < 1.pdf完全に理解できない非常に大きな出力が印刷されます。内容1.pdfはですabc

出力は次のとおりです。

ÀýÓëöûcÎ=ÉÐÎTaüÍ8]ö¹mg:=Rú*@H1S¢▒ùá½~Ì8u_4,¬7ïy­t#¯ÚZ|åôÛ~«Æ    fM²JKÁNÿ6 ì©ìÞ¾▒bT
¦åÊmBíöÖ¡÷ÄïÝM{Í1¹@;ÄqÄú             t]È7DJ   Êûc0£jÜÖã­\0O8À±(2)èJR'Ø÷=~ÝƵ¡´ oÇKÈ]¹ÞÜY)ÚwÒ?[4ò©Ió¦>G)î¾J&d}ýíÜÅÓò~Ø0 $´Në¿´Èc®pVqí+ëCppG¾ùóßeõõ6GÌ,öfú8Ô7»S[¢S50c­q/_9¹jó¿·Ü%×­tQSßî▒LðbkÂÒxâ£Ö▒üVAûÇamÏ·Â׫H´+ÆWíç´upèó`I]± ÎëÚwiòtçúwAhO¼²´'Æ©ëÀ0lô?¿ÌIò▒ìXË<»ÅUepçæå¥
SïÒFҽϷº®Ën.Z×´\£ÁEH@®2ÊçC¢n½¡hÑâ>º´¢YÚXEfg    sôë¥*|zº7>ù!I©Åÿ«;        ;&==
)dS/),÷È´:ÞõH:CÉÑÀiTÌw!u@Âp2÷AÒfµòÜtFIZ^iÿà£ùÖ5ÐsDiërÿ$0b6Ëü~xÏ·._ÏÒõÜr²`wYù;¤²å»äE3óù²ëvÇ»Ó'ãµ~?ÿîMZÍPkh{aÙ1y&tüÙòÕMoó¬²<ñ/ÇÖa?üʯuÝÓjû,¨Üå@/GMa-èGkD}¤ð©fZbYÑlt/      ±Øj¦èRhCå1âÆñ±S@ÖòÁ~e}
>NÀ^²Jà-Û[Mø¡FËB7ÉVy0|ôÉÏjx[ÙÁnneê)wã+ök'R6"dÞqît¿ý,ߢ]MöV>»Ñ@ÞwM0®èçã^F`çFÕ²æL((¬±S¢ÅïÂy§púÓ­Ë5y1pÆ{uxëÈOþ'¾7+Öº!í
uV-R²f*`æ\ías\Øl^÷ ÿ`r1|yÅ-Y­Ø,º·¢▒ÀPæá¸EW0d¤q]&ÿdV6ß.cùÂ~´óðCß▒(¨îMëb#òEnÑ»PÅV½!ÀÈѵ                              c´è
jFÇé¨J$ǵÀcu?4·[ö&å:1&OÓö(øyKxòëÑq¸çÎÇÈI#5¨çû,'µÐûfG¸Í§³UÚëÎCDøõe²Ñú$Á½é½Ocø»Éßs! ÀõE²©)8½îv¿<Üî|趻B▒ÿYw¹·ÌÞƶâôIÇ.>¾H¡n¬Éüׯ*m«¶£L£#7È?¾sÊNoXµ·àMÚ
?ó´ZìâþÌçùä½ÿ$qÀÊcOºùdewænår▒ÖB½dfÕ;­t4Êe3#ÄúÀ£çP=¨QÌ▒ÕþºÑ\U¼Fµ»â¯/!NZ=>½éú©,EÉ|ªQafu,5Ý%Xw%seàØÇÇTª    BZëCaßî;zÃ"Bma¤ y=ÞwÁű~ÿõåEyV/Ò%q¥Ì^Ç  2U¸âQ³1y(¾&¨òYùÆ«}üx#Á®úÅÿÆðö.i8
              ïþ¨è|Âý6\ U+ᬮ[®eVéüvíÜ{ÈL+]¬)ùxþecä溰ÿoö?,Ä:¯Oò9T:1G4qÞ.ÌtÉÑëEæáHÔ׬¡ª                                                                                         çc^
nÍPÑU7/ÄñcªXâ§nc]¾¨XPayÚGºxª.wÈç¤}¬ÓÏÇ\rf`¤ñ@zJnî´a'¾¨s­NÔAëG½PL6ºIQkíJÍçؼÔKýF¾)$\&§^»                                                                                            Eý¨_{tÂp¥ñT`mùPvcìÃç1ÿûKáz¹â®ò÷p×Ø?äIIö 6²¬QªMÚIµÈTã+¤i1âN¾8ɽNww²Îf¹¿kVr²ù½Ä¼Ìå±"ªúº+äÿ¥
óv¡t5!(«:Ö+Ovl<¦aö6Kì»â2óÎåØØ|üËàÇÒ.j§·¸[ãæ¿ï`¡÷¥¾©,ÝßiÝPMåoÑéïToãw¿dyçëÀã·ó6ês\ÔR;ÕXÚ»ûÿõå▒öÁ▒¡\Ðs·~=ðÈTDÝCCijÚ`¹ÎÔ¬\·ðñ_ÿü§¯$Âõj®Û¢_]Lù¦8áÌæ²»BJÖÛn¼ûXÏjY8Ò6éØí©YóZtÛt´ÌníUè¨PGØÊzý+ÚT¦M1¥e¬åxendstreamýC~¢6A¬»hå?5µÎÍbKÏÔlwæ l▒_%L;8ê8jßQüg-í×                                                     Jâ`d¬*»ö</nä"nAíÀ ÿ]©äXĦMYS▒
endobjÎ{°m-°õ1Hgîºû:h*µVØK°F8ñGÔÎl~V3ÄÞ!bÊcÞDGë¯×Yl(.ãâÝå`£=cü§ýÔb£ÄèMu Íëve«XîÝ£#"VØgáKÔ?öþ§®êϺݡ[3uש²Nµq÷Ú▒ßób¸l6=?'«ì>BÔ?t_Ñ  gÁ£õ=q@ÜÕÅûªE3¶L+ÕÅ©Cå}b-7Q,ì·Túlñ¨þ¦:=`î¹aÐçeÆãÜw°¥ès
E▒ªpÇ !}¡1{¹_ZlÈë¡Á;u§·+ú,fo ä-AÏ[HM¥×▒ÌÝåìtò*9¼Â^ѧ▒aÛ`B>/Cö0Þ÷ðiNË­þÊ âÄCH´/9fVÎÉó6!vóÑ@ ðÉ!w±y;¯m$i¾äµH+·]YA|åÀD!j{øEÙ^äFÖÑ4▒ääû5þµ)Ãå*y´¹Q« 7í?NýÍ'^õ(*C4f;3ûûn³i|nIï­0uo>#n³yµ¹5§*É»&Gtê;c.9 0 objéðÜ}zÔ22T`¦E'ýX®WÈô»&Â>9=ay$àÊGWdwÂ!f·¹eMvÖ=EÞߢ¯ò^¢n`ZÜöQ!Yߧµã gÚEbØù»ÑñÓ                                                             1ªAäØÿPâ'4RÅU]xý'¬¡Â>¹æîtê3Yêy.·¬4ÖçæÍÕOß®×ñh¶ap(<</Type/Font/Subtype/Type1/BaseFont/NimbusRomNo9L-Regu                   9îî~ýÚK°ÓÑ*ÈTt÷ ØL
/ToUnicode 8 0 R} Åta°Àj)                           _                                      Kû'Üd§éËpôKÜ~¯
/FirstChar 0 /LastChar 255ºP!y%µRÕÖ×bðó°~®_ñA=ùjÒÜW!þy0Æ¢]ìMºõ$ÊÍD96)éàjM[îÍÙù»@y»;«!BÌaÓ;²À    ÏÞî¨ZÚ8Ýà ìÏ?å²@ÙÏû¬W$O9²ößÄ髶Âv(r·?,½ø?u«¬§ýéøZÍñÉÆSêÒfæÿ ÕÀb8ÇxØݯ¹ÅAýöµiº\ÉI$▒À}0@bâÚÕq9s'XÝ/Widths[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0®ã¥Vø![
250 333 408 500 500 833 778 333 333 333 500 564 250 333 250 278Õ¶~~Yö*Ó}+«▒rl¥z«°       :¬Î­>2y®GmÀúÀ
500 500 500 500 500 500 500 500 500 500 278 278 564 564 564 444
921 722 667 667 722 611 556 722 722 333 389 722 611 889 722 722
556 722 667 556 611 722 722 944 722 722 611 333 278 333 469 500e$<Ìßf¼péØøag#au.ÁÄè6Ý▒
333 444 500 444 500 444 333 500 500 278 278 500 278 778 500 500
500 500 333 389 278 500 500 722 500 500 444 480 200 480 541 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0/NimbusRomNo9L-Regu
0 333 500 500 167 500 500 500 500 180 444 500 333 333 556 556
0 500 500 500 250 0 453 350 333 444 444 500 1000 1000 0 444
0 333 333 333 333 333 333 333 333 0 333 333 0 333 333 333
1000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 889 0 276 0 0 0 0 611 722 889 310 0 0 0 0
0 667 0 0 0 278 0 0 278 500 722 500 0 0 0 0

「猫」がPDFファイルの内容を読み取れないのはなぜですか?

答え1

これは、pdfがプレーンテキストではないためです。catファイルはそのまま印刷できます。コマンドラインを使用してPDFファイルの内容を表示するには、を使用できますpdftotext

pdftotext pdffile -

答え2

中国語のテキストを含むファイルを呼び出すと、cat英語の翻訳は印刷されません。コンピュータ形式の場合も同様です。cat特定の形式のデータを含むファイルを呼び出すと、プレーンテキストなどの他の形式に変換されません。それは仕事ではありません。アクションは、入力を変更せずに出力にコピーすることです。

PDFファイルはテキストファイルではありません。 PDFファイル含めることができるテキスト、書式設定手順、画像、ハイパーリンクなど、PDFファイルのテキストを読むには、PDFファイルの種類を理解するツールを使用する必要があります。

NimbusRomNo9LPDFファイルには、テキストがNimbus Romanフォントで書かれていることを示すいくつかの識別可能なビットがあります。これはすべてのPDFビューアとプリンタに必要ないくつかのフォントの1つであるため、PDFファイルに含める必要があります。テキスト自体(abc)は圧縮されているため、出力から隠されません。

形式に関係なくファイルを表示するための一般的なツールは次のとおりです。xdg-open。 Debianとその派生物ではsee代替案です。どちらもファイル形式を推測して動作します。ファイル拡張子適切なアプリケーションを呼び出します。テキスト部分を明示的に抽出したい場合(画像、フォント、ページ上のテキストの位置などの他の情報を忘れた場合)、PDFファイルをテキストに変換するプログラムを呼び出すことができます。pdftotext

1中国語を理解している場合は、グルジア語、カナダ語、クリア語、または知らない言語に置き換えてください。

答え3

cat(1) はファイルを「印刷」せず、一連の入力ファイルをインポートして出力にリンクするツールです。

自分で行うことは、cat fileコンテンツを取り込んでfile端末に出力するだけです。テキストが含まれている場合、file端末はそれをそのまま表示します。 PDFファイルはテキストではなく(テキスト以外のすべてのファイルと同様に)歪んで表示されます。各ファイル形式を明確にレンダリングするには、特定のプログラムが必要です。

今日、プリンタはページにレンダリングするためにPDF入力を使用することがよくあり、印刷に使用されるツールはそれをプリンタが使用するすべてのコンテンツに自動的に変換します。

答え4

あなたはそれを使用することができますpdfgrep

pdfgrep . file.pdf

関連情報