文字コード総合スレ part15 (467レス)
上下前次1-新
1: デフォルトの名無しさん [] 2024/08/17(土)11:18 ID:VHa7+i59(1/2)
文字コードについて語り合うスレです
368(1): デフォルトの名無しさん [sage] 07/31(木)22:07 ID:1FIA24UI(6/8)
>>366
> ・全ての文字(フォント)が SJIS と1対1でマップされている保証はない
それはそうだが、実際はされてるから問題にならなかったんだろ
SJISで正規化問題なんて聞いた事無いし
unicodeでは色々な所で多対一がモロ仕様だから顕在化しただけ
とはいえこれ以上は平行線だろうし終わりでいい
合意とる必要もないし
俺は、
・見た目全く同じなのに検索に引っかからない事があるunicode仕様
・コピペ時に見た目は全く同じな別のコードに変わる事があるPDF仕様
なら、PDFには後者の方が断然いいと考える
PDFに対して検索はよくやるが、コピペはあまりしないし
(ただ、ファイル容量なんてどうでもいい昨今なら、両方入れとけだろうし、
それが316リンク先内の/ActualTextだろうから、
俺らがやるべきは、「/ActualTextを出力しないPDF作成アプリはゴミ」と吹聴する事だろうよ)
369(2): デフォルトの名無しさん [sage] 07/31(木)22:46 ID:Ztum1zAi(4/4)
>>368
昔から発生してた、特に字体の多いプロフォント使った印刷用のPDFとか外国語関係とかだと当たり前に起きてた、お前の経験が浅いだけ
単にSJISとかしょっちゅう文字化けするんで、文字化けしても特段話題にならなかっただけ、検索とかコピペ失敗しても単に機種依存文字wって言ってすましてた
unicode が普及したことで環境依存って思わなくなったのと外国の文字が含まれてるフォントを常用するようになって話題になった
370: デフォルトの名無しさん [sage] 07/31(木)22:58 ID:1FIA24UI(7/8)
>>369
> 検索とかコピペ失敗しても
それはお前の理解が間違ってて、PDF内では検索失敗しないのがPDFの仕様だ
まあお前みたいなタイプは沢山居るけども
371: デフォルトの名無しさん [sage] 07/31(木)23:10 ID:1FIA24UI(8/8)
>>369
もしかして検索はPDFではなくSJISにかかってた?
だとしたら、俺はSJISで「見た目同じだが引っかからない」検索失敗は、一度も経験した事がない
経験不足なのか、SJISにはなくunicodeで発生した問題なのかについては、俺は後者だと考えてる
372(1): デフォルトの名無しさん [sage] 08/01(金)01:22 ID:S37h8L9Z(1/4)
アホ過ぎる「検索失敗しないのがPDFの仕様だ」とか小学生レベル
失敗するのは人間。
見えてる文字で検索したつもりでも内部的には別の文字になってるので検索に引掛からなかったり、その逆で見た目が全然違う文字が検索でひっかかたりする。原因はコピペの失敗と同じ 。
373(1): デフォルトの名無しさん [sage] 08/01(金)07:02 ID:7kydH/9J(1)
>>372
グリフが完全に同じ時は同じ文字扱いなのがPDFで、
グリフが完全に同じでも違う文字の時があるのがunicodeだぞ
とはいえ、お前には理解出来ないことは理解したので終わりでいいが
374: デフォルトの名無しさん [sage] 08/01(金)07:18 ID:ckQfX7Hr(1)
だれかTeXで例えて
375(1): デフォルトの名無しさん [sage] 08/01(金)08:03 ID:S37h8L9Z(2/4)
>>373
SJIS の話してんのに unicode 関係ないだろ
お前は PDF のこと全く分かっってないだろ
PDF はお前が思ってるほど単純なしくみじゃないぞ
CMap って聞いたことあるか? そのあたりから内部構造勉強してみ
/ActualText どころか ToUnicode CMap すらない PDF だって普通にあるんだよ(unicode 以前のフォントが unicode 対応してる訳ないだろ
PDFの内部の文字の記録は unicode ではなくてグリフID というフォント内の格納番号なんだよ、一部の日中韓フォント使った場合は CID というまた別のコードで記載されてることもある
376: デフォルトの名無しさん [sage] 08/01(金)08:41 ID:wR/jTASQ(1/2)
>>375
その辺は316のリンク先読んだ程度しか知らないが、
それでも普通にプログラミング経験があれば理解出来る物なんだよ
グリフID->文字コードの変換表は、普通に実装すれば「その文書で最初にそのグリフを使った文字コード」が格納される
だから、「違う文字コードだが同じグリフ」が無い場合、この程度の仕様/実装でも検索もコピペも問題ない
実際、SJISでWindowsデフォのフォントを使ってる限り、問題なかった
ところがunicodeでは、「違う文字コードだが同じグリフ」が普通にあるので、
コピペでは「同じグリフの違う文字コード」に変更(縮退)されてしまう事が多発する
なお、PDF内では「同じグリフは同じ文字コード」に縮退されているので、検索では100%ヒットする
というか、ループしてるしこの辺でいいか?
ここでは知識(知れば済む事)を与える事は出来ても、
理解(考えて納得する事)を与える事は出来ない
いろんな言い方をする事は出来るけども、既にそうしてきてるし、
これで理解出来ないのはお前の知能の問題で、ここで一朝一夕に修正するのは無理だ
お前は知識=頭がいいと考える文系馬鹿に近い存在のようだが、それは間違いだ
知識はちゃんと理解してナンボであってね
プログラミングが多少でも出来る奴なら、上記の俺の説明で、ああ、はいはい程度には理解出来ると思うし
377(2): デフォルトの名無しさん [sage] 08/01(金)09:32 ID:S37h8L9Z(3/4)
お前は一回 PDF 検索を実装してみろ、失敗しない検索が実装できるか分かるぞ
検索文字列がフォント名とグリフIDのセットで降ってくるとでも思ってるのか?
378(1): デフォルトの名無しさん [sage] 08/01(金)22:01 ID:wR/jTASQ(2/2)
>>377
> 検索文字列がフォント名とグリフIDのセットで降ってくるとでも思ってるのか?
お前のプログラミング能力はゼロで、文字列検索では具体的に何をしてるのか全く知らない事は分かった
ただこれはプログラマには常識過ぎるので、316のリンク先やこのスレ内でも、誰もわざわざ言及していない
だからお前は付いてこれないままだ
だが、それ以前に、お前は文字列とは何なのかも知らなそうだが
そもそも>>317もまるで理解できてないだろ
理解したければ、プログラミングのイロハから勉強するんだね
多分お前はPDFのヘビーユーザー、おそらくはイラレ使い、てなところか
お前が文字コードの問題まで理解できることは、短期的にはない。ベースの知識が足り無すぎる
そもそも何故お前がこの板にいるのかがかなり謎だが
PDFに不満があるのなら、「出力はAdobe純正ソフトで、マッピング情報等は全部含めて、ファイルは大きくなってもいいから」と依頼すれば、
お前の不満に対しての最適解にはなってるだろうさ
379(1): デフォルトの名無しさん [sage] 08/01(金)23:52 ID:S37h8L9Z(4/4)
>>378
俺は実際にPDFの検索組んだことあるんだが、お前のその妄想はどっから来たのか知りたい
380: デフォルトの名無しさん [sage] 08/02(土)07:47 ID:xIFE1Go+(1/4)
>>379
文盲か?最初の行にわざわざモロクソ書いただろ
> 検索文字列がフォント名とグリフIDのセットで降ってくるとでも思ってるのか? (>>377)
ここからだよ
普通はたった2行のレスをわざわざ引用するのは冗長すぎるので文句言われるが、
それでもお前にはどちらの行か分かるようにしたほうが良さそうなので敢えて引用した
5chのコミュ障共はこの辺の配慮なんて汲めないから、
ひたすら「俺にとっては冗長だ」という基準で長い長い言うわけだが、
それでも馬鹿なお前に合わせて書いてるんだから、ちゃんと読め
というか、逆に言うと、そんな事を言うお前は、
> 検索文字列がフォント名とグリフIDのセットで降ってくる
場合に、検索出来るようになると思ってるわけだろ
そりゃお前の組んだプログラムなんて動作しないさ
初心者あるあるだが、
・間違った問題を、間違った方法で解決しようとして、余計におかしくなる
ケースに該当する
ただ正直、このレベルから相手にする気にはならんし、勝手によろしくやってくれだが
381: デフォルトの名無しさん [sage] 08/02(土)07:48 ID:xIFE1Go+(2/4)
結局の所、>>317はよく書けていて、その通りだが、別の言い方をすると、
PDFの仕様は各文字が別々の字形(=複数の文字コードが同じグリフを使うことがない)
の時に機能するように出来ていた
SJIS時代はだいたいこれが成立してたので、目立った問題はなかった
unicodeだとまるで動かなくなったので、新仕様を整備したが、対応してないPDFアプリは誤動作しまくり
で、これが上位の状況説明で、下位の詳細理由説明が317になってる
上位の説明はお前のような文系馬鹿でも分かるはずだが、下位の説明では、
・元々どのように動作していて、←これ(前提部分)が省略されてる
・〇〇すべき所
・△△になってるから、上手く動かない
の、後半部分しか通常は与えられない。全員が知ってる前提部分なんて無駄でしかないから
だから、前提部分の知識が全く無いお前には理解できない。これがお前が317以降空回りしてる理由
趣旨は異なるけど、例のバッテリー女も、同様の前提条件
・車のエンジンをかける際にバッテリーが必要なこと(=セルモーターを回してエンジンをかけること)
を知らないからそうなるのであって、バッテリー女がクソ女なのは事実としても、
「バッテリーが上がってるとエンジンもかからないんだ。バッテリーなら15分ほどで修理できるから、試してみてくんない?」
と一言言えば回避できるんだが、これをやりたいか、ここまでやる必要があると考えるかは、人それぞれだね
ただ、会話する気があるのなら、相手が馬鹿と分かったのなら、馬鹿にも通じるように言うべきではある
そして俺は一応それをやってるつもりなのだから、ちゃんと読んでくれ
382(1): デフォルトの名無しさん [sage] 08/02(土)08:50 ID:jagzAmj3(1/4)
糞長文書いてる暇があったらプログラム書けよ
そうすればすぐに unicode 関係ない
絶対に失敗しない検索も作れないってわかるぞ
そもそも暗号化されてもいないのに一切検索できないPDFをはくツールすらあるぞ
383: デフォルトの名無しさん [sage] 08/02(土)09:03 ID:tv/q+z7t(1)
>>382
それも初心者あるあるだな
賢いお前にはこれで十分通じるはず(キリッ
384(1): デフォルトの名無しさん [sage] 08/02(土)10:53 ID:jagzAmj3(2/4)
日本語フォントとかだとグリフID の順がSJISやUnicodeと全く一致してないということを知らずに吹いてるんだろうな(SJIS時代は並び順が一致してたとでも妄想してるのかな?
検索文字列がSJISとかUnicodeで与えられた時にそれをどうやってグリフIDとマッチングされるか具体的な方法も知らないんだろうな
グリフIDと文字コードの対応がPDFに内蔵されてない場合に検索どうするか検討もつかないんだろうな
中には文字をグリフIDですらなくてアウトラインの図形データとして格納してるPDFだってあるということも知らないんだろうな
385(1): デフォルトの名無しさん [sage] 08/02(土)11:23 ID:xIFE1Go+(3/4)
>>384
> 順が
なるほどやはりお前は分かってない
> 検索文字列がSJISとかUnicodeで与えられた時
実はこれには問題がある。だから注つけるかとも考えたが、
> 画面なぞって (>>361)
と既に言及してるし、どのみちunicodeだと手打ちでは無理で、画面なぞるしかない(後述)ので、まあいいかで省略した
賢いお前らなら当然気づくから、いちいち無駄ツッコミはないはずだし
> グリフIDと文字コードの対応がPDFに内蔵されてない場合
それは初(ry
> 中には文字を
それも初(ry
本質的には、unicodeの問題がPDFに輸出されてしまってるんだよ
仮にPDFがhtmlのようにunicode文字コードで構成されてても、正規化の問題は発生するし、
316の例みたいに同じグリフを複数のコードが使用してる場合、「手打ちでの」検索はヒットしないことがあり得る
PDFの仕様だと、「画面なぞれば」100%ヒットするだけまだましで、unicodeはこれすら保証できない
386(1): デフォルトの名無しさん [sage] 08/02(土)11:47 ID:jagzAmj3(3/4)
>>385
結局何も分かってなかったのね?
既存のPDFビュワーの画面をなぞるのはコピペの機能だぞ
一旦グリフIDから文字コードに変換される、そして検索窓等に文字コードとして入力される、コピペが化けるのと同じ問題が起きる
それともお前がSJIS時代にグリフIDのままで検索できるビュワー書いたのか? 本当に過去に存在してたのなら見せてくれ、ごめんなさいして今から書いても良いぞ
作るのなら
フォントごとにグリフIDが異なるんだが、まずは複数のフォントが使われてる時にあるフォントの「あ」の文字を選択したときに、別のフォントの「あ」の文字のグリフIDにどうやったら変換できるか考えてみろ
コードポイントによってはグリフがなくて表示されないやつすらある(単純な例ならスペースとか改行、もっと複雑なのが一杯ある)、
合字とかで複数の文字からなる文字列に1つだけのグリフIDが割り当てられていることもある(レパートリはフォントごとに違う)、
そういう時はどうする考えてみろ、PDFについて無知過ぎ
387(1): デフォルトの名無しさん [sage] 08/02(土)12:26 ID:xIFE1Go+(4/4)
>>386
相変わらず分かってねえな
> コピペが化けるのと同じ問題が起きる
だからいいんだぞ
両方ともPDF内から生成された物だからこそ、確実に一致する
> PDFについて無知過ぎ
PDF博士なお前はマウントポイントなこの点にこだわるようだが、
既に言った通り、本質的にはPDFではなくunicodeの問題だ
実際、unicodeなhtmlでも「見た目同じだけど検索に引っかからない」ケースが普通にあるだろ
コピペに関しては、文字コードを保存してないのが問題で、既に仕様は追加済み、さっさと対応しろだが、
検索に関しては、元々unicodeは検索がまともに出来ない仕様で、それがPDFにも輸出されただけ
例えば、316で3つの「長」が同じグリフIDに紐づけされるのは、
当然その文書のそのフォントでは3つの「長」が同じグリフを使うからであり、見た目が同じだから
同じ文書をhtmlで表示させたら、当然画面上の見た目は同じ「長」になるが、
文字コードが3つのどれかは見た目では分からない
だから「手打ちで」「長」と打ち込んでも、当たらない時がある
これ、PDF全く関係ないだろ
388: デフォルトの名無しさん [sage] 08/02(土)15:48 ID:MvhBDlJ2(1)
馬鹿はコード書けって言われると発狂するから分かりやすいね
389: デフォルトの名無しさん [sage] 08/02(土)18:36 ID:jagzAmj3(4/4)
きっとここがプログラム技術板だってことにすら気付いていないんだろうな
プログラム書けば良いのに
390: デフォルトの名無しさん [sage] 08/02(土)19:21 ID:dbEqXJf9(1)
ID:xIFE1Go+がニワカ知識だったでOK?
391: デフォルトの名無しさん [sage] 08/04(月)06:18 ID:QkMIbgCE(1/2)
さてと
PDFの中を覗いてみたけど、/ActualTextという要素がある(場合がある)のね
Acrobatなどは検索やコピペのときにこれを参照するのかな?
392(2): デフォルトの名無しさん [sage] 08/04(月)06:44 ID:wGHus/El(1)
画像に/actualtextや/altが付いているのでたしかめて見ては?
{}内のテキストが入っている
Actual Text
{T}
his is an example of actual text.
Alt Text
{Je t'aime (French for "I love you")}
This image has alt text: Je t'aime (French for "I love you")
https://taggedpdf.com/wp-content/uploads/2015/12/Actual-Alt-Expansion-Text.pdf
393(2): デフォルトの名無しさん [sage] 08/04(月)07:42 ID:B+SwrOCa(1/5)
Actual Text や Alt Text もそうなんだけど最近の PDF には大きな枠組みで「タグ付き PDF」という機能があって文章の構造化ができる
要はHTMLの段落タグや見出しタグと同じやつで読む順番やその文章内での意味付けや読み方や代替の指定が可能、補足を入れる Expansion Text みたいなのも
これによって改行を超えた検索とかリフローっぽいこととか、画像化された文字のテキスト化の指定とかとか色々HTMLっぽく使える
(文字コードとは独立した問題)
394(1): デフォルトの名無しさん [sage] 08/04(月)10:06 ID:QkMIbgCE(2/2)
>>392
なるほどー。ただこれはどちらかというと /Span の使い方のデモ(濫用)って感じも
しかしこれでAcrobatのことが少しわかった感も、どうもです
>>393
> ... 文章の構造化ができる
>(文字コードとは独立した問題)
異なるコードポイントの文字を構造化することもできますね
395(2): デフォルトの名無しさん [sage] 08/04(月)12:31 ID:Dprx6XuC(1/4)
一部訂正
× コピペに関しては、文字コードを保存してないのが問題で、(>>387)
○ unicodeのコピペに関しては、糞フォントと文字コードを保存してない組み合わせの時の問題で、
PDFの昔の仕様でも、文字コード->グリフが1:1の場合にはコピペ/検索共に全く問題なく機能する
316で「なんか低い…」になるのは、それらの文字コードには別のグリフが与えられているからであり、
PDF閲覧者の環境でその文書のPDFを作成した場合、(3つとも別のグリフなら)全く問題ないPDFが作成される
だから発生条件として、
・糞フォントで、違う文字コードで同じグリフを使いまくり
が必要であり、これを誘発しているのはunicodeの仕様
だからPDFがボロいと言うより、
unicodeが本質的にボロくて、以前の1:1な世界と親和性が皆無な事が問題なのだと思うよ
(なお316の件は、コードに戻す際、その文書で一度も使ってもない「長」に決め打ちで変換されていると思われ、
PDF出力アプリがポンコツなのもほぼ間違いない
376の通り、「その文書で最初にそのグリフを使った文字コード」を格納する実装なら、
単国籍な文書《≒大半のケース》で顕在化するのは防げる)
結論としては、やっぱunicode糞じゃね?と思うが
以前の文字コード:このコードはこう表示される程度の知識で全く問題ない
unicode:正しい作法(正規化等)を知らないと色々誤動作する
396(1): デフォルトの名無しさん [sage] 08/04(月)12:54 ID:B+SwrOCa(2/5)
>>395
お前、まだあきらめて無かったのか
昔から1対1なんてことはないよ
グリフIDはフォントごとに異なる、1つのPDFで複数のフォントを使ったら異なるグリフIDになる、逆に同じグリフIDでも異なる文字を表現している
何度も言われただろ、理解できない部分を読み飛ばしてるのか?
397(1): デフォルトの名無しさん [sage] 08/04(月)13:40 ID:Dprx6XuC(2/4)
>>396
いや、やはりお前は理解出来てない
もういいけど
(お前が理解出来ない事は理解しているし、お前の頭の悪さについては諦めている)
> グリフIDはフォントごとに異なる、1つのPDFで複数のフォントを使ったら異なるグリフIDになる
ここまでは全く問題ないが、
> 逆に同じグリフIDでも異なる文字を表現している
これが問題
「単射」と言った方が正しかったが、
俺は使ってきてなかったのと、後で使ってた「1:1」表現に揃えたのが不適切だったようだ
ただ、事実は変わらない
当たり前だがゴシックの「あ」と明朝の「あ」は別グリフIDになるが、
この場合にも検索/コピペは昔のPDFの仕様で全く問題なく動作する
まあunicodeは色々糞だというのが俺の見解
387の表現だとPDFに主たる問題があるとも読めるので訂正した
(unicode以前は問題なく機能していたので)
398(1): デフォルトの名無しさん [sage] 08/04(月)14:31 ID:B+SwrOCa(3/5)
>>397
明朝体の「あ」のグリフIDが 325 でゴシック体の「ほ」のグリフIDが同じ 325 ということだってあり得るんだよ
明朝体の「あ」とゴシック体の「あ」は検索したいけど、ゴシック体の「ほ」は検索にひっかかると困る。常識だろ
399(1): デフォルトの名無しさん [sage] 08/04(月)14:37 ID:D3iy7z0J(1)
>>395
>・糞フォントで、違う文字コードで同じグリフを使いまくり
自分の妄想をベースにAdobeに因縁を付けるのか
最近こういう人が増えている感じで怖い
>以前の文字コード:このコードはこう表示される程度の知識で全く問題ない
ある
前提の認識が間違っているのでそれをベースにした話も間違い
ただの間違いの積み重ね
400(1): デフォルトの名無しさん [sage] 08/04(月)15:13 ID:Dprx6XuC(3/4)
>>398
それは初(ry
あとちなみに、「1:1」の表現は317から使われてるだろ
お前以外の誰も「1:1」表現を気にしてないのは、お前だけが特殊(=非プログラマ)だから
まあ方言っちゃ方言だが、この場合の意味は可逆/非可逆であって、写像形式自体を示しているわけではない
>>399
> 自分の妄想をベースにAdobeに因縁を付けるのか
俺はAdobeは順当で、unicodeがウンコだとずっと言ってる
とはいえ文盲と5chで話をするのは無理なのでもういいが
401(1): デフォルトの名無しさん [sage] 08/04(月)15:21 ID:SX/R7tYr(1)
>>392-394
Adobe Acrobatで検索もコピペも出来ない/ActualTextの例
402(1): デフォルトの名無しさん [sage] 08/04(月)17:34 ID:B+SwrOCa(4/5)
>>400
だから 317が1対1じゃないって言ってるだろ
フォントと文字コードが1対1じゃないのは Unicode どころかPDFよりもっと前の PostScript のフォントで使われ始めた技術
それが現在までそのまま引き継がれてる
Unicode で始まった話ではない
403(1): デフォルトの名無しさん [sage] 08/04(月)21:50 ID:Dprx6XuC(4/4)
>>402
そういう話じゃねえ
てかお前も本気で文盲だな
317: 1:1でなら動くシステムに多:1をブッ込んでるから動かない
やぞ
ただここまで言っても通じないのだから、本件に対し、お前の知能/知識がまるで足りてないんだよ
普通レベルのプログラマなら317で、ああ、そういう事か、で終わるし
その後、これをどう評価するか(=PDFが糞か、unicodeが糞か)で揉めるならまだしも、
お前は何故そういう動作になるのか未だに理解出来てない
そんなお前が書いたプログラムなんて、何であれ、動くはずもなし
しかしマジで無限ループ状態だから、もう止めようぜ
今のお前が理解するのは無理だよ
404: デフォルトの名無しさん [sage] 08/04(月)22:38 ID:B+SwrOCa(5/5)
>>403
文盲って言われても 317 は俺が言ってる通りの意味で、お前の解釈が間違ってるんだが?
405: デフォルトの名無しさん [sage] 08/04(月)23:12 ID:n6MSUZI0(1)
で、いつ検索プログラム書いてくれるの?
406(1): デフォルトの名無しさん [sage] 08/05(火)17:39 ID:vuU/s1Wj(1/3)
>>401
え? 例えば箇条書きの部分 (Tom Dick Harry)の先頭は
● (<-文字化けするかな? U+25CF)で検索もコピペもできますが?
PDFの中を見てみました?
407(1): デフォルトの名無しさん [sage] 08/05(火)17:45 ID:ucdc3IWT(1)
>>406
全部でいくつあるか数えたか?
その他の/ActualText箇所が対応してない
408(1): デフォルトの名無しさん [sage] 08/05(火)18:40 ID:vuU/s1Wj(2/3)
>>407
"T"の所? アクセシビリティをオンにしたらそこを"T"と読むので
これで機能している
多分/Spanとの組み合わせにする必要があるんじゃ?
409: デフォルトの名無しさん [sage] 08/05(火)18:52 ID:vuU/s1Wj(3/3)
ところで、この手のPDFって/Encodingが/Identity-Hじゃないですか
もしかして/UniJIS-UTF16-Hとかなら元のコードが反映されるんじゃね? と思って
試してみたが... 駄目ですなーなるほどー
中間コンパイル的な感じでグリフの世界に行っちゃってる感じ?
410: デフォルトの名無しさん [sage] 08/05(火)19:10 ID:tWkqXVBi(1)
>>408
Thisで検索もコピペも機能してない
411: デフォルトの名無しさん [sage] 08/07(木)22:53 ID:lZ/0qeLw(1/3)
というわけで、今のところActualTextが唯一の方法なのかな
本来は構造化とかタグ付け目的なのかもしれんけど、それでグリフとコードポイントの
対応もローカルにカスタマイズできるというか
412: デフォルトの名無しさん [sage] 08/07(木)23:01 ID:lZ/0qeLw(2/3)
現状、それを生成できるPDFライブラリとそれを検索できるPDFビューアが限られるけど
ま、コピペするならPDFで出力する前の元の文書からどうぞ、って感じかね
そもそも元の文書の持つ論理構造はPDFにした時点で文書のレンダリング表現(って
言うのかな)に変換されるわけで、何かしら情報が変化しても不思議ではない、
というのが個人的感想ですが
もちろんこうしてアドビさんは頑張っている一方、それを理解していない人々も多々...
413: デフォルトの名無しさん [sage] 08/07(木)23:05 ID:lZ/0qeLw(3/3)
そういえば、ネット上で色んなPDFが検索できるけど、中にはActualTextを使わずに
複数コードポイントが混在できているのもあった
それはフォントを切り替えることでグリフが重複していないのだった
PDFの生成主がそれを意図的にやったのかは不明だが
414: デフォルトの名無しさん [sage] 08/17(日)14:45 ID:2MRCWKC9(1)
康煕部首の「長」と普通の「長」がコピペで混在できる(こともある)PDFを
作ってみましたが、いかがでしょう
https://drive.google.com/file/d/1sqQ6lqQhvfC_zTkL3B4fQ_GV4_376O10/
とりあえずGoogle Driveが立ち上げるPDFビューアではうまくいかない模様w
415: デフォルトの名無しさん [sage] 08/18(月)08:42 ID:uGdRPz4N(1/2)
ActualTextだとPDF内で該当文字が出てくるたび必要なので煩雑ではあるね
416: デフォルトの名無しさん [sage] 08/18(月)09:08 ID:uGdRPz4N(2/2)
この手のPDFでは、フォントは部分埋め込みなのでCMapも対応する部分だけで
よく、すると一般的な文書の文字範囲では1対1対応にできる(場合が多い)のに
MSの場合はそれでもバグっている、わけね
埋め込みフォントを作る時点ではもうグリフしか見てないということか
417: デフォルトの名無しさん [sage] 08/19(火)15:11 ID:u9mpg9OM(1)
Windowsのフォントをちょっと調べてみたら、MS明朝とか、「長」のグリフが重複していない
それでPDFを生成してみると... やはりコピペで文字化けしない
と言うわけでWindowsユーザーの皆さん、これからはMSのフォントだけを使う、
と言うのはどうだろうか。游明朝とかのことは忘れて
WindowsのPDF生成ドライバーもそれを望んでいるのかもしれない
418(3): デフォルトの名無しさん [sage] 08/19(火)16:58 ID:fPjlHGI2(1)
別にMSじゃなくても伝統的な日本語(JIS系や adobe-japan系)の文字しか入ってないフォントで重複してることなんてめったにないよ
複数の国の文字(中国漢字など)や異なる用途の文字(部首素片など)を同じフォントに収録してる場合にグリフ重複させる場合が多い
最近 google の Noto フォントみたいな多言語対応フォントを使い始めるやつが増えて問題を「再発見」してるだけ
そのせいで unicode のせいだとか言い出すアホが湧いてたわけだが(当然だがフォントには unicode に関係なく任意の文字とマップが登録できる)
419: デフォルトの名無しさん [sage] 08/19(火)23:57 ID:RalGdNCX(1)
もちろんその通り
unicodeのせいだと主張してる人は根本的にわかっていない
420(1): デフォルトの名無しさん [sage] 08/20(水)00:55 ID:hGmntMeI(1)
>>418みたいのって、どこかに書いてあるのでしょうか
それとも純粋に個人的な発想でしょうか
421(1): デフォルトの名無しさん [sage] 08/20(水)01:07 ID:gymbsza2(1/2)
>>420
opentype とか truetype とかもっと古い type1 とかフォントの規格と歴史を勉強しろ
422: デフォルトの名無しさん [sage] 08/20(水)13:03 ID:NLPMnvCO(1)
>>421
なるほど、そういったものを経て>>418のような知識につながったと。興味深いです
423(1): デフォルトの名無しさん [sage] 08/20(水)14:23 ID:bjR6GZEK(1/2)
>>418
お前が相変わらずアホなだけ
実際、SJIS時代に多言語対応フォントなんて誰も使ってなかったろ
お前は仕様的に出来る/出来ない事と、実際にみんながどう運用してるかの区別が付いてない
仕様が完全でなくても、通常の運用では十分カバー出来てた事を、
無駄に意識高いお前のような馬鹿が「仕様ガー悪いノデー僕は悪くアリマセンー」なノリで不用意に
そこらの意識低いド平民にも問題を強制的に「再発見」させたのはunicodeだろ
しかもunicodeでもグリフを重複させていなければ回避出来た話
(そもそも部首素片と一般の字のグリフが同じなのはただの手抜きな気がするのだが、
一般的に同じグリフにするのが正しいのだろうか?)
その他も含めて見る限り、unicodeは無駄に意識高い馬鹿が作った仕様で、実際の運用には向いてない感じだけど
MSはこの辺昔から泥臭くて、仕様の綺麗さより実際の使い勝手を重視するので、フォントもそうなってるだけ
(まあPDFのコピペ文字化けについては、
お前的にはunicodeではなくフォント『だけの』問題だ、としたいのだろうが、
unicodeがその他諸々糞で、この問題でも誘発源になってるのは事実だろ)
そしてふと考えてみるに、unicodeの利点って、
・文字化けしない
だけで、これ以外は全て以前のSJISの方が良い気がしてきた
勿論これだけで十分な利点だし、SJIS以前の仕様はCPUが非力な時代の産物だから運用向きなのも事実だが
424: デフォルトの名無しさん [sage] 08/20(水)15:48 ID:EXUVzrtL(1)
絶対負けを認めないマン
425: デフォルトの名無しさん [sage] 08/20(水)16:40 ID:bjR6GZEK(2/2)
勝った負けたではなく、俺の認識はこう、ということ
お前がそう思わないのはお前の自由
(というか、何でも勝った負けたになるのは議論出来ない馬鹿の特徴
そもそも「議論」に勝った負けたはない
勝った負けたがあるのは「討論」=決を採る段階で、5chで(というよりネットで)決採る意味はないから、
そもそもネットでのほぼ全部の議論に勝った負けたはない
その辺ひろゆきも大幅に勘違いしてるし、信奉者も同程度
つかね、論破に拘ってる=論破して喜べる=普段なかなか論破出来てない=馬鹿
ということなので、自分で自己紹介しなくても、とは思うのだが)
PDFの仕様が完璧でなかったにせよ、
SJIS時代にMS明朝等使ってた人=一般の人ほぼ全員は遭遇しなかった問題だろ
・MSが上手く回避策を実行してくれてた事を感謝するタイプか、(正確にはMSがではなく、普通に作ったら回避出来るとも思うが)
・俺が何をやるにしても自由だからとにかく仕様が悪いと言い張るタイプかの違いだよ
俺は前者、unicode連中やお前らは後者、ということ
ただ実際、unicodeはもう一度綺麗に作り直さないと駄目な程度に酷い仕様になってきてるよ
しかしこれはunicodeの唯一の利点=文字化けしないを消す事になるから、死んでもやらないのだろうけど
となると、どこまで行けるか?というチキンレースにはなってるよ
426: デフォルトの名無しさん [sage] 08/20(水)16:44 ID:rn5+zHEj(1)
さんざんマウント取る言い方してきて、勝った負けたの勝負じゃないだとw
クソダサ
427(1): デフォルトの名無しさん [sage] 08/20(水)17:25 ID:6T31eh60(1/2)
>>423
SJISなんてものを褒め称えるとはマイクロソフト信者かね
昔からメールなどネット上ではいわゆるJISコード(ISO-2022-JP)が使われてきてこちらが国際的にも通用する主流でUNIXなどではEUC-JPが標準
もちろん今では国際的にUNICODEで統一され符号化はネット上もファイル保存もUTF8だがマイクロソフトさんは
428: デフォルトの名無しさん [sage] 08/20(水)18:20 ID:gymbsza2(2/2)
unicode 出る前からフォントは複数の文字コード対応マップで多言語化されれたことを知らないんだろうな
429: デフォルトの名無しさん [sage] 08/20(水)19:22 ID:6T31eh60(2/2)
SJISが世界の全てだった人なんだろうね
430: デフォルトの名無しさん [sage] 08/20(水)21:05 ID:Qtedysji(1/2)
>>427
JISがメールで使われてたのは7bit透過だからだぞ
SJIS信者だと思うのは自由だが、PDFのコピペに関しては、今風に言うと現場猫だよ
PDF仕様猫:グリフが重複して使われるフォントなんて普通ないからヨシッ
PDF出力アプリ猫:同上、ヨシッ
google猫:PDF出力アプリが対応してればグリフが重複してもヨシッ
unicode猫:同じ字(でもないが)に複数の文字コードを割り当てても、アプリかフォントが対応してればヨシッ
MS:普通、部首素片と通常文字は別グリフだろ、これで何も問題なくなるし
フォントがどうであれ、アプリ側で対応出来るのは事実なので、アプリが一番悪い
次に悪いのはフォントで、手抜きでなければ部首素片と通常文字は別グリフになるように思う
ただしそもそものunicodeの思想が間違ってて、そもそも統合漢字としてるCJKの通常文字、
日本人と台湾人と中国人の美的感覚は異なるだろうから、同一グリフで何とかなると考えてる所に無理がある
ただ、欧米も同様にアルファベットの美的感覚が微妙には異なるはずなので、連中が問題ないからCJKも問題ないと思ったのかな、とは思う
(ここらへんは文化の結合度によるが、欧米ほど人が交流してれば美的感覚もそれなりに共有されてるのかもしれん)
というか、具体的に言うと「骨」(0x9aa8)や「曜」(0x66dc)、これらは美的感覚ではなくモロに別形だが
CJK統合漢字という根本的なとこから間違ってるよねと
というかこれらが別コードとして登録されなかった理由は何なんだ?今更異体字ダーとかやってるのに
431: デフォルトの名無しさん [sage] 08/20(水)21:08 ID:Qtedysji(2/2)
ん?2行連続空行は削除されるようになったのか?
まあちと読みにくくなってるが、よろしく
432: デフォルトの名無しさん [sage] 08/21(木)02:20 ID:X0ZtFPzr(1)
一つ一つの技術を正しく理解していないから、文字通り「個人の感想ですよね」という
まあ5ちゃんだし、酒飲み話みたいのもアリだとは思うけど
正しい知識が元になっていればそれは役に立つ話にもなる
一方読む方は間違いを間違いと見抜く力が.... って決してひろゆき信者ではないw
433(1): デフォルトの名無しさん [sage] 08/21(木)02:56 ID:D3EzSAOJ(1)
私も世界にSJISさえアレば良かった人間です(過去形)。欲しい文字は外字にドット打ってました。
ROMに第2水準程度しか乗っていない8ビットや16ビット世代のマシンでUTF8を構築するのって、現実的に可能なのかしら。
興味本位の疑問だけど。
434: デフォルトの名無しさん [sage] 08/21(木)04:47 ID:HC849JP7(1)
交換用符号としての扱いは楽だけど
ROMのコードがJISだから変換マップをオンメモリにするのは厳しそう
索引付きでないと性能でないと思うから
これもROMで持てるならあり
もちろん幅や方向、合字なんかは扱えない
435: デフォルトの名無しさん [sage] 08/21(木)05:18 ID:mNeC3fTJ(1)
>>433
そこはSJISとUTF8といった符号化方式の比較でなくてJIS漢字コードとユニコードの比較で十分
漢字ROMのデータ収録順序はJIS漢字コードの機械的変換できる範囲内だろうから
ユニコードからJIS漢字コードへのマッピング
436(2): デフォルトの名無しさん [sage] 08/21(木)05:33 ID:lFCpHxq7(1)
いわゆる半角カタカナ等(JIS X 0201)と全角漢字等(JIS X 0208)のほとんどは規則的変換できるようにユニコード内に収容されている
例外は一部の記号や文字のみ
したがって漢字ROM読み出しもほとんどは規則的変換できて例外のみ対応で実用的かな
437: デフォルトの名無しさん [sage] 08/21(木)06:14 ID:BA9KDvPD(1)
漢字は厳しいだろ
偶然だが半角の途中まではEF BDを前置するとUTF8
A1 。 EF BD A1
AF ッ EF BD AF
B0 ー EF BD B0
B1 ア EF BD B1
B2 イ EF BD B2
B3 ウ EF BD B3
B4 エ EF BD B4
B5 オ EF BD B5
BF ソ EF BD BF
438(1): デフォルトの名無しさん [sage] 08/21(木)08:42 ID:YIWSP+jR(1/2)
>>436
JIS/SJIS/EUC: https://manuals.ricoh.com/mfp/p_manual/MPC6004JPN/ja/intro/int/r_cjr041.htm
unicode: https://www.asahi-net.or.jp/~ax2s-kmtn/ref/unicode/cjku_klist.html
さすがゆとりZ、無敵すぎ
439: デフォルトの名無しさん [sage] 08/21(木)09:07 ID:4FAr+8B9(1)
>>436
昔のAIにSJISをunicodeに変換するコード書かせたら何故かテーブルもってなくて機械的にシフトと論理演算で変換できますってコード出されたって話を思い出した
お前、そのAIだったりしないか?
440(1): デフォルトの名無しさん [sage] 08/21(木)16:15 ID:jm5fSTrV(1)
>>438
>JIS/SJIS/EUC: https://manuals.ricoh.com/mfp/p_manual/MPC6004JPN/ja/intro/int/r_cjr041.htm
区点コードで文字入力とはシブい。しかし字形が2004じゃないのは果たして
マニュアルだけの話でプリントで使うフォントとかは別なのかな。にしても
441: デフォルトの名無しさん [sage] 08/21(木)21:08 ID:YIWSP+jR(2/2)
>>440
何が言いたいのか分からんが、こちらの意図を明確にしておくと、
ただ単に「JIS 漢字表」でググって並び順が見やすいのを選んだだけ
コードなら以下が見やすいかと
http://www.infonet.co.jp/ueyama/ip/binary/x0208txt.html
JIS等は漢字もあいうえお順(ricohのサイトはまんまアイウエオで見やすい)
てかunicodeって何順?
442: デフォルトの名無しさん [sage] 08/22(金)21:59 ID:SVHvHw/K(1)
https://www.asahi-net.or.jp/~ax2s-kmtn/ref/unicode/cjku_radical.html
>UnicodeのCJK統合漢字は、概ね部首順(部首内は画数順)に並んでいます
443(1): デフォルトの名無しさん [sage] 08/23(土)02:24 ID:/wnxORck(1/4)
しかしこれらの部首って、例のUnicodeの漢字部首のコードポイントに頼らなくても
出せるのね。元々各国の文字コードに部首のコードがあってそれがUnicodeに
引き継がれているようで
JISでも第二水準にちょいちょい部首が入っている。冫(にすい)とか
だがしかし「さんずい」や「しんにょう」などは第二水準にはない
これって何故でしたっけ。まさか さんずい=水に「包摂」とか? ???
444(2): デフォルトの名無しさん [sage] 08/23(土)06:47 ID:0WleoknD(1/5)
>>443
氵も 辶 もJISにあるだろ (JIIS補助漢字または第4水準だが、包摂ではない)
もちろん Unicode も部首素片以外に漢字側にも登録がある
冫だけ第2水準なのは教科書とかで使用例があったから(うろ覚え)
445(2): デフォルトの名無しさん [sage] 08/23(土)07:30 ID:0WleoknD(2/5)
大元の理由が知りたいというい意味ならこの辺は漢字の歴史に由来していて
「冫」は甲骨の時代から独立した漢字で「氷」は字源的には「冫+水」の「冰」の略字
「氵」は「水」が部首になった時の省略形で昔の漢字では2つは全く同じ字形
unicode でも「冫」は漢字としてのみ登録されていて、部首素片(CJK Radical)には無かったはず
446(1): デフォルトの名無しさん [sage] 08/23(土)08:40 ID:baE/iOEd(1)
>>444
「第二水準内で」(第四水準がなかった時代に)という意味です
第四がある現在では包摂の適用が変わりましたので
>>445
JISの中の人がどう考えていたのか気になりました
「冫」は康熙部首の方にありますね(U+2F0E)
どうやら康熙部首がメインでCJK部首が補助のようですが、件の「長」は何故か両方に
と思いきや、CJK部首の「長」は縦の棒が上から下まで繋がっている(画数が-1)とかいう話
そんなんわかるかあw
447(1): デフォルトの名無しさん [sage] 08/23(土)08:52 ID:wdSAuDDp(1)
>>444
「第二水準内で」(第四水準がなかった時代に)という意味です
第三以降では包摂の適用が変わったので、同列には語れません
>>445
JISの中の人がどう考えていたのか気になりました
「冫」は康熙部首の方にありますね(U+2F0E)
どうやら康熙部首がメインでCJK部首にはそのバリエーションが
なのに「長」は何故か両方に同じものが入っている??
と思いきや、CJK部首の「長」は縦の棒が上から下まで繋がっている(画数が-1)とかいう話
そんなんわかるかあw
448: デフォルトの名無しさん [sage] 08/23(土)08:56 ID:yzoynflT(1)
失礼、投稿が失敗したと思いダブリました(&少し書き直した)
449(1): デフォルトの名無しさん [sage] 08/23(土)09:10 ID:0dLwdQt1(1)
>>446
> CJK部首の「長」は縦の棒が上から下まで繋がっている(画数が-1)とかいう話
ならばgoogle猫が手抜きで糞フォントを作ったのがPDFコピペ文字化けの元凶だな
日本人の美的感覚では、(この辺は習字を見れば分かりやすい)
「長」の縦棒は、上よりも下のほうが少し左側(下のほうが広く見える)が美しいとされるので、
真面目にフォントを作れば同じグリフになることはない
450(1): デフォルトの名無しさん [sage] 08/23(土)12:38 ID:0WleoknD(3/5)
>>447
そういう意味なら「康熙部首」はもともと部品じゃなくて普通に使われる漢字なのでJIS的には漢字として登録されるのは問題ない
(康煕部首を漢字以外に登録しているunicode が変というかローマ数字の ⅰ がアルファベットの i と別にあるみたいな変さ)
「氵」とかは伝統的な漢字じゃないので(辞典類の索引くらいしか)単独の用例が存在していなかったのが理由じゃないかな
国語の教科書とかでも康煕準拠で「冫の部」とういう表記は使われるけど「氵の部」という部首は存在してなくて「水の部」と書かれてる
第3、第4水準の包摂基準は原則として第1、第2の基準を援用してるので第2水準で包摂されていたら第4水準に追加できないので、逆説的に第4水準に追加されたことは包摂されていなかった解釈になる(補助漢字はかなりあやしい
451: デフォルトの名無しさん [sage] 08/23(土)12:45 ID:0WleoknD(4/5)
>>449
文字をどのようにデザインするかはフォントごとの勝手、文字コードでは規定していない
いやならそのフォントを使わなければ良い
ゴシック体で画数と意識してられるかアホらしい
452(1): デフォルトの名無しさん [sage] 08/23(土)14:58 ID:/wnxORck(2/4)
あ、すみません
> CJK部首の「長」は縦の棒が上から下まで繋がっている(画数が-1)とかいう話
ちょっとこの部分はガセかもしないので皆さん一旦忘れてもらえますか?
「長」が康熙部首とCJK部首(補助)に登場するのは事実ですが
453(1): デフォルトの名無しさん [sage] 08/23(土)15:25 ID:0WleoknD(5/5)
>>452
unicode には4つの「長」の部首素片が登録されてるメインに1つ、補助に3つ
多分メインのやつが字形を無視した意味上の部首素片で、補助のやつが unicode の包摂基準に従って分離された字形
454: デフォルトの名無しさん [sage] 08/23(土)15:38 ID:/wnxORck(3/4)
>>450
> 「氵」とかは伝統的な漢字じゃないので(辞典類の索引くらいしか)単独の用例が存在していなかったのが理由じゃないかな
なるほど、そんな感じですかね
455: デフォルトの名無しさん [sage] 08/23(土)15:54 ID:/wnxORck(4/4)
>>453
基底クラスに派生クラスが3つ、みたいな感じですかね
部首周りは思ったより複雑ですなw
456(1): デフォルトの名無しさん [sage] 08/25(月)08:21 ID:y+b0tsbW(1/2)
今回の話はほぼ部首由来だけど、そうでないのも少しありそう
U+6AF8(櫸)は「ケヤキ」らしいがこれ以外にU+237F1(𣟱)という字もあり、
この両者に同じグリフを使う場合がある
ちなみに例の坂道グループのはU+6B05(欅)、つくりの下側が「手」
ここらへんの文字がちゃんと扱えるのかのテストでもある
457: デフォルトの名無しさん [sage] 08/25(月)08:51 ID:y+b0tsbW(2/2)
ちなみに台湾の日本アイドルファン系のサイトには、U+6AF8を使っている
サイトが散見される.。まあ無理もないことではある
しかしそれだと日本の情報を十分に集められなかったのではなかろうか
まさかそれを嫌って櫻坂に改名したとしたら、なかなかの文字コード通か?
しかし今度は中国本土の人がU+6A31(樱)を使ってしまう可能性もある
458: デフォルトの名無しさん [sage] 08/25(月)08:56 ID:4e0IOAiN(1/2)
そもそも unicode の統合基準がグダグダなので unicode では同じ字形の文字が複数あるのが当然になってる(IVS/IVDも入れると同じ字形の漢字が3つも4つもあったり
あと1つのフォントには最大で65536グリフしか登録できないので多くの文字を登録したい場合やフォントサイズを圧縮したい場合は同じ字形は一つのグリフで表すというのも普通のテクニックになってる
459(1): デフォルトの名無しさん [sage] 08/25(月)15:28 ID:WuqY0NEW(1)
>>456
Unicodeは各国にある規格を取り込む、というのはまあまあやっていて
U+6AF8は台湾で使われる字、U+237F1は日本などで用例のある字、
で本来グリフにも差があるらしい
460(1): デフォルトの名無しさん [sage] 08/25(月)18:00 ID:4e0IOAiN(2/2)
>>459
U+6B05 は旁の下部が手なのでおいておいて
もともとU+6AF8 は横棒二本と横棒三本が統合(unify)されてる(日本語フォントだと三本、中国語フォントだと二本で表示されるのが一般的、
二本と三本を指定したい時は IVS をつけるのがルール、具体的には U+E0100 をつければ日本で一般的な adobe-japan の横棒三本の字体を明示的に示せる
IVS なんか知るか独立のコードポイントよこせという大陸様のゴリ押しで、横棒三本が別に U+237F1 に登録された
このせいで日本語フォントで表示すると両方が横棒三本の同じ字形という状態になってる(中国語フォントなら二本と三本で別の字形になる
461(1): デフォルトの名無しさん [sage] 08/26(火)15:23 ID:yhOjjAzx(1)
>>460
例えば
>IVS なんか知るか
U+237F1が入ったのはIVSより前じゃね?
462: デフォルトの名無しさん [sage] 08/26(火)17:54 ID:Bsu3S+Ad(1)
>>461
ちょうど同じ時期に並行して議論されてたんだよ
正式な規格書にコード位置が載ったのは Ext-B の方が少しだけ早かったかも
463(1): デフォルトの名無しさん [sage] 09/10(水)21:44 ID:UOM2W4Ny(1)
Unicode 17.0 Release Announcement
https://blog.unicode.org/2025/09/unicode-170-release-announcement.html
「Unicode 17.0」がリリース 〜8つの新しい絵文字、日中韓(CJK)文字の拡充も継続
サウジアラビア通貨「リヤル」の記号も
https://forest.watch.impress.co.jp/docs/news/2046141.html
464(1): デフォルトの名無しさん [sage] 09/10(水)22:23 ID:I5buXTbc(1)
>>463
漢字10万字突破とか笑える事態は置いとくとして
誰だ? ウサ耳の絵文字とか登録したやつは
465: デフォルトの名無しさん [sage] 09/10(水)23:25 ID:qn6dqRwx(1)
https://asset.watch.impress.co.jp/img/wf/docs/2046/141/image3_l.png
466(1): デフォルトの名無しさん [sage] 09/11(木)14:48 ID:/BCensIn(1)
>>464
合成でバニーガールとバニーボーイを使い分けられてジェンダーフリー、
ってそこまでしてw
絆創膏のデフォルトの色をどうするか、みたいな話もあったり
めんどくさい世の中だ
そういえばインド人から送られてきたthumbs-upの絵文字は茶色かった
467: デフォルトの名無しさん [sage] 09/11(木)15:09 ID:UUDIZIcP(1)
>>466
ああ、なるほど
「うさ耳」固有の絵文字が追加されたわけではなくて
今まであった「バニーガール」の絵文字を合成で使うと「うさ耳」の追加として処理するルールが追加されたのか
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 1.125s*