AutoFitColumn()を利用して、任意列の列幅の自動調整を行っていますが、
生成されたExcelを確認すると、Excelで行う列幅自動調整よりも幅が狭くなります。
また、一定の列幅を越える場合、
Excelに出力している文字列が列をはみ出てしまいます。
AutoFitColumn()は、Excelと同等の列幅調整にはならないのでしょうか?
※Excel2013にて検証を行っています。
AutoFitColumn()を利用して、任意列の列幅の自動調整を行っていますが、
生成されたExcelを確認すると、Excelで行う列幅自動調整よりも幅が狭くなります。
また、一定の列幅を越える場合、
Excelに出力している文字列が列をはみ出てしまいます。
AutoFitColumn()は、Excelと同等の列幅調整にはならないのでしょうか?
※Excel2013にて検証を行っています。
@John.He
サンプルを添付いたします。
Sample.sln を開いて実行すると、
file フォルダにあるinput.xlsxを読み込んで、カラムサイズを最適化した後output.xlsxを出力します。
出力した「output.xlsx」の問題点を「output_sample.xlsx」の「Aspose実行」に記載していますので合わせてご確認ください。
ファイル容量超過のため、libフォルダから「Aspose.Cells.dll」を削除しています。
動作確認時はdllを配置してご確認ください。AutoFitSample.zip (5.1 MB)
@Yuta_Sekiya
あなたの機械のデフォルト言語は何ですか。
異なる言語環境では、デフォルトのフォントが変化し、列幅も変化します。
デフォルトのフォントを固定しました。最後の列に問題がある以外は、他の列の結果でもかまいません。
Workbook workbook = new Workbook(dir + "input.xlsx");
Style style = workbook.DefaultStyle;
style.Font.SchemeType = FontSchemeType.None;
workbook.DefaultStyle = style;
Console.WriteLine(workbook.DefaultStyle.Font.Name);
Aspose.Cells.Worksheet sheet = workbook.Worksheets[0];
sheet.AutoFitColumns(0, 3);
// workbook.RemoveExternalLinks();
workbook.Save(dir + "dest.xlsx");
@simon.zhao
以下でフォントを確認しました。
フォントは「MS ゴシック」となります。
①Excelオプションの規定フォント「本文のフォント」
②Excel本文のフォントは「MS ゴシック」
なお、ご提示いただいたコードを取り込んで確認しましたが、
状況は変わりませんでした。
@simon.zhao
情報提供ありがとうございます。
添付確認しましたが、やはりExcelの自動列幅調整実行時より列幅が狭くなっています。
また、
・データ2 印刷プレビューで最後の1文字が見切れる
・データ4 そもそも枠内に収まっていない
こちらの問題も解消していませんが、どのように対応すべきでしょうか?
@simon.zhao
返信が遅くなり申し訳ありません。
添付確認しましたが、結果はNGです。
Asposeを利用してPDF化したところ、
「Aspose実行」シートは見切れが発生し、「Excelでのオートフィット実行」シートは全項目見切れが発生しません。
※PDFは添付参照
PDF出力.zip (20.5 KB)
PDF出力時も「Excelでのオートフィット実行」と同じく、見切れずにPDF出力される必要があります。
また、印刷プレビュー(ctrL+P)でも見切れており、印刷結果も同様に見切れないよう対処する必要があります。
お手数ですが、再度ご確認をお願いいたします。
The issues you have found earlier (filed as CELLSNET-52968) have been fixed in this update. This message was posted using Bugs notification tool by johnson.shi