LemonHX

LemonHX

CEO of Limit-LAB 喜欢鼓捣底层的代码,意图改变世界
twitter
tg_channel

Adobeは悪事が多く、PDFとPostScriptは出版物の形式に対する独占を持っています。

adobe_logo_6.png

画像は Adobe Photoshop で作成されました。

一般的な出版形式#

普通の人、私たちも含めて、もし本を書きたいと思ったら、どのツールを使いますか?

まず答える前に、どのような問題に直面する可能性があるか、どのように最短時間で書き上げるか、どのように閲覧するかをよく考えてみてください...

さて、おそらく LaTeX + PDF または Word と答える人がほとんどだと思います。

Markdown で書いて HTML に変換して XML に変換するという狂ったことをする人はいないでしょう。

なぜなら、印刷された形式が正常に表示されることを保証するために他の選択肢はありませんし、ウェブページを作成する場合にはどのような技術スタックを知っているか、使用したことがあるかを考えてみてください。

驚いたでしょう、なぜ私たちは本を出版するために他の選択肢がないのか!

なぜ最後に PDF が残ったのか?#

1991 年、Adobe の共同創設者であるジョン・ワーノックは、文書の配布を容易にするためのシステムを提案しました。当時、LaTeX、DVI、および Unix マシンが主流でした。LaTeX は皆さんもご存知の通り... .tex ファイルを手に入れて印刷できるまでにはまだまだ時間がかかります。そのため、彼らはユーザーの負担を軽減するためにこの形式を作成することにしました。

一部の読者は、なぜ LaTeX が負けたのかわからないかもしれません。そこで、1980 年代のかわいい大学生のアウェイを例に挙げて説明します。彼は学長の論文を印刷して読むために、それを印刷したいと思いました。

latex.jpg

そして、彼は学長の.tex ファイルを手に入れましたが、まず彼は学長が使用したパッケージを見つける必要がありました。

(そして、彼は学長が自分で書いたパッケージがあり、ソースコードの入ったフロッピーディスクがどこにあるのかわからなかった...)

それから彼はさまざまなフォーラムでパッケージを探し回り、すべてのパッケージを見つけることができましたが、.sty ファイルが壊れていました。

(彼は学長に尋ねましたが、学長は.sty ファイルを変更していないと言いました...)

彼は学長が学長の大学の独自の LaTeX ディストリビューションを使用していることに気づきました。.sty ファイルをインポートした後、何とかうまくいったようです...

そして、彼はこの LaTeX をコンパイルしました...

Error line 114514 !Text line contains an invalid character.
Error line 114514 !Text line contains an invalid character.
Error line 114514 !Text line contains an invalid character.
Error line 114514 !Text line contains an invalid character.
Error line 114514 !Text line contains an invalid character.
Error line 114514 !Text line contains an invalid character.
Error line 114514 !Text line contains an invalid character.
Error line 114514 !Text line contains an invalid character.
Error line 114514 !Text line contains an invalid character.
Error line 114514 !Text line contains an invalid character.
Error line 114514 !Text line contains an invalid character.
Error line 114514 !Text line contains an invalid character.
Error line 114514 !Text line contains an invalid character.
Error line 114514 !Text line contains an invalid character.

おそらくパッケージが更新されたようです...

彼は大声で叫びました: "学長、やめてください!"

したがって、PDF はこの問題を大いに緩和しました。

PDF の最大の貢献は、まず XML を使用してレイアウトを行い、画像の形式を規定し、一連のメタデータを提供し、フォントセットを統一し、強力な PostScript を使用して多くのファンタジーな効果を実現することです。

では、この素晴らしいものがどこで問題を引き起こしたのでしょうか?

特許問題#

2008 年、Adobe は ISO32000-1 を公開し、PDF 互換アプリケーションの作成、使用、配布に関連する特許と技術文書を公開しました。

えっ、このものに特許があるの!?

そうです!

特許があり、しかも買い取り専用の特許なのです!

つまり、アウェイの貧しい研究室は、PDF 技術を使用した PDF ディストリビューションをリリースすることはできません。そうしないと訴訟問題になります。

さらに、彼らが提供する技術のリファレンス実装は... なんとプロプライエタリな技術に依存しているのです!信じられない!

フォントの特許#

当時、ビットマップフォントの歯の問題を解決するために、Adobe は Type 1 および Type 3 のフォント形式を導入しました。そして、このフォントの輪郭データは、Adobe が暗号化アルゴリズムと鍵を使用して保存しました。滑らかなフォントを印刷したいですか?高額なライセンス料を Adobe に支払ってください。

