アカウント名:
パスワード:
日本は年賀状の文化があったので昭和の時代には理想科学のプリントゴッコが普及しその後はインクジェットプリンターで年賀ハガキを印刷するのが10年前くらいまであったのですがここ最近はスマホの普及もあって あ・け・お・めで終わってるので年賀状を印刷しなくなった。当然プリンタも減ってくるわけですね。
ここ最近はテレワークでプリンターの需要も増えているのですが半導体不足もあって生産数が減っている状況に、需要が増えたので2ヶ月待ち3ヶ月待ちの状態品薄になっている製品が結構あります。今年国内メーカーのプリンターが入手しようにも買えなかったってのは結構ありました。HPが増えた
これってWindowsの問題だった?Excelの問題だと思っていたけど、Wordはそんなことないですよね?もともとExcelは文書整形用としての用途を想定されていなかったのと、昔のPCの処理速度が不足していたのでそうなっていると聞いていたように思いますが。
原因は、GDIが整数で座標を管理してることで、プリンタと画面の解像度で生じてる誤差の問題ExcelだとかWordだとかに限らず、GDI使って印刷にDDI使ってるアプリは、印刷したら位置がずる。Windowsで開発やってれば常識レベルというか、最低限知ってないとヤバイというレベルの基本だが、最近はDDIで印刷しなくても良くなって、こういうレベルの話を知らなくてもやってけるようになってきたのか。
具体的な例として600dpiのプリンタで、1文字の幅を28ドットで印刷しようとする。この場合、画面(96dpi)のプレビューでは、1文字あたり4ドット(600/96 = 28/4.48で少数は切り捨て)10文字印刷すると プリンタで280(28*10)ドット分右に移動。画面のプレビューでは40(4*10)ドット分右に移動。600/96 = 280/44.8 なので、この時点で1文字分の誤差がでる。プレビューと印刷で、誤差が出るのはこのため。
今の感覚ではこんなの仕様というよりはバグですね。文字のドット幅が整数になっていてその整数倍の位置にしか文字が置かれないというのはまさに「昔のPCの処理速度が不足していたので」ということなんじゃないですかね。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
「科学者は100%安全だと保証できないものは動かしてはならない」、科学者「えっ」、プログラマ「えっ」
あけおめが悪い。 (スコア:0)
日本は年賀状の文化があったので
昭和の時代には理想科学のプリントゴッコが普及し
その後はインクジェットプリンターで年賀ハガキを印刷するのが10年前くらいまであったのですが
ここ最近はスマホの普及もあって
あ・け・お・め
で終わってるので年賀状を印刷しなくなった。
当然プリンタも減ってくるわけですね。
ここ最近はテレワークでプリンターの需要も増えているのですが
半導体不足もあって生産数が減っている状況に、需要が増えたので
2ヶ月待ち3ヶ月待ちの状態品薄になっている製品が結構あります。
今年国内メーカーのプリンターが入手しようにも買えなかったってのは結構ありました。
HPが増えた
Re: (スコア:0)
これってWindowsの問題だった?
Excelの問題だと思っていたけど、Wordはそんなことないですよね?
もともとExcelは文書整形用としての用途を想定されていなかったのと、昔のPCの処理速度が不足していたのでそうなっていると聞いていたように思いますが。
Re: (スコア:1)
原因は、GDIが整数で座標を管理してることで、プリンタと画面の解像度で生じてる誤差の問題
ExcelだとかWordだとかに限らず、GDI使って印刷にDDI使ってるアプリは、印刷したら位置がずる。
Windowsで開発やってれば常識レベルというか、最低限知ってないとヤバイというレベルの基本だが、最近はDDIで印刷しなくても良くなって、こういうレベルの話を知らなくてもやってけるようになってきたのか。
具体的な例として
600dpiのプリンタで、1文字の幅を28ドットで印刷しようとする。
この場合、画面(96dpi)のプレビューでは、1文字あたり4ドット(600/96 = 28/4.48で少数は切り捨て)
10文字印刷すると プリンタで280(28*10)ドット分右に移動。画面のプレビューでは40(4*10)ドット分右に移動。
600/96 = 280/44.8 なので、この時点で1文字分の誤差がでる。
プレビューと印刷で、誤差が出るのはこのため。
Re:あけおめが悪い。 (スコア:0)
今の感覚ではこんなの仕様というよりはバグですね。
文字のドット幅が整数になっていてその整数倍の位置にしか文字が置かれないというのはまさに「昔のPCの処理速度が不足していたので」ということなんじゃないですかね。