サーバーからTIFFファイルを表すバイト配列を取得し、それをXImageに変換してから、新しいpdfドキュメントに追加しています。問題の画像は1280x800(スクリーンショットでした)であり、標準のPDFページの高さと幅に合うように引き伸ばされて長くなっています。これを修正するにはどうすればよいですか?
2193 次
4 に答える
1
これを試して:
doc.MediaBox.String = img.BoundingBox.String;
doc.Rect.String = doc.MediaBox.String;
どこdoc is Doc
とimg is XImage
于 2013-12-17T09:32:04.153 に答える
0
あなたが抱えている特定の問題は、プリンタがポートレートに設定されていることによるものです。
PDFオブジェクトであるため、必要な画像サイズを模倣したページをエミュレートする必要がある場合があります。
元のドキュメントを画像に送信してTIFFファイルを追加した方がよい場合があります。
于 2011-04-25T18:49:19.307 に答える
0
PDF ページの作成方法によって異なります。おそらくやりたいことは、作成しているPDFページがデフォルトでレターサイズのページではなく、画像と同じ縦横比であることを確認することです.
PDF ページの作成方法が指定されていないため、具体的にお手伝いすることはできません。しかし、一般的に、PDF ページは 1/72 インチの単位です。次のように適切なサイズのページを計算できます。
const kPdfPageUnitSize = 72f;
float GetPdfSize(int nPixels, float dotsPerInch) {
return (nPixels / dotsPerInch) * kPdfPageUnitSize;
}
// later
float pdfwidth = GetPdfSize(image.Width, image.Resolution.X); // or however you have this
float pdfheight = GetPdfSize(image.Height, image.Resolution.Y);
于 2011-04-26T13:59:30.897 に答える
0
ご覧のとおり、画像の縮尺係数が正しくありません。画像の高さと画像の幅を 1,33(3) (つまり 96f/72f ) で分割する必要があります。
デフォルトの PDF ユーザー単位は 1⁄72 インチであるため、画像の DPI はオリジナルと比例する必要があります。
于 2013-06-26T04:10:16.453 に答える