Adobe の技術レベルはかなり低いですが、リリース直後にクラックされた場合でも、彼らがあなたが使用しているのを見つけた場合... 弁護士を用意してください。Adobe の弁護士は強力ですから。

画像の特許#

Adobe は数え切れないほどの画像特許を持っています。圧縮、フォーマット、フィルタ、デコーダなど、あなたがうっかり Adobe の技術を使用して画像を処理した場合... うっかりライセンス料を支払うことになります。


これらの 2 つの特許はまだましですが、最も厄介なのは PostScript の特許です。

PostScript とは何か、Microsoft、Apple、Adobe の愛憎関係#

E832B68B-A62E-4C72-8CC7-4CC3474DF202.png

PostScript は、Adobe の初期のメンバーのアイデアに基づく、Forth に似たスタックベースの解釈言語です。1978 年に初めて実装され、Adobe の勢力拡大に伴い、PostScript は一時期はすべてのレーザープリンタに組み込まれるようになりました。

なぜ画像を印刷するためにプログラミング言語が必要なのか疑問に思うかもしれません。

なぜなら、Adobe がベクトルフォントを開発し始めたことにより、ベクトルデータをビットマップに変換して印刷する方法が必要になったからです(これはグラフィックスで一般的にラスタライズと呼ばれるステップです)。90 年代における Adobe のほとんどの利益は、この PostScript のプリンタファームウェアから得られていました。その影響力は計り知れます。

そして、Apple と Microsoft は座っていられませんでした。なぜなら、Adobe のやり方は少し悪質だったからです!

国共合作一致対外#

1980 年代末、Apple は Adobe の悪質な行為に抗議するために TrueType(私たちが今も使っている.ttf)形式のフォントを開発しました。Microsoft と Apple はいくつかの技術を交換し、TrueType の使用権を得ました。その結果、TTF は Windows の主要なフォント形式となりました。

GNU と FreeDesktop も座っていられませんでした#

あなたたちはすべてこの閉じたシステム、特許を使って遊んでいるのですか?オープンソースコミュニティは最初に反対します!

そして、彼らは FreeType を開発し、Adobe、Apple、Microsoft から告訴されました。

(資本家は一緒になっています)

2010 年までに、フォントの特許が解除され、FreeType が再リリースされることが許可されました。しかし、Apple がまだ保有しているフォントの微調整機能の一部が削除されており、これが Linux の GUI フォントが見栄え悪い理由の一つでもあります。Windows、あなたは言い訳しないでください、あなたの書き方が悪いのはわかっています。

PostScript はなぜこんなにひどいのか#

並行処理と並列処理にある程度の理解があるならば、グローバルな状態を作らない方が良いことを知っているはずです...

PostScript は、グローバルな状態を隠蔽する言語です。大きな PDF ファイルを開いてページを高速にめくるとすぐにフリーズする問題があるのは、このためです...

PostScript は画像の透明度をサポートしていません(PDF の透明度はどうやって実現されているのか、それは Adobe の特許です

PostScript の隠れたグローバルな状態により、互換性のない 1 つのレンダリングエラーがすべての後続のページに伝播する可能性があります...

つまり、わずかな非互換性があると、ドキュメント全体が表示できなくなる可能性があります。

ああ、忘れていましたが、Windows は GDI ですが、他のすべてのプリンタードライバは PostScript です... つまり、実質的に出版物の事実上の標準は独占されています。

2022 年、他の人はどのようにレンダリングしているのか#

一部の人々は気づきました。ええ、私たちのフロントエンドは今とても派手ですが、あなたが言っているこれらの問題はありませんね。

(フロントエンドのウェブページをプリンターで印刷したことがありますか?スクリーンショットではありません)

フロントエンドの進歩に伴い、HTML5 CSS のバックエンドは日々進化しています。以前は Google の Angle と Skia があり、最新の Servo が GPU を最大限に活用してレンダリングするようになりました。もう時代は変わりましたが、PDF はまだ少しずつ PostScript を解釈しているのです。

2022 年です。あなたが 1 つのウェブページから別の完全に新しいウェブページに切り替えるのにかかる時間は最大でも 1〜3 秒で、キャッシュがあればミリ秒単位です。これは事実上の圧倒的な差です。

Skia_Project_Logo.svg_-1024x565.png

開放は進歩をもたらし、閉じたものは遅れを引き起こす#

独占は一時的なものです。Adobe の特許がすべて期限切れになった後、彼らを待っているのは Web という巨大な存在です。

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。