1

キャンバスの保存に問題があります。キャンバスが大きすぎることが原因だと思います。ここで助けを求めました:

キャンバス上の要素がjsfiddleで消える

大きなキャンバスの canvas.toDataURL()

…しかし、成功しません。

私の問題は次のとおりです。

たとえば、1123x1965 ピクセルのキャンバスがあり、29.7x52 センチメートルにサイズ変更して 300dpi にする必要があります。

私の理屈は次のとおりです。

  • テンプレートを編集した後、フル サイズに変換してから、png 画像をピクセル単位の実際のサイズに保存します。既に 300 dpi を掛けています。この計算を行いました:

29.7 センチ: 29.7*300 = 8910

52 センチ: 52*300 = 15600

これを使用する上での問題は、基本的にキャンバスが消えることです。これを見てください:キャンバス上の要素がjsfiddleで消える

todataurl 関数が機能しない:大きなキャンバスの場合は canvas.toDataURL()

  • 次に、次のコマンドのようにライブラリ imagemagick convert を 300 dpi に使用します: convert test.png -units PixelsPerCentimeter -density 300 test2.png

誰でも私を助けることができますか?

ありがとうございました。

4

2 に答える 2

2

インチに基づくピクセルを取得するには、2.54 で既に持っているものを割るだけです。ただし、より正確な用語は DPI ではなく PPI です (紙上のドットは画面上のピクセルとは少し異なる動作をするため)。

29.7 cm * 300 PPI / 2.54 = 3508 pixels

52.0 cm * 300 PPI / 2.54 = 6142 pixels

(約52cmでよろしいですか?(A4短辺×2、つまりA3は42cmです))。

于 2013-05-21T20:52:00.497 に答える