私の挨拶!
Aspose lib を使用して、ファイルを epub に変換しています。問題は、(Aspose によって変換されたドキュメント内の) テーブルのデフォルトのボーダー幅が 0.5pt であることです。隅や PC では問題ないように見えますが、値が小さいため、iPad や HTML ブラウザではこれらの境界線がレンダリングされません。300% ほどズームインした場合にのみ表示されます。Aspose でテーブルの境界線の幅を設定する方法を探していましたが、うまくいきませんでした。次のようなものを見つけました: table.SetBorders(LineStyle, lineWidth(double), Color);
、しかし、それは一連のパラメーター全体を変更します。
ドキュメントを epub に変換するためにテーブルの境界線の幅を設定する方法について何か考えはありますか?
編集:
境界線の幅を手動でリセットしようとしましたが、(驚いたことに!) デバッグ モードではすべての境界線変数の値が同じであるため、変更する標準の境界線だけを選択する方法はありません。コードは次のとおりです。
/**
* Performs single table border linewidth increasing due to the bugged iPad epub rendering.
*/
private void reformatSingleBorderWidth(Border border)
{
if (border != null && border.LineWidth < 1.0 && border.LineStyle == LineStyle.None)
{
border.LineWidth = 1.0;
}
}
foreach (Table table in doc.GetChildNodes(NodeType.Table, true)) {
foreach (Row row in table.Rows) {
foreach (Cell cell in row.Cells) {
BorderCollection borders = cell.CellFormat.Borders;
reformatSingleBorderWidth(borders.Left);
reformatSingleBorderWidth(borders.Right);
reformatSingleBorderWidth(borders.Top);
reformatSingleBorderWidth(borders.Bottom);
}
}
